=================================================================== RCS file: /cvs/mandoc/term.c,v retrieving revision 1.39 retrieving revision 1.42 diff -u -p -r1.39 -r1.42 --- mandoc/term.c 2009/03/04 13:57:35 1.39 +++ mandoc/term.c 2009/03/05 13:12:12 1.42 @@ -1,4 +1,4 @@ -/* $Id: term.c,v 1.39 2009/03/04 13:57:35 kristaps Exp $ */ +/* $Id: term.c,v 1.42 2009/03/05 13:12:12 kristaps Exp $ */ /* * Copyright (c) 2009 Kristaps Dzonsons * @@ -295,7 +295,7 @@ arg_width(const struct mdoc_arg *arg) assert(len > 0); for (i = 0; i < len - 1; i++) - if ( ! isdigit((int)(*arg->value)[i])) + if ( ! isdigit((u_char)(*arg->value)[i])) break; if (i == len - 1) { @@ -536,6 +536,10 @@ termp_it_pre(DECL_ARGS) p->flags |= TERMP_NOBREAK; else p->flags |= TERMP_NOLPAD; + if (MDOC_HEAD == node->type && MDOC_Tag == type) + if (NULL == node->next || + NULL == node->next->child) + p->flags |= TERMP_NONOBREAK; break; case (MDOC_Diag): if (MDOC_HEAD == node->type) @@ -689,10 +693,6 @@ termp_ar_pre(DECL_ARGS) { TERMPAIR_SETFLAG(p, pair, ttypes[TTYPE_CMD_ARG]); - if (NULL == node->child) { - word(p, "file"); - word(p, "..."); - } return(1); } @@ -1009,7 +1009,7 @@ termp_aq_pre(DECL_ARGS) if (MDOC_BODY != node->type) return(1); - word(p, "<"); + word(p, "\\(la"); p->flags |= TERMP_NOSPACE; return(1); } @@ -1023,7 +1023,7 @@ termp_aq_post(DECL_ARGS) if (MDOC_BODY != node->type) return; p->flags |= TERMP_NOSPACE; - word(p, ">"); + word(p, "\\(ra"); } @@ -1662,6 +1662,7 @@ static int termp__t_pre(DECL_ARGS) { + /* FIXME: titles are underlined. */ word(p, "\""); p->flags |= TERMP_NOSPACE; return(1); @@ -1674,6 +1675,7 @@ termp__t_post(DECL_ARGS) { p->flags |= TERMP_NOSPACE; + /* FIXME: titles are underlined. */ word(p, "\""); word(p, node->next ? "," : "."); }