diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2018-12-15 19:30:25 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2018-12-15 19:30:25 +0000 |
commit | 0e3f0b740ea18224c3b2c07114be601dd8be97bb (patch) | |
tree | c930c6fd7e739e926a7fad1c372897af5ea601fb /roff.7 | |
parent | 2b0b19a54638a1b40d908611acc8498a911df29c (diff) | |
download | mandoc-0e3f0b740ea18224c3b2c07114be601dd8be97bb.tar.gz |
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.
Diffstat (limited to 'roff.7')
-rw-r--r-- | roff.7 | 43 |
1 files changed, 43 insertions, 0 deletions
@@ -1844,6 +1844,11 @@ The escape sequence backslash-space .Pq Sq \e\ \& is an unpaddable space-sized non-breaking space character; see .Sx Whitespace . +.It Ic \e! +Embed text up to and including the end of the input line into the +current diversion or into intermediate output without interpreting +requests, macros, and escapes. +Currently unsupported. .It Ic \e\(dq The rest of the input line is treated as .Sx Comments . @@ -1870,6 +1875,10 @@ instead. .Sx Special Characters with two-letter names, see .Xr mandoc_char 7 . +.It Ic \e) +Zero-width space transparent to end-of-sentence detection; +ignored by +.Xr mandoc 1 . .It Ic \e*[ Ns Ar name Ns Ic \&] Interpolate the string with the .Ar name . @@ -1907,6 +1916,15 @@ Special character .It Ic \e/ Right italic correction (groff extension); ignored by .Xr mandoc 1 . +.It Ic \e: +Breaking the line is allowed at this point of the word +without inserting a hyphen. +.It Ic \e? +Embed the text up to the next +.Ic \e? +into the current diversion without interpreting requests, macros, +and escapes. +This is a groff extension and currently unsupported. .It Ic \e[ Ns Ar name Ns Ic \&] .Sx Special Characters with names of arbitrary length, see @@ -1914,6 +1932,10 @@ with names of arbitrary length, see .It Ic \e^ One-twelfth em half-narrow space character, effectively zero-width in .Xr mandoc 1 . +.It Ic \e_ +Underline special character; use +.Ic \e(ul +instead. .It Ic \e` Grave accent special character; use .Ic \e(ga @@ -1934,6 +1956,9 @@ Digit width space character. .It Ic \eA\(aq Ns Ar string Ns Ic \(aq Anchor definition; ignored by .Xr mandoc 1 . +.It Ic \ea +Leader character; ignored by +.Xr mandoc 1 . .It Ic \eB\(aq Ns Ar string Ns Ic \(aq Interpolate .Sq 1 @@ -1961,6 +1986,13 @@ Draw graphics function; ignored by .It Ic \ed Move down by half a line; ignored by .Xr mandoc 1 . +.It Ic \eE +Escape character intended to not be interpreted in copy mode. +In +.Xr mandoc 1 , +it does the same as +.Ic \e +itself for now. .It Ic \ee Backslash special character. .It Ic \eF[ Ns Ar name Ns Ic \&] @@ -2042,6 +2074,14 @@ the register is first incremented or decremented by the that was specified in the relevant .Ic \&nr request, and the changed value is interpolated. +.It Ic \eO Ns Ar digit , Ic \eO[5 Ns arguments Ns Ic \&] +Suppress output. +This is a groff extension and currently unsupported. +With an argument of +.Ic 1 , 2 , 3 , +or +.Ic 4 , +it is ignored. .It Ic \eo\(aq Ns Ar string Ns Ic \(aq Overstrike, writing all the characters contained in the .Ar string @@ -2053,6 +2093,9 @@ Break the output line at the end of the current word. .It Ic \eR\(aq Ns Ar name Oo +|- Oc Ns Ar number Ns Ic \(aq Set number register; ignored by .Xr mandoc 1 . +.It Ic \er +Move up by one line; ignored by +.Xr mandoc 1 . .It Ic \eS\(aq Ns Ar number Ns Ic \(aq Slant output; ignored by .Xr mandoc 1 . |