X-Git-Url: https://git.cameronkatri.com/mandoc.git/blobdiff_plain/c28713a310b996133153932ab47ff94f3cb06211..a381b76e862814c2d4734656d9148a5c26ee2e72:/mdoc_macro.c diff --git a/mdoc_macro.c b/mdoc_macro.c index 2a63ca92..a9c3f063 100644 --- a/mdoc_macro.c +++ b/mdoc_macro.c @@ -1,4 +1,4 @@ -/* $Id: mdoc_macro.c,v 1.125 2013/12/24 20:45:27 schwarze Exp $ */ +/* $Id: mdoc_macro.c,v 1.130 2014/03/30 19:47:48 schwarze Exp $ */ /* * Copyright (c) 2008-2012 Kristaps Dzonsons * Copyright (c) 2010, 2012, 2013 Ingo Schwarze @@ -87,7 +87,7 @@ const struct mdoc_macro __mdoc_macros[MDOC_MAX] = { { in_line, MDOC_CALLABLE | MDOC_PARSED }, /* Ad */ { in_line, MDOC_CALLABLE | MDOC_PARSED | MDOC_JOIN }, /* An */ { in_line, MDOC_CALLABLE | MDOC_PARSED }, /* Ar */ - { in_line, MDOC_CALLABLE | MDOC_PARSED }, /* Cd */ + { in_line, MDOC_CALLABLE | MDOC_PARSED | MDOC_JOIN }, /* Cd */ { in_line, MDOC_CALLABLE | MDOC_PARSED }, /* Cm */ { in_line, MDOC_CALLABLE | MDOC_PARSED }, /* Dv */ { in_line, MDOC_CALLABLE | MDOC_PARSED }, /* Er */ @@ -98,7 +98,7 @@ const struct mdoc_macro __mdoc_macros[MDOC_MAX] = { { in_line, MDOC_CALLABLE | MDOC_PARSED }, /* Fl */ { in_line, MDOC_CALLABLE | MDOC_PARSED }, /* Fn */ { in_line, MDOC_CALLABLE | MDOC_PARSED }, /* Ft */ - { in_line, MDOC_CALLABLE | MDOC_PARSED }, /* Ic */ + { in_line, MDOC_CALLABLE | MDOC_PARSED | MDOC_JOIN }, /* Ic */ { in_line_argn, MDOC_CALLABLE | MDOC_PARSED }, /* In */ { in_line, MDOC_CALLABLE | MDOC_PARSED | MDOC_JOIN }, /* Li */ { blk_full, MDOC_JOIN }, /* Nd */ @@ -211,6 +211,7 @@ const struct mdoc_macro __mdoc_macros[MDOC_MAX] = { { in_line_eoln, 0 }, /* sp */ { in_line_eoln, 0 }, /* %U */ { phrase_ta, MDOC_CALLABLE | MDOC_PARSED | MDOC_JOIN }, /* Ta */ + { in_line_eoln, 0 }, /* ll */ }; const struct mdoc_macro * const mdoc_macros = __mdoc_macros; @@ -683,7 +684,7 @@ append_delims(struct mdoc *mdoc, int line, int *pos, char *buf) * knowing which symbols break this behaviour, for * example, `. ;' shouldn't propagate the double-space. */ - if (mandoc_eos(p, strlen(p), 0)) + if (mandoc_eos(p, strlen(p))) mdoc->last->flags |= MDOC_EOS; } @@ -1349,25 +1350,6 @@ blk_part_imp(MACRO_PROT_ARGS) body = mdoc->last; } - for (n = body->child; n && n->next; n = n->next) - /* Do nothing. */ ; - - /* - * End of sentence spacing: if the last node is a text node and - * has a trailing period, then mark it as being end-of-sentence. - */ - - if (n && MDOC_TEXT == n->type && n->string) - if (mandoc_eos(n->string, strlen(n->string), 1)) - n->flags |= MDOC_EOS; - - /* Up-propagate the end-of-space flag. */ - - if (n && (MDOC_EOS & n->flags)) { - body->flags |= MDOC_EOS; - body->parent->flags |= MDOC_EOS; - } - /* * If there is an open sub-block requiring explicit close-out, * postpone closing out the current block