From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 6773 invoked from network); 10 Aug 2021 12:55:42 -0000 Received: from bsd.lv (HELO mandoc.bsd.lv) (66.111.2.12) by inbox.vuxu.org with ESMTPUTF8; 10 Aug 2021 12:55:42 -0000 Received: from fantadrom.bsd.lv (localhost [127.0.0.1]) by mandoc.bsd.lv (OpenSMTPD) with ESMTP id 6ea16ab2 for ; Tue, 10 Aug 2021 07:55:40 -0500 (EST) Received: from localhost (mandoc.bsd.lv [local]) by mandoc.bsd.lv (OpenSMTPD) with ESMTPA id 07383209 for ; Tue, 10 Aug 2021 07:55:39 -0500 (EST) Date: Tue, 10 Aug 2021 07:55:39 -0500 (EST) X-Mailinglist: mandoc-source Reply-To: source@mandoc.bsd.lv MIME-Version: 1.0 From: schwarze@mandoc.bsd.lv To: source@mandoc.bsd.lv Subject: mandoc: Support two-character font names (BI, CW, CR, CB, CI) in the X-Mailer: activitymail 1.26, http://search.cpan.org/dist/activitymail/ Content-Type: text/plain; charset=utf-8 Message-ID: Log Message: ----------- Support two-character font names (BI, CW, CR, CB, CI) in the tbl(7) layout font modifier. Get rid of the TBL_CELL_BOLD and TBL_CELL_ITALIC flags and use the usual ESCAPE_FONT* enum mandoc_esc members from mandoc.h instead, which simplifies and unifies some code. While here, also support CB and CI in roff(7) \f escape sequences and in roff(7) .ft requests for all output modes. Using those is certainly not recommended because portability is limited even with groff, but supporting them makes some existing third-party manual pages look better, in particular in HTML output mode. Bug-compatible with groff as far as i'm aware, except that i consider font names starting with the '\n' (ASCII 0x0a line feed) character so insane that i decided to not support them. Missing feature reported by nabijaczleweli dot xyz in https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=992002. I used none of the code from the initial patch submitted by nabijaczleweli, but some of their ideas. Final patch tested by them, too. Modified Files: -------------- mandoc: html.c man_validate.c mandoc.c mandoc.h mandoc_headers.3 mdoc_markdown.c out.c roff.c roff_term.c tbl.7 tbl.h tbl_data.c tbl_html.c tbl_layout.c tbl_term.c term.c tree.c mandoc/regress/roff/esc: f.out_html mandoc/regress/roff/ft: badargs.out_html mandoc/regress/tbl/mod: Makefile badfont.in badfont.out_ascii badfont.out_lint font.out_lint Added Files: ----------- mandoc/regress/tbl/mod: font-eol.in font-eol.out_ascii font-eol.out_lint Revision Data ------------- Index: f.out_html =================================================================== RCS file: /home/cvs/mandoc/mandoc/regress/roff/esc/f.out_html,v retrieving revision 1.2 retrieving revision 1.3 diff -Lregress/roff/esc/f.out_html -Lregress/roff/esc/f.out_html -u -p -r1.2 -r1.3 --- regress/roff/esc/f.out_html +++ regress/roff/esc/f.out_html @@ -1,4 +1,4 @@ numbers: bolditalicbolditalicroman letters: bolditalicbackbolditalicroman multiletter: boldemptyitalicbackbolditalicroman -typewriter: romanboldromanitalicroman +typewriter: romanboldromanitalicroman Index: man_validate.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/man_validate.c,v retrieving revision 1.155 retrieving revision 1.156 diff -Lman_validate.c -Lman_validate.c -u -p -r1.155 -r1.156 --- man_validate.c +++ man_validate.c @@ -239,7 +239,9 @@ check_tag(struct roff_node *n, struct ro case ESCAPE_FONTITALIC: case ESCAPE_FONTBI: case ESCAPE_FONTROMAN: - case ESCAPE_FONTCW: + case ESCAPE_FONTCR: + case ESCAPE_FONTCB: + case ESCAPE_FONTCI: case ESCAPE_FONTPREV: case ESCAPE_IGNORE: break; Index: roff_term.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/roff_term.c,v retrieving revision 1.22 retrieving revision 1.23 diff -Lroff_term.c -Lroff_term.c -u -p -r1.22 -r1.23 --- roff_term.c +++ roff_term.c @@ -112,9 +112,11 @@ roff_term_pre_ft(ROFF_TERM_ARGS) cp = n->child->string; switch (mandoc_font(cp, (int)strlen(cp))) { case ESCAPE_FONTBOLD: + case ESCAPE_FONTCB: term_fontrepl(p, TERMFONT_BOLD); break; case ESCAPE_FONTITALIC: + case ESCAPE_FONTCI: term_fontrepl(p, TERMFONT_UNDER); break; case ESCAPE_FONTBI: @@ -124,7 +126,7 @@ roff_term_pre_ft(ROFF_TERM_ARGS) term_fontlast(p); break; case ESCAPE_FONTROMAN: - case ESCAPE_FONTCW: + case ESCAPE_FONTCR: term_fontrepl(p, TERMFONT_NONE); break; default: Index: out.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/out.c,v retrieving revision 1.79 retrieving revision 1.80 diff -Lout.c -Lout.c -u -p -r1.79 -r1.80 --- out.c +++ out.c @@ -22,11 +22,13 @@ #include #include #include +#include #include #include #include #include "mandoc_aux.h" +#include "mandoc.h" #include "tbl.h" #include "out.h" Index: mandoc.h =================================================================== RCS file: /home/cvs/mandoc/mandoc/mandoc.h,v retrieving revision 1.272 retrieving revision 1.273 diff -Lmandoc.h -Lmandoc.h -u -p -r1.272 -r1.273 --- mandoc.h +++ mandoc.h @@ -291,7 +291,9 @@ enum mandoc_esc { ESCAPE_FONTITALIC, /* italic font mode */ ESCAPE_FONTBI, /* bold italic font mode */ ESCAPE_FONTROMAN, /* roman font mode */ - ESCAPE_FONTCW, /* constant width font mode */ + ESCAPE_FONTCR, /* constant width font mode */ + ESCAPE_FONTCB, /* constant width bold font mode */ + ESCAPE_FONTCI, /* constant width italic font mode */ ESCAPE_FONTPREV, /* previous font mode */ ESCAPE_NUMBERED, /* a numbered glyph */ ESCAPE_UNICODE, /* a unicode codepoint */ Index: mdoc_markdown.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/mdoc_markdown.c,v retrieving revision 1.36 retrieving revision 1.37 diff -Lmdoc_markdown.c -Lmdoc_markdown.c -u -p -r1.36 -r1.37 --- mdoc_markdown.c +++ mdoc_markdown.c @@ -603,16 +603,18 @@ md_word(const char *s) md_rawword("markdown"); continue; case ESCAPE_FONTBOLD: + case ESCAPE_FONTCB: nextfont = "**"; break; case ESCAPE_FONTITALIC: + case ESCAPE_FONTCI: nextfont = "*"; break; case ESCAPE_FONTBI: nextfont = "***"; break; case ESCAPE_FONT: - case ESCAPE_FONTCW: + case ESCAPE_FONTCR: case ESCAPE_FONTROMAN: nextfont = ""; break; Index: tbl_html.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/tbl_html.c,v retrieving revision 1.35 retrieving revision 1.36 diff -Ltbl_html.c -Ltbl_html.c -u -p -r1.35 -r1.36 --- tbl_html.c +++ tbl_html.c @@ -243,10 +243,7 @@ print_tbl(struct html *h, const struct t "border-right-style", rborder); if (dp->string != NULL) { save_font = h->metac; - if (dp->layout->flags & TBL_CELL_BOLD) - html_setfont(h, ESCAPE_FONTBOLD); - else if (dp->layout->flags & TBL_CELL_ITALIC) - html_setfont(h, ESCAPE_FONTITALIC); + html_setfont(h, dp->layout->font); if (dp->layout->pos == TBL_CELL_LONG) print_text(h, "\\[u2003]"); /* em space */ print_text(h, dp->string); Index: roff.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/roff.c,v retrieving revision 1.377 retrieving revision 1.378 diff -Lroff.c -Lroff.c -u -p -r1.377 -r1.378 --- roff.c +++ roff.c @@ -3667,7 +3667,9 @@ roff_char(ROFF_ARGS) case ESCAPE_FONTITALIC: case ESCAPE_FONTBOLD: case ESCAPE_FONTBI: - case ESCAPE_FONTCW: + case ESCAPE_FONTCR: + case ESCAPE_FONTCB: + case ESCAPE_FONTCI: case ESCAPE_FONTPREV: font++; break; Index: mandoc.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/mandoc.c,v retrieving revision 1.118 retrieving revision 1.119 diff -Lmandoc.c -Lmandoc.c -u -p -r1.118 -r1.119 --- mandoc.c +++ mandoc.c @@ -1,7 +1,7 @@ /* $Id$ */ /* * Copyright (c) 2008-2011, 2014 Kristaps Dzonsons - * Copyright (c) 2011-2015, 2017-2020 Ingo Schwarze + * Copyright (c) 2011-2015, 2017-2021 Ingo Schwarze * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -74,12 +74,12 @@ mandoc_font(const char *cp, int sz) case 'C': switch (cp[1]) { case 'B': - return ESCAPE_FONTBOLD; + return ESCAPE_FONTCB; case 'I': - return ESCAPE_FONTITALIC; + return ESCAPE_FONTCI; case 'R': case 'W': - return ESCAPE_FONTCW; + return ESCAPE_FONTCR; default: return ESCAPE_ERROR; } Index: mandoc_headers.3 =================================================================== RCS file: /home/cvs/mandoc/mandoc/mandoc_headers.3,v retrieving revision 1.33 retrieving revision 1.34 diff -Lmandoc_headers.3 -Lmandoc_headers.3 -u -p -r1.33 -r1.34 --- mandoc_headers.3 +++ mandoc_headers.3 @@ -1,6 +1,6 @@ .\" $Id$ .\" -.\" Copyright (c) 2014-2020 Ingo Schwarze +.\" Copyright (c) 2014-2021 Ingo Schwarze .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above @@ -167,7 +167,11 @@ parse tree; can be used everywhere. Requires .In sys/types.h for -.Vt size_t . +.Vt size_t +and +.Qq Pa mandoc.h +for +.Vt enum mandoc_esc . .Pp Provides .Vt enum tbl_cellt , Index: tbl_data.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/tbl_data.c,v retrieving revision 1.55 retrieving revision 1.56 diff -Ltbl_data.c -Ltbl_data.c -u -p -r1.55 -r1.56 --- tbl_data.c +++ tbl_data.c @@ -78,6 +78,7 @@ getdata(struct tbl_node *tbl, struct tbl if (dp->layout->last->col + 1 < dp->opts->cols) { cp = mandoc_calloc(1, sizeof(*cp)); cp->pos = TBL_CELL_LEFT; + cp->font = ESCAPE_FONTROMAN; cp->spacing = SIZE_MAX; dp->layout->last->next = cp; cp->col = dp->layout->last->col + 1; Index: tbl.h =================================================================== RCS file: /home/cvs/mandoc/mandoc/tbl.h,v retrieving revision 1.1 retrieving revision 1.2 diff -Ltbl.h -Ltbl.h -u -p -r1.1 -r1.2 --- tbl.h +++ tbl.h @@ -1,7 +1,7 @@ /* $Id$ */ /* * Copyright (c) 2010, 2011 Kristaps Dzonsons - * Copyright (c) 2014, 2015, 2017, 2018 Ingo Schwarze + * Copyright (c) 2014,2015,2017,2018,2021 Ingo Schwarze * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -57,14 +57,13 @@ struct tbl_cell { int vert; /* Width of subsequent vertical line. */ int col; /* Column number, starting from 0. */ int flags; -#define TBL_CELL_BOLD (1 << 0) /* b, B, fB */ -#define TBL_CELL_ITALIC (1 << 1) /* i, I, fI */ #define TBL_CELL_TALIGN (1 << 2) /* t, T */ #define TBL_CELL_UP (1 << 3) /* u, U */ #define TBL_CELL_BALIGN (1 << 4) /* d, D */ #define TBL_CELL_WIGN (1 << 5) /* z, Z */ #define TBL_CELL_EQUAL (1 << 6) /* e, E */ #define TBL_CELL_WMAX (1 << 7) /* x, X */ + enum mandoc_esc font; enum tbl_cellt pos; }; Index: tbl_layout.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/tbl_layout.c,v retrieving revision 1.49 retrieving revision 1.50 diff -Ltbl_layout.c -Ltbl_layout.c -u -p -r1.49 -r1.50 --- tbl_layout.c +++ tbl_layout.c @@ -1,7 +1,8 @@ /* $Id$ */ /* * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons - * Copyright (c) 2012, 2014, 2015, 2017 Ingo Schwarze + * Copyright (c) 2012, 2014, 2015, 2017, 2020, 2021 + * Ingo Schwarze * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -67,6 +68,8 @@ mods(struct tbl_node *tbl, struct tbl_ce char *endptr; unsigned long spacing; size_t sz; + int isz; + enum mandoc_esc fontesc; mod: while (p[*pos] == ' ' || p[*pos] == '\t') @@ -105,7 +108,7 @@ mod: switch (tolower((unsigned char)p[(*pos)++])) { case 'b': - cp->flags |= TBL_CELL_BOLD; + cp->font = ESCAPE_FONTBOLD; goto mod; case 'd': cp->flags |= TBL_CELL_BALIGN; @@ -116,7 +119,7 @@ mod: case 'f': break; case 'i': - cp->flags |= TBL_CELL_ITALIC; + cp->font = ESCAPE_FONTITALIC; goto mod; case 'm': mandoc_msg(MANDOCERR_TBLLAYOUT_MOD, ln, *pos, "m"); @@ -170,40 +173,34 @@ mod: goto mod; } + while (p[*pos] == ' ' || p[*pos] == '\t') + (*pos)++; + /* Ignore parenthised font names for now. */ if (p[*pos] == '(') goto mod; - /* Support only one-character font-names for now. */ - - if (p[*pos] == '\0' || (p[*pos + 1] != ' ' && p[*pos + 1] != '.')) { + isz = 0; + if (p[*pos] != '\0') + isz++; + if (strchr(" \t.", p[*pos + isz]) == NULL) + isz++; + + fontesc = mandoc_font(p + *pos, isz); + + switch (fontesc) { + case ESCAPE_FONTPREV: + case ESCAPE_ERROR: mandoc_msg(MANDOCERR_FT_BAD, ln, *pos, "TS %s", p + *pos - 1); - if (p[*pos] != '\0') - (*pos)++; - if (p[*pos] != '\0') - (*pos)++; - goto mod; - } - - switch (p[(*pos)++]) { - case '3': - case 'B': - cp->flags |= TBL_CELL_BOLD; - goto mod; - case '2': - case 'I': - cp->flags |= TBL_CELL_ITALIC; - goto mod; - case '1': - case 'R': - goto mod; + break; default: - mandoc_msg(MANDOCERR_FT_BAD, - ln, *pos - 1, "TS f%c", p[*pos - 1]); - goto mod; + cp->font = fontesc; + break; } + *pos += isz; + goto mod; } static void @@ -362,6 +359,7 @@ cell_alloc(struct tbl_node *tbl, struct p = mandoc_calloc(1, sizeof(*p)); p->spacing = SIZE_MAX; + p->font = ESCAPE_FONTROMAN; p->pos = pos; if ((pp = rp->last) != NULL) { Index: tree.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/tree.c,v retrieving revision 1.89 retrieving revision 1.90 diff -Ltree.c -Ltree.c -u -p -r1.89 -r1.90 --- tree.c +++ tree.c @@ -1,7 +1,7 @@ /* $Id$ */ /* - * Copyright (c) 2013-2015, 2017-2020 Ingo Schwarze * Copyright (c) 2008, 2009, 2011, 2014 Kristaps Dzonsons + * Copyright (c) 2013-2015, 2017-2021 Ingo Schwarze * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -471,10 +471,28 @@ print_span(const struct tbl_span *sp, in else { printf("%d", cp->col); print_cellt(dp->layout->pos); - if (cp->flags & TBL_CELL_BOLD) + switch (cp->font) { + case ESCAPE_FONTBOLD: putchar('b'); - if (cp->flags & TBL_CELL_ITALIC) + break; + case ESCAPE_FONTITALIC: putchar('i'); + break; + case ESCAPE_FONTBI: + fputs("bi", stdout); + break; + case ESCAPE_FONTCR: + putchar('c'); + break; + case ESCAPE_FONTCB: + fputs("cb", stdout); + break; + case ESCAPE_FONTCI: + fputs("ci", stdout); + break; + default: + abort(); + } if (cp->flags & TBL_CELL_TALIGN) putchar('t'); if (cp->flags & TBL_CELL_UP) Index: tbl.7 =================================================================== RCS file: /home/cvs/mandoc/mandoc/tbl.7,v retrieving revision 1.34 retrieving revision 1.35 diff -Ltbl.7 -Ltbl.7 -u -p -r1.34 -r1.35 --- tbl.7 +++ tbl.7 @@ -178,10 +178,11 @@ of any other column also having the .Cm e modifier. .It Cm f -The next character selects the font to use for this cell. +The next one or two characters select the font to use for this cell. +One-character font names must be followed by a blank or period. See the .Xr roff 7 -manual for supported one-character font names. +manual for supported font names. .It Cm i Use an italic font for the contents of this cell. .It Cm m Index: tbl_term.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/tbl_term.c,v retrieving revision 1.74 retrieving revision 1.75 diff -Ltbl_term.c -Ltbl_term.c -u -p -r1.74 -r1.75 --- tbl_term.c +++ tbl_term.c @@ -1,7 +1,7 @@ /* $Id$ */ /* * Copyright (c) 2009, 2011 Kristaps Dzonsons - * Copyright (c) 2011-2020 Ingo Schwarze + * Copyright (c) 2011-2021 Ingo Schwarze * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -923,10 +923,24 @@ tbl_word(struct termp *tp, const struct int prev_font; prev_font = tp->fonti; - if (dp->layout->flags & TBL_CELL_BOLD) - term_fontpush(tp, TERMFONT_BOLD); - else if (dp->layout->flags & TBL_CELL_ITALIC) - term_fontpush(tp, TERMFONT_UNDER); + switch (dp->layout->font) { + case ESCAPE_FONTBI: + term_fontpush(tp, TERMFONT_BI); + break; + case ESCAPE_FONTBOLD: + case ESCAPE_FONTCB: + term_fontpush(tp, TERMFONT_BOLD); + break; + case ESCAPE_FONTITALIC: + case ESCAPE_FONTCI: + term_fontpush(tp, TERMFONT_UNDER); + break; + case ESCAPE_FONTROMAN: + case ESCAPE_FONTCR: + break; + default: + abort(); + } term_word(tp, dp->string); Index: html.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/html.c,v retrieving revision 1.273 retrieving revision 1.274 diff -Lhtml.c -Lhtml.c -u -p -r1.273 -r1.274 --- html.c +++ html.c @@ -1,7 +1,7 @@ /* $Id$ */ /* - * Copyright (c) 2011-2015, 2017-2020 Ingo Schwarze * Copyright (c) 2008-2011, 2014 Kristaps Dzonsons + * Copyright (c) 2011-2015, 2017-2021 Ingo Schwarze * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -240,8 +240,10 @@ html_setfont(struct html *h, enum mandoc case ESCAPE_FONTITALIC: case ESCAPE_FONTBOLD: case ESCAPE_FONTBI: - case ESCAPE_FONTCW: case ESCAPE_FONTROMAN: + case ESCAPE_FONTCR: + case ESCAPE_FONTCB: + case ESCAPE_FONTCI: break; case ESCAPE_FONT: font = ESCAPE_FONTROMAN; @@ -272,9 +274,17 @@ print_metaf(struct html *h) h->metaf = print_otag(h, TAG_B, ""); print_otag(h, TAG_I, ""); break; - case ESCAPE_FONTCW: + case ESCAPE_FONTCR: h->metaf = print_otag(h, TAG_SPAN, "c", "Li"); break; + case ESCAPE_FONTCB: + h->metaf = print_otag(h, TAG_SPAN, "c", "Li"); + print_otag(h, TAG_B, ""); + break; + case ESCAPE_FONTCI: + h->metaf = print_otag(h, TAG_SPAN, "c", "Li"); + print_otag(h, TAG_I, ""); + break; default: break; } @@ -503,8 +513,10 @@ print_encode(struct html *h, const char case ESCAPE_FONTBOLD: case ESCAPE_FONTITALIC: case ESCAPE_FONTBI: - case ESCAPE_FONTCW: case ESCAPE_FONTROMAN: + case ESCAPE_FONTCR: + case ESCAPE_FONTCB: + case ESCAPE_FONTCI: if (0 == norecurse) { h->flags |= HTML_NOSPACE; if (html_setfont(h, esc)) Index: term.c =================================================================== RCS file: /home/cvs/mandoc/mandoc/term.c,v retrieving revision 1.282 retrieving revision 1.283 diff -Lterm.c -Lterm.c -u -p -r1.282 -r1.283 --- term.c +++ term.c @@ -589,16 +589,18 @@ term_word(struct termp *p, const char *w uc = *seq; break; case ESCAPE_FONTBOLD: + case ESCAPE_FONTCB: term_fontrepl(p, TERMFONT_BOLD); continue; case ESCAPE_FONTITALIC: + case ESCAPE_FONTCI: term_fontrepl(p, TERMFONT_UNDER); continue; case ESCAPE_FONTBI: term_fontrepl(p, TERMFONT_BI); continue; case ESCAPE_FONT: - case ESCAPE_FONTCW: + case ESCAPE_FONTCR: case ESCAPE_FONTROMAN: term_fontrepl(p, TERMFONT_NONE); continue; Index: badargs.out_html =================================================================== RCS file: /home/cvs/mandoc/mandoc/regress/roff/ft/badargs.out_html,v retrieving revision 1.4 retrieving revision 1.5 diff -Lregress/roff/ft/badargs.out_html -Lregress/roff/ft/badargs.out_html -u -p -r1.4 -r1.5 --- regress/roff/ft/badargs.out_html +++ regress/roff/ft/badargs.out_html @@ -1,6 +1,7 @@
default font italic bold italic - typeqriter roman bold - italic bold still bold italic back to - bold back to italic + typeqriter roman + bold italic + bold still bold italic back to bold back to + italic
--- /dev/null +++ regress/tbl/mod/font-eol.out_lint @@ -0,0 +1 @@ +mandoc: font-eol.in:9:7: WARNING: unknown font, skipping request: TS f Index: badfont.out_ascii =================================================================== RCS file: /home/cvs/mandoc/mandoc/regress/tbl/mod/badfont.out_ascii,v retrieving revision 1.2 retrieving revision 1.3 diff -Lregress/tbl/mod/badfont.out_ascii -Lregress/tbl/mod/badfont.out_ascii -u -p -r1.2 -r1.3 --- regress/tbl/mod/badfont.out_ascii +++ regress/tbl/mod/badfont.out_ascii @@ -6,9 +6,10 @@ NNAAMMEE DDEESSCCRRIIPPTTIIOONN normal text - +----------------+ - |bboolldd none | - |_i_t_a_l_i_c none | - |bboolldd _i_t_a_l_i_c | - +----------------+ -OpenBSD February 10, 2015 TBL-MOD-BADFONT(1) + +-------------------+ + |_i_t_a_l_i_c one char | + |bboolldd two chars | + |_i_t_a_l_i_c dot | + |bboolldd _i_t_a_l_i_c | + +-------------------+ +OpenBSD August 9, 2021 TBL-MOD-BADFONT(1) Index: badfont.out_lint =================================================================== RCS file: /home/cvs/mandoc/mandoc/regress/tbl/mod/badfont.out_lint,v retrieving revision 1.4 retrieving revision 1.5 diff -Lregress/tbl/mod/badfont.out_lint -Lregress/tbl/mod/badfont.out_lint -u -p -r1.4 -r1.5 --- regress/tbl/mod/badfont.out_lint +++ regress/tbl/mod/badfont.out_lint @@ -1,2 +1,3 @@ -mandoc: badfont.in:9:7: WARNING: unknown font, skipping request: TS f -mandoc: badfont.in:10:7: WARNING: unknown font, skipping request: TS f. +mandoc: badfont.in:9:7: WARNING: unknown font, skipping request: TS fX +mandoc: badfont.in:10:7: WARNING: unknown font, skipping request: TS fIB +mandoc: badfont.in:11:7: WARNING: unknown font, skipping request: TS f. --- /dev/null +++ regress/tbl/mod/font-eol.in @@ -0,0 +1,13 @@ +.\" $OpenBSD: font-eol.in,v 1.1 2021/08/10 12:36:42 schwarze Exp $ +.TH TBL-MOD-FONT-EOL 1 "August 9, 2021" +.SH NAME +tbl-mod-font-eol \- font modifier at eol in table layout +.SH DESCRIPTION +normal text +.TS +box tab(:); +lfB lf +lfB lfI. +bold:none +bold:italic +.TE Index: font.out_lint =================================================================== RCS file: /home/cvs/mandoc/mandoc/regress/tbl/mod/font.out_lint,v retrieving revision 1.5 retrieving revision 1.6 diff -Lregress/tbl/mod/font.out_lint -Lregress/tbl/mod/font.out_lint -u -p -r1.5 -r1.6 --- regress/tbl/mod/font.out_lint +++ regress/tbl/mod/font.out_lint @@ -1,4 +1,3 @@ -mandoc: font.in:9:6: WARNING: unknown font, skipping request: TS fCW|ci mandoc: font.in:19:2: WARNING: tab in filled text mandoc: font.in:19:4: WARNING: tab in filled text mandoc: font.in:19:6: WARNING: tab in filled text --- /dev/null +++ regress/tbl/mod/font-eol.out_ascii @@ -0,0 +1,13 @@ +TBL-MOD-FONT-EOL(1) General Commands Manual TBL-MOD-FONT-EOL(1) + +NNAAMMEE + tbl-mod-font-eol - font modifier at eol in table layout + +DDEESSCCRRIIPPTTIIOONN + normal text + + +--------------+ + |bboolldd none | + |bboolldd _i_t_a_l_i_c | + +--------------+ +OpenBSD August 9, 2021 TBL-MOD-FONT-EOL(1) Index: Makefile =================================================================== RCS file: /home/cvs/mandoc/mandoc/regress/tbl/mod/Makefile,v retrieving revision 1.4 retrieving revision 1.5 diff -Lregress/tbl/mod/Makefile -Lregress/tbl/mod/Makefile -u -p -r1.4 -r1.5 --- regress/tbl/mod/Makefile +++ regress/tbl/mod/Makefile @@ -1,15 +1,16 @@ -# $OpenBSD: Makefile,v 1.2 2015/02/10 11:02:19 schwarze Exp $ +# $OpenBSD: Makefile,v 1.6 2021/08/10 12:36:42 schwarze Exp $ -REGRESS_TARGETS = badfont expand expand-toowide font misalign spacing width -LINT_TARGETS = badfont font +REGRESS_TARGETS = badfont expand expand-toowide font font-eol +REGRESS_TARGETS += misalign spacing width +LINT_TARGETS = badfont font font-eol -# groff-1.22.3 defects: +# groff-1.22.4 defects: # - The "f" font modifier swallows a following newline character. # - When space is insufficient (on either side) for properly aligning # a number, GNU tbl(1) moves the number too much to the right, # overflowing the column, even if space would be sufficient without # left padding. -SKIP_GROFF = badfont misalign +SKIP_GROFF = font-eol misalign .include Index: badfont.in =================================================================== RCS file: /home/cvs/mandoc/mandoc/regress/tbl/mod/badfont.in,v retrieving revision 1.2 retrieving revision 1.3 diff -Lregress/tbl/mod/badfont.in -Lregress/tbl/mod/badfont.in -u -p -r1.2 -r1.3 --- regress/tbl/mod/badfont.in +++ regress/tbl/mod/badfont.in @@ -1,15 +1,17 @@ -.\" $OpenBSD: badfont.in,v 1.2 2017/07/04 14:53:27 schwarze Exp $ -.TH TBL-MOD-BADFONT 1 "February 10, 2015" +.\" $OpenBSD: badfont.in,v 1.3 2021/08/10 12:36:42 schwarze Exp $ +.TH TBL-MOD-BADFONT 1 "August 9, 2021" .SH NAME tbl-mod-badfont \- invalid font modifiers in table layouts .SH DESCRIPTION normal text .TS box tab(:); -lfB lf +lfI lfX +lfB lfIB lfI lf. lfB lfI. -bold:none -italic:none +italic:one char +bold:two chars +italic:dot bold:italic .TE -- To unsubscribe send an email to source+unsubscribe@mandoc.bsd.lv