Up to [cvsweb.bsd.lv] / mandoc / regress / roff / rn
Request diff between arbitrary revisions
Default branch: MAIN
Current tag: MAIN
Revision 1.2 / (download) - annotate - [select for diffs], Wed Feb 6 21:11:48 2019 UTC (5 years, 4 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_14_6,
VERSION_1_14_5,
HEAD
Changes since 1.1: +3 -2 lines
Diff to previous 1.1 (unified)
Let roff_getname() end the roff identifier at a tab character and audit all its callers whether termination is handled correctly. Resulting improvements: * An escape or tab ending the macro name in a macro invocation is discarded, and argument processing is started after it. * An escape or tab ending a name in ".if d" and ".if r" is preserved. * An escape ending a name in ".ds" causes the whole request to be ignored. * A tab ending a name in ".ds" becomes part of the string. * An escape or tab ending a name in ".rm" causes the rest of the line to be ignored. * An escape or tab ending the first name in ".als", ".rn", or ".nr" causes the whole request to be ignored. Kurt Jaeger <pi at FreeBSD> made me aware of https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=235456#c0 and in that bug report, comment 0 item (3) is a special case of this class of issues. Yes, the "mh" manual pages are no doubt among the worst on the planet.
Revision 1.1 / (download) - annotate - [select for diffs], Sun Jun 18 17:36:08 2017 UTC (7 years ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_14_4,
VERSION_1_14_3,
VERSION_1_14_2
Implement appending to standard man(7) and mdoc(7) macros with .am. With roff_getstrn(), provide finer control which definitions can be used for what: * All definitions can be used for .if d tests and .am appending. * User-defined for \* expansion, .dei expansion, and macro calling. * Predefined for \* expansion. * Standard macros, original or renamed, for macro calling. Several related improvements while here: * Do not return string table entries that have explicitly been removed. * Do not create a rentab entry when trying to rename a non-existent macro. * Clear an existing rentab entry when the external interface roff_setstr() is called with its name. * Avoid trailing blanks in macro lines generated from renamed and from aliased macros. * Delete the duplicate __m*_reserved[] tables, just use roff_name[].