=================================================================== RCS file: /cvs/mandoc/roff.7,v retrieving revision 1.109 retrieving revision 1.115 diff -u -p -r1.109 -r1.115 --- mandoc/roff.7 2018/12/16 00:17:02 1.109 +++ mandoc/roff.7 2020/10/28 21:07:47 1.115 @@ -1,7 +1,7 @@ -.\" $Id: roff.7,v 1.109 2018/12/16 00:17:02 schwarze Exp $ +.\" $Id: roff.7,v 1.115 2020/10/28 21:07:47 schwarze Exp $ .\" .\" Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons -.\" Copyright (c) 2010-2018 Ingo Schwarze +.\" Copyright (c) 2010-2019 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 @@ -15,7 +15,7 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: December 16 2018 $ +.Dd $Mdocdate: October 28 2020 $ .Dt ROFF 7 .Os .Sh NAME @@ -44,7 +44,8 @@ utility supports a subset of requests and escapes. Even though this manual page lists all .Nm -requests, it only has partial information about requests not supported by +requests and escape sequences, it only contains partial information +about requests not supported by .Xr mandoc 1 and about language features that do not matter for manual pages. For complete @@ -86,7 +87,7 @@ indicates the start of an escape sequence, used for ex .Sx Comments and .Sx Special Characters . -For a listing of escape sequences, consult the +For a complete listing of escape sequences, consult the .Sx ESCAPE SEQUENCE REFERENCE below. .Ss Comments @@ -246,9 +247,9 @@ centimetre .It i inch .It P -pica (~1/6 inch) +pica (1/6 inch) .It p -point (~1/72 inch) +point (1/72 inch) .It f scale .Sq u @@ -268,7 +269,7 @@ character .It u default horizontal span for the terminal .It M -mini-em (~1/100 em) +mini-em (1/100 em) .El .Pp Using anything other than @@ -314,12 +315,18 @@ delimiters The proper spacing is also intelligently preserved if a sentence ends at the boundary of a macro line. .Pp +If an input line happens to end with a period, exclamation or question +mark that isn't the end of a sentence, append a zero-width space +.Pq Sq \e& . +.Pp Examples: .Bd -literal -offset indent -compact Do not end sentences mid-line like this. Instead, end a sentence like this. A macro would end like this: \&.Xr mandoc 1 \&. +An abbreviation at the end of an input line needs escaping, e.g.\e& +like this. .Ed .Sh REQUEST SYNTAX A request or macro line consists of: @@ -502,10 +509,9 @@ This is a Heirloom extension and currently unsupported .It Ic \&br Break the output line. .It Ic \&break -Break out of a +Break out of the innermost .Ic \&while loop. -Currently unsupported. .It Ic \&breakchar Ar char ... Optional line break characters. This is a Heirloom extension and currently ignored. @@ -640,7 +646,7 @@ macros, whichever applies to the document in question. .Pp Specifying a custom .Ar endmacro -macro works in the same way as for +works in the same way as for .Ic \&ig ; namely, the call to .Sq Pf . Ar endmacro @@ -907,11 +913,23 @@ This is a Heirloom extension and currently ignored. Enable or disable an OpenType feature. This is a Heirloom extension and currently ignored. .It Ic \&fi -Switch to fill mode. -See -.Xr man 7 . -Ignored in -.Xr mdoc 7 . +Break the output line and switch to fill mode, +which is active by default but can be ended with the +.Ic \&nf +request. +In fill mode, input from subsequent input lines is added to +the same output line until the next word no longer fits, +at which point the output line is broken. +This request is implied by the +.Xr mdoc 7 +.Ic \&Sh +macro and by the +.Xr man 7 +.Ic \&SH , +.Ic \&SS , +and +.Ic \&EE +macros. .It Ic \&fkern Ar font minkern Control the use of kerning tables for a font. This is a Heirloom extension and currently ignored. @@ -1346,11 +1364,22 @@ Declare the need for the specified minimum vertical sp before the next trap or the bottom of the page. Currently ignored. .It Ic \&nf -Switch to no-fill mode. -See -.Xr man 7 . -Ignored by -.Xr mdoc 7 . +Break the output line and switch to no-fill mode. +Subsequent input lines are kept together on the same output line +even when exceeding the right margin, +and line breaks in subsequent input cause output line breaks. +This request is implied by the +.Xr mdoc 7 +.Ic \&Bd Fl unfilled +and +.Ic \&Bd Fl literal +macros and by the +.Xr man 7 +.Ic \&EX +macro. +The +.Ic \&fi +request switches back to the default fill mode. .It Ic \&nh Turn off automatic hyphenation mode. Currently ignored. @@ -1849,10 +1878,6 @@ The .Xr mandoc 1 .Nm parser recognises the following escape sequences. -Note that the -.Nm -language defines more escape sequences not implemented in -.Xr mandoc 1 . In .Xr mdoc 7 and @@ -1862,9 +1887,7 @@ described in the .Sx LANGUAGE SYNTAX section above. .Pp -In -.Xr mandoc 1 , -a backslash followed by any character not listed here +A backslash followed by any character not listed here simply prints that character itself. .Bl -tag -width Ds .It Ic \e @@ -1875,7 +1898,9 @@ on both lines together as if it were on a single input The escape sequence backslash-space .Pq Sq \e\ \& is an unpaddable space-sized non-breaking space character; see -.Sx Whitespace . +.Sx Whitespace +and +.Xr mandoc_char 7 . .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 @@ -1897,8 +1922,16 @@ Macro argument expansion, see Hyphenation allowed at this point of the word; ignored by .Xr mandoc 1 . .It Ic \e& -Non-printing zero-width character; see -.Sx Whitespace . +Non-printing zero-width character, +often used for various kinds of escaping; see +.Sx Whitespace , +.Xr mandoc_char 7 , +and the +.Dq MACRO SYNTAX +and +.Dq Delimiters +sections in +.Xr mdoc 7 . .It Ic \e\(aq Acute accent special character; use .Ic \e(aa @@ -1944,7 +1977,10 @@ Left italic correction (groff extension); ignored by .Xr mandoc 1 . .It Ic \e- Special character -.Dq mathematical minus sign . +.Dq mathematical minus sign ; +see +.Xr mandoc_char 7 +for details. .It Ic \e/ Right italic correction (groff extension); ignored by .Xr mandoc 1 . @@ -1998,7 +2034,7 @@ if .Ar string conforms to the syntax of .Sx Numerical expressions -explained above and +explained above or .Sq 0 otherwise. .It Ic \eb\(aq Ns Ar string Ns Ic \(aq @@ -2022,9 +2058,9 @@ Move down by half a line; ignored by Escape character intended to not be interpreted in copy mode. In .Xr mandoc 1 , -it does the same as +it currently does the same as .Ic \e -itself for now. +itself. .It Ic \ee Backslash special character. .It Ic \eF[ Ns Ar name Ns Ic \&] @@ -2248,7 +2284,7 @@ code. .Pp The special semantics of the .Cm nS -number register is an idiosyncracy of +number register is an idiosyncrasy of .Ox manuals and not supported by other .Xr mdoc 7 @@ -2295,7 +2331,7 @@ for .At v2 , then ported nroff to C as troff, which Brian W. Kernighan released with .At v7 . -In 1989, James Clarke re-implemented troff in C++, naming it groff. +In 1989, James Clark re-implemented troff in C++, naming it groff. .Sh AUTHORS .An -nosplit This