-.\" $Id: mdoc.7,v 1.132 2010/07/06 10:55:50 kristaps Exp $
+.\" $Id: mdoc.7,v 1.134 2010/07/15 23:50:15 schwarze Exp $
.\"
.\" Copyright (c) 2009, 2010 Kristaps Dzonsons <kristaps@bsd.lv>
.\" Copyright (c) 2010 Ingo Schwarze <schwarze@openbsd.org>
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.Dd $Mdocdate: July 6 2010 $
+.Dd $Mdocdate: July 15 2010 $
.Dt MDOC 7
.Os
.Sh NAME
and
.Sx \&Sy .
.Ss \&Bk
-Begins a keep block, containing a collection of macros or text
-to be kept together in the output.
+Begins a collection of macros or text not breaking the line.
Its syntax is as follows:
.Pp
.D1 Pf \. Sx \&Bk Fl words
.Pp
-Currently, the only argument implemented is
-.Fl words ,
-requesting to keep together all words of the contained text
-on the same output line.
Subsequent arguments are ignored.
+The
+.Fl words
+argument is required.
.Pp
-Examples:
+Each line within a keep block is kept intact, so the following example
+will not break within each
+.Sx \&Op
+macro line:
.Bd -literal -offset indent
\&.Bk \-words
-\&.Op o Ar output_file
+\&.Op Fl f Ar flags
+\&.Op Fl o Ar output
\&.Ek
.Ed
.Pp
-See also
-.Sx \&Ek .
+Be careful in using over-long lines within a keep block!
+Doing so will clobber the right margin.
.Ss \&Bl
Begins a list composed of one or more list entries.
Its syntax is as follows:
.Ss \&Sc
.Ss \&Sh
.Ss \&Sm
+Switches the spacing mode for output generated from macros.
+Its syntax is as follows:
+.Pp
+.D1 Pf \. Sx \&Sm Cm on | off
+.Pp
+By default, spacing is
+.Cm on .
+When switched
+.Cm off ,
+no white space is inserted between macro arguments and between the
+output generated from adjacent macros, but free-form text lines
+still get normal spacing between words and sentences.
.Ss \&So
.Ss \&Sq
.Ss \&Ss