From b032e56868d3030613d6760a5eff908e2776ee36 Mon Sep 17 00:00:00 2001 From: Kristaps Dzonsons Date: Sat, 21 Mar 2009 13:47:02 +0000 Subject: Freed more macros from zero-length restrictions. Fixed `Fn' spacing. --- Makefile | 2 +- ascii.in | 1 + mdoc.7 | 2 +- strings.c | 2 ++ term.c | 4 ++-- validate.c | 2 +- 6 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 64eb7d2c..1ef0764a 100644 --- a/Makefile +++ b/Makefile @@ -9,7 +9,7 @@ INSTALL_DATA = install -m 0444 INSTALL_LIB = install -m 0644 INSTALL_MAN = $(INSTALL_DATA) -VERSION = 1.6.7 +VERSION = 1.6.8 VDATE = 21 March 2009 VFLAGS = -DVERSION=\"$(VERSION)\" diff --git a/ascii.in b/ascii.in index eb29a3d5..c17abf97 100644 --- a/ascii.in +++ b/ascii.in @@ -29,6 +29,7 @@ LINE("\\", 1, "\\", 1) LINE("\'", 1, "\'", 1) LINE("`", 1, "`", 1) +LINE("%", 1, "%", 1) LINE("-", 1, "-", 1) LINE(" ", 1, " ", 1) LINE(".", 1, ".", 1) diff --git a/mdoc.7 b/mdoc.7 index a5911457..492a8ef7 100644 --- a/mdoc.7 +++ b/mdoc.7 @@ -786,7 +786,7 @@ then the macro accepts an arbitrary number of arguments. .It \&.Er Ta Yes Ta Yes Ta >0 .It \&.Ev Ta Yes Ta Yes Ta n .It \&.Ex Ta \&No Ta \&No Ta 0 -.It \&.Fa Ta Yes Ta Yes Ta >0 +.It \&.Fa Ta Yes Ta Yes Ta n .It \&.Fd Ta \&No Ta \&No Ta >0 .It \&.Fl Ta Yes Ta Yes Ta n .It \&.Fn Ta Yes Ta Yes Ta >0 diff --git a/strings.c b/strings.c index c0b99aa8..f0b3a911 100644 --- a/strings.c +++ b/strings.c @@ -87,6 +87,8 @@ mdoc_isescape(const char *p) /* FALLTHROUGH */ case ('-'): /* FALLTHROUGH */ + case ('%'): + /* FALLTHROUGH */ case (' '): /* FALLTHROUGH */ case ('|'): diff --git a/term.c b/term.c index 0e97abc1..3d1db05a 100644 --- a/term.c +++ b/term.c @@ -1171,9 +1171,9 @@ termp_fn_pre(DECL_ARGS) term_word(p, node->child->string); p->flags &= ~ttypes[TTYPE_FUNC_NAME]; + p->flags |= TERMP_NOSPACE; term_word(p, "("); - p->flags |= TERMP_NOSPACE; for (n = node->child->next; n; n = n->next) { p->flags |= ttypes[TTYPE_FUNC_ARG]; term_word(p, n->string); @@ -1231,7 +1231,7 @@ termp_fa_pre(DECL_ARGS) term_word(p, ","); } - if (node->next && node->next->tok == MDOC_Fa) + if (node->child && node->next && node->next->tok == MDOC_Fa) term_word(p, ","); return(0); diff --git a/validate.c b/validate.c index 311ce7c8..265a7216 100644 --- a/validate.c +++ b/validate.c @@ -220,7 +220,7 @@ const struct valids mdoc_valids[MDOC_MAX] = { { pres_er, posts_text }, /* Er */ { NULL, NULL }, /* Ev */ { pres_ex, posts_ex }, /* Ex */ - { NULL, posts_text }, /* Fa */ + { NULL, NULL }, /* Fa */ { pres_fd, posts_wtext }, /* Fd */ { NULL, NULL }, /* Fl */ { NULL, posts_text }, /* Fn */ -- cgit