aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/mdoc_man.c
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2013-12-25 22:00:45 +0000
committerIngo Schwarze <schwarze@openbsd.org>2013-12-25 22:00:45 +0000
commit92d53bb9232ffcb0db5e1e830d7ccc3d5c4ad92d (patch)
tree54100dc92296a3ec191efb0a8505057aba9b5fea /mdoc_man.c
parentc257c6a9fce6e68baddeccd962cfdc9773ad416d (diff)
downloadmandoc-92d53bb9232ffcb0db5e1e830d7ccc3d5c4ad92d.tar.gz
mandoc-92d53bb9232ffcb0db5e1e830d7ccc3d5c4ad92d.tar.zst
mandoc-92d53bb9232ffcb0db5e1e830d7ccc3d5c4ad92d.zip
Implement .Fo/.Fa/.Fc indentation and break handling for -Tman.
Diffstat (limited to 'mdoc_man.c')
-rw-r--r--mdoc_man.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/mdoc_man.c b/mdoc_man.c
index 530461d3..6ee8b3ab 100644
--- a/mdoc_man.c
+++ b/mdoc_man.c
@@ -1,4 +1,4 @@
-/* $Id: mdoc_man.c,v 1.56 2013/12/25 00:39:31 schwarze Exp $ */
+/* $Id: mdoc_man.c,v 1.57 2013/12/25 22:00:45 schwarze Exp $ */
/*
* Copyright (c) 2011, 2012, 2013 Ingo Schwarze <schwarze@openbsd.org>
*
@@ -1030,13 +1030,16 @@ post_eo(DECL_ARGS)
static int
pre_fa(DECL_ARGS)
{
+ int am_Fa;
- if (MDOC_Fa == n->tok)
+ am_Fa = MDOC_Fa == n->tok;
+
+ if (am_Fa)
n = n->child;
while (NULL != n) {
font_push('I');
- if (MDOC_SYNPRETTY & n->flags)
+ if (am_Fa || MDOC_SYNPRETTY & n->flags)
outflags |= MMAN_nbrword;
print_node(meta, n);
font_pop();
@@ -1137,6 +1140,8 @@ pre_fo(DECL_ARGS)
pre_syn(n);
break;
case (MDOC_HEAD):
+ if (MDOC_SYNPRETTY & n->flags)
+ print_block(".HP 4n", MMAN_nl);
font_push('B');
break;
case (MDOC_BODY):
@@ -1149,7 +1154,7 @@ pre_fo(DECL_ARGS)
}
return(1);
}
-
+
static void
post_fo(DECL_ARGS)
{