diff options
author | Kristaps Dzonsons <kristaps@bsd.lv> | 2009-08-13 12:15:58 +0000 |
---|---|---|
committer | Kristaps Dzonsons <kristaps@bsd.lv> | 2009-08-13 12:15:58 +0000 |
commit | 86fcbc2e37c7ce462902083265822b79401cecf7 (patch) | |
tree | acc4eb25892b2f8176493981716d21c84a3b8952 /man_term.c | |
parent | f7add3eaf5bbb4a516a7dc5a828444b82ea8cd2d (diff) | |
download | mandoc-86fcbc2e37c7ce462902083265822b79401cecf7.tar.gz mandoc-86fcbc2e37c7ce462902083265822b79401cecf7.tar.zst mandoc-86fcbc2e37c7ce462902083265822b79401cecf7.zip |
Added full `HP' libman macro support.
Diffstat (limited to 'man_term.c')
-rw-r--r-- | man_term.c | 39 |
1 files changed, 36 insertions, 3 deletions
@@ -1,4 +1,4 @@ -/* $Id: man_term.c,v 1.19 2009/08/13 11:45:29 kristaps Exp $ */ +/* $Id: man_term.c,v 1.20 2009/08/13 12:15:58 kristaps Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se> * @@ -66,6 +66,7 @@ static int pre_sp(DECL_ARGS); static void post_B(DECL_ARGS); static void post_I(DECL_ARGS); +static void post_HP(DECL_ARGS); static void post_SH(DECL_ARGS); static void post_SS(DECL_ARGS); static void post_i(DECL_ARGS); @@ -80,7 +81,7 @@ static const struct termact termacts[MAN_MAX] = { { pre_PP, NULL }, /* PP */ { pre_PP, NULL }, /* P */ { pre_IP, NULL }, /* IP */ - { pre_HP, NULL }, /* HP */ + { pre_HP, post_HP }, /* HP */ { NULL, NULL }, /* SM */ { pre_B, post_B }, /* SB */ { pre_BI, NULL }, /* BI */ @@ -407,12 +408,44 @@ static int pre_HP(DECL_ARGS) { - /* TODO */ + switch (n->type) { + case (MAN_BLOCK): + fmt_block_vspace(p, n); + break; + case (MAN_BODY): + p->flags |= TERMP_NOBREAK; + p->flags |= TERMP_TWOSPACE; + p->offset = INDENT; + p->rmargin = INDENT * 2; + break; + default: + return(0); + } + return(1); } /* ARGSUSED */ +static void +post_HP(DECL_ARGS) +{ + + switch (n->type) { + case (MAN_BODY): + term_flushln(p); + p->flags &= ~TERMP_NOBREAK; + p->flags &= ~TERMP_TWOSPACE; + p->offset = INDENT; + p->rmargin = p->maxrmargin; + break; + default: + break; + } +} + + +/* ARGSUSED */ static int pre_PP(DECL_ARGS) { |