From d672f8cb82878baf3834e938c4c416f4493952cf Mon Sep 17 00:00:00 2001 From: Ingo Schwarze Date: Sat, 15 Dec 2018 19:30:25 +0000 Subject: Several improvements to escape sequence handling. * Add the missing special character \_ (underscore). * Partial implementations of \a (leader character) and \E (uninterpreted escape character). * Parse and ignore \r (reverse line feed). * Add a WARNING message about undefined escape sequences. * Add an UNSUPP message about unsupported escape sequences. * Mark \! and \? (transparent throughput) and \O (suppress output) as unsupported. * Treat the various variants of zero-width spaces as one-byte escape sequences rather than as special characters, to avoid defining bogus forms with square brackets. * For special characters with one-byte names, do not define bogus forms with square brackets, except for \[-], which is valid. * In the form with square brackets, undefined special characters do not fall back to printing the name verbatim, not even for one-byte names. * Starting a special character name with a blank is an error. * Undefined escape sequences never abort formatting of the input string, not even in HTML output mode. * Document the newly handled escapes, and a few that were missing. * Regression tests for most of the above. --- regress/roff/esc/O.in | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 regress/roff/esc/O.in (limited to 'regress/roff/esc/O.in') diff --git a/regress/roff/esc/O.in b/regress/roff/esc/O.in new file mode 100644 index 00000000..d446ebb6 --- /dev/null +++ b/regress/roff/esc/O.in @@ -0,0 +1,15 @@ +.\" $OpenBSD$ +.TH ESC-O 1 "December 15, 2018" +.SH NAME +esc-O \- escape sequence to suppress output +.SH DESCRIPTION +.nf +O1: a\O1b +O2: a\O2b +O3: a\O3b +O4: a\O4b +O5: a\O5b +O52: a\O(52b +O5n: a\O[5dummy]b +O6: a\O6b +O0: a\O0\&\O1b -- cgit v1.2.3-56-ge451