=================================================================== RCS file: /cvs/mandoc/roff.7,v retrieving revision 1.110 retrieving revision 1.115 diff -u -p -r1.110 -r1.115 --- mandoc/roff.7 2018/12/16 01:34:56 1.110 +++ mandoc/roff.7 2020/10/28 21:07:47 1.115 @@ -1,7 +1,7 @@ -.\" $Id: roff.7,v 1.110 2018/12/16 01:34:56 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 @@ -315,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: @@ -503,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. @@ -908,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. @@ -1347,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. @@ -2256,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 @@ -2303,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