=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/mandoc/mdoc_man.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- src/usr.bin/mandoc/mdoc_man.c 2012/07/08 10:16:36 1.14 +++ src/usr.bin/mandoc/mdoc_man.c 2012/07/08 10:58:44 1.15 @@ -1,4 +1,4 @@ -/* $Id: mdoc_man.c,v 1.14 2012/07/08 10:16:36 schwarze Exp $ */ +/* $Id: mdoc_man.c,v 1.15 2012/07/08 10:58:44 schwarze Exp $ */ /* * Copyright (c) 2011, 2012 Ingo Schwarze * @@ -59,6 +59,7 @@ static void post_pf(DECL_ARGS); static void post_sect(DECL_ARGS); static void post_sp(DECL_ARGS); +static void post_vt(DECL_ARGS); static int pre_ap(DECL_ARGS); static int pre_bd(DECL_ARGS); static int pre_bk(DECL_ARGS); @@ -77,6 +78,7 @@ static int pre_sm(DECL_ARGS); static int pre_sp(DECL_ARGS); static int pre_sect(DECL_ARGS); +static int pre_vt(DECL_ARGS); static int pre_ux(DECL_ARGS); static int pre_xr(DECL_ARGS); static void print_word(struct mman *, const char *); @@ -129,7 +131,7 @@ }, /* Rv */ { NULL, NULL, NULL, NULL, NULL }, /* St */ { NULL, NULL, NULL, NULL, NULL }, /* _Va */ - { NULL, NULL, NULL, NULL, NULL }, /* _Vt */ + { NULL, pre_vt, post_vt, NULL, NULL }, /* Vt */ { NULL, pre_xr, NULL, NULL, NULL }, /* Xr */ { NULL, NULL, post_percent, NULL, NULL }, /* _%A */ { NULL, NULL, NULL, NULL, NULL }, /* _%B */ @@ -841,6 +843,33 @@ { mm->need_nl = 1; +} + +static int +pre_vt(DECL_ARGS) +{ + + if (MDOC_SYNPRETTY & n->flags) { + mm->need_nl = 1; + print_word(mm, ".br"); + mm->need_nl = 1; + } + print_word(mm, "\\fI"); + mm->need_space = 0; + return(1); +} + +static void +post_vt(DECL_ARGS) +{ + + mm->need_space = 0; + print_word(mm, "\\fP"); + if (MDOC_SYNPRETTY & n->flags) { + mm->need_nl = 1; + print_word(mm, ".br"); + mm->need_nl = 1; + } } static int