=================================================================== RCS file: /cvs/mandoc/mdoc.7,v retrieving revision 1.164 retrieving revision 1.178 diff -u -p -r1.164 -r1.178 --- mandoc/mdoc.7 2010/11/29 13:02:47 1.164 +++ mandoc/mdoc.7 2011/02/02 21:40:45 1.178 @@ -1,4 +1,4 @@ -.\" $Id: mdoc.7,v 1.164 2010/11/29 13:02:47 kristaps Exp $ +.\" $Id: mdoc.7,v 1.178 2011/02/02 21:40:45 kristaps Exp $ .\" .\" Copyright (c) 2009, 2010 Kristaps Dzonsons .\" Copyright (c) 2010 Ingo Schwarze @@ -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: November 29 2010 $ +.Dd $Mdocdate: February 2 2011 $ .Dt MDOC 7 .Os .Sh NAME @@ -52,9 +52,9 @@ Other lines are interpreted within the current state. .Nm documents may contain only graphable 7-bit ASCII characters, the space character, and, in certain circumstances, the tab character. -All manuals must have -.Ux -line terminators. +.Pp +If the first character of a line is a space, that line is printed +with a leading newline. .Ss Comments Text following a .Sq \e\*q , @@ -125,7 +125,7 @@ Terms may be text-decorated using the escape followed by an indicator: B (bold), I (italic), R (Roman), or P (revert to previous mode): .Pp -.D1 \efBbold\efR \efIitalic\efP +.Dl \efBbold\efR \efIitalic\efP .Pp A numerical representation 3, 2, or 1 (bold, italic, and Roman, respectively) may be used instead. @@ -293,8 +293,8 @@ The proper spacing is also intelligently preserved if the boundary of a macro line. For example: .Pp -.D1 \&Xr mandoc 1 \. -.D1 \&Fl T \&Ns \&Cm ascii \. +.Dl \&Xr mandoc 1 \. +.Dl \&Fl T \&Ns \&Cm ascii \. .Sh MANUAL STRUCTURE A well-formed .Nm @@ -604,20 +604,21 @@ closes it out. .Pp The .Em Callable -column indicates that the macro may be called subsequent to the initial -line-macro. -If a macro is not callable, then its invocation after the initial line -macro is interpreted as opaque text, such that +column indicates that the macro may also be called by passing its name +as an argument to another macro. +If a macro is not callable but its name appears as an argument +to another macro, it is interpreted as opaque text. +For example, .Sq \&.Fl \&Sh produces .Sq Fl \&Sh . .Pp The .Em Parsed -column indicates whether the macro may be followed by further -(ostensibly callable) macros. -If a macro is not parsed, subsequent macro invocations on the line -will be interpreted as opaque text. +column indicates whether the macro may call other macros by receiving +their names as arguments. +If a macro is not parsed but the name of another macro appears +as an argument, it is interpreted as opaque text. .Pp The .Em Scope @@ -794,8 +795,8 @@ then the macro accepts an arbitrary number of argument .It Sx \&%T Ta \&No Ta \&No Ta >0 .It Sx \&%U Ta \&No Ta \&No Ta >0 .It Sx \&%V Ta \&No Ta \&No Ta >0 -.It Sx \&Ad Ta Yes Ta Yes Ta n -.It Sx \&An Ta Yes Ta Yes Ta n +.It Sx \&Ad Ta Yes Ta Yes Ta >0 +.It Sx \&An Ta Yes Ta Yes Ta >0 .It Sx \&Ap Ta Yes Ta Yes Ta 0 .It Sx \&Ar Ta Yes Ta Yes Ta n .It Sx \&At Ta Yes Ta Yes Ta 1 @@ -803,31 +804,31 @@ then the macro accepts an arbitrary number of argument .It Sx \&Bt Ta \&No Ta \&No Ta 0 .It Sx \&Bx Ta Yes Ta Yes Ta n .It Sx \&Cd Ta Yes Ta Yes Ta >0 -.It Sx \&Cm Ta Yes Ta Yes Ta n +.It Sx \&Cm Ta Yes Ta Yes Ta >0 .It Sx \&Db Ta \&No Ta \&No Ta 1 .It Sx \&Dd Ta \&No Ta \&No Ta n .It Sx \&Dt Ta \&No Ta \&No Ta n -.It Sx \&Dv Ta Yes Ta Yes Ta n +.It Sx \&Dv Ta Yes Ta Yes Ta >0 .It Sx \&Dx Ta Yes Ta Yes Ta n .It Sx \&Em Ta Yes Ta Yes Ta >0 .It Sx \&En Ta \&No Ta \&No Ta 0 .It Sx \&Er Ta Yes Ta Yes Ta >0 .It Sx \&Es Ta \&No Ta \&No Ta 0 -.It Sx \&Ev Ta Yes Ta Yes Ta n +.It Sx \&Ev Ta Yes Ta Yes Ta >0 .It Sx \&Ex Ta \&No Ta \&No Ta n -.It Sx \&Fa Ta Yes Ta Yes Ta n +.It Sx \&Fa Ta Yes Ta Yes Ta >0 .It Sx \&Fd Ta \&No Ta \&No Ta >0 .It Sx \&Fl Ta Yes Ta Yes Ta n .It Sx \&Fn Ta Yes Ta Yes Ta >0 .It Sx \&Fr Ta \&No Ta \&No Ta n -.It Sx \&Ft Ta Yes Ta Yes Ta n +.It Sx \&Ft Ta Yes Ta Yes Ta >0 .It Sx \&Fx Ta Yes Ta Yes Ta n .It Sx \&Hf Ta \&No Ta \&No Ta n .It Sx \&Ic Ta Yes Ta Yes Ta >0 .It Sx \&In Ta \&No Ta \&No Ta n .It Sx \&Lb Ta \&No Ta \&No Ta 1 -.It Sx \&Li Ta Yes Ta Yes Ta n -.It Sx \&Lk Ta Yes Ta Yes Ta n +.It Sx \&Li Ta Yes Ta Yes Ta >0 +.It Sx \&Lk Ta Yes Ta Yes Ta >0 .It Sx \&Lp Ta \&No Ta \&No Ta 0 .It Sx \&Ms Ta Yes Ta Yes Ta >0 .It Sx \&Mt Ta Yes Ta Yes Ta >0 @@ -938,8 +939,8 @@ Memory address. Do not use this for postal addresses. .Pp Examples: -.D1 \&.Ad [0,$] -.D1 \&.Ad 0x00000000 +.Dl \&.Ad [0,$] +.Dl \&.Ad 0x00000000 .Ss \&An Author name. Requires either the name of an author or one of the following arguments: @@ -969,14 +970,14 @@ for the first author listing and for all other author listings. .Pp Examples: -.D1 \&.An -nosplit -.D1 \&.An Kristaps Dzonsons \&Aq kristaps@bsd.lv +.Dl \&.An -nosplit +.Dl \&.An Kristaps Dzonsons \&Aq kristaps@bsd.lv .Ss \&Ao Begin a block enclosed by angle brackets. Does not have any head arguments. .Pp Examples: -.D1 \&.Fl -key= \&Ns \&Ao \&Ar val \&Ac +.Dl \&.Fl -key= \&Ns \&Ao \&Ar val \&Ac .Pp See also .Sx \&Aq . @@ -986,12 +987,12 @@ This is generally used as a grammatical device when re form of a function. .Pp Examples: -.D1 \&.Fn execve \&Ap d +.Dl \&.Fn execve \&Ap d .Ss \&Aq Encloses its arguments in angle brackets. .Pp Examples: -.D1 \&.Fl -key= \&Ns \&Aq \&Ar val +.Dl \&.Fl -key= \&Ns \&Aq \&Ar val .Pp .Em Remarks : this macro is often abused for rendering URIs, which should instead use @@ -1012,9 +1013,9 @@ If an argument is not provided, the string is used as a default. .Pp Examples: -.D1 \&.Fl o \&Ns \&Ar file1 -.D1 \&.Ar -.D1 \&.Ar arg1 , arg2 . +.Dl \&.Fl o \&Ns \&Ar file1 +.Dl \&.Ar +.Dl \&.Ar arg1 , arg2 . .Ss \&At Formats an AT&T version. Accepts one optional argument: @@ -1031,8 +1032,8 @@ A version of Note that these arguments do not begin with a hyphen. .Pp Examples: -.D1 \&.At -.D1 \&.At V.1 +.Dl \&.At +.Dl \&.At V.1 .Pp See also .Sx \&Bsx , @@ -1076,8 +1077,7 @@ implementations render it poorly. Left- and right-justify the block. .It Fl literal Do not justify the block at all. -Preserve white space and newlines as they appear in the input, including -if it follows a macro. +Preserve white space as it appears in the input. .It Fl ragged Only left-justify the block. .It Fl unfilled @@ -1201,7 +1201,7 @@ Be careful in using over-long lines within a keep bloc Doing so will clobber the right margin. .Ss \&Bl Begin a list. -Lists consist of items started by the +Lists consist of items specified using the .Sx \&It macro, containing a head or a body or both. The list syntax is as follows: @@ -1336,7 +1336,7 @@ See also Encloses its arguments in square brackets. .Pp Examples: -.D1 \&.Bq 1 , \&Dv BUFSIZ +.Dl \&.Bq 1 , \&Dv BUFSIZ .Pp .Em Remarks : this macro is sometimes abused to emulate optional arguments for @@ -1369,7 +1369,7 @@ See also Encloses its arguments in curly braces. .Pp Examples: -.D1 \&.Brq 1 , ... , \&Va n +.Dl \&.Brq 1 , ... , \&Va n .Pp See also .Sx \&Bro . @@ -1378,8 +1378,8 @@ Format the BSD/OS version provided as an argument, or no argument is provided. .Pp Examples: -.D1 \&.Bsx 1.0 -.D1 \&.Bsx +.Dl \&.Bsx 1.0 +.Dl \&.Bsx .Pp See also .Sx \&At , @@ -1398,8 +1398,8 @@ Format the BSD version provided as an argument, or a d argument is provided. .Pp Examples: -.D1 \&.Bx 4.4 -.D1 \&.Bx +.Dl \&.Bx 4.4 +.Dl \&.Bx .Pp See also .Sx \&At , @@ -1416,7 +1416,7 @@ This denotes strings accepted by .Xr config 8 . .Pp Examples: -.D1 \&.Cd device le0 at scode? +.Dl \&.Cd device le0 at scode? .Pp .Em Remarks : this macro is commonly abused by using quoted literals to retain @@ -1429,8 +1429,8 @@ Command modifiers. Useful when specifying configuration options or keys. .Pp Examples: -.D1 \&.Cm ControlPath -.D1 \&.Cm ControlMaster +.Dl \&.Cm ControlPath +.Dl \&.Cm ControlMaster .Pp See also .Sx \&Fl . @@ -1441,7 +1441,7 @@ statements. It is followed by a newline. .Pp Examples: -.D1 \&.D1 \&Fl abcdefgh +.Dl \&.D1 \&Fl abcdefgh .Pp See also .Sx \&Bd @@ -1480,9 +1480,9 @@ or instead a valid canonical date as specified by If a date does not conform or is empty, the current date is used. .Pp Examples: -.D1 \&.Dd $\&Mdocdate$ -.D1 \&.Dd $\&Mdocdate: July 21 2007$ -.D1 \&.Dd July 21, 2007 +.Dl \&.Dd $\&Mdocdate$ +.Dl \&.Dd $\&Mdocdate: July 21 2007$ +.Dl \&.Dd July 21, 2007 .Pp See also .Sx \&Dt @@ -1495,7 +1495,7 @@ invocations. It is followed by a newline. .Pp Examples: -.D1 \&.Dl % mandoc mdoc.7 \e(ba less +.Dl \&.Dl % mandoc mdoc.7 \e(ba less .Pp See also .Sx \&Bd @@ -1663,9 +1663,9 @@ or .El .Pp Examples: -.D1 \&.Dt FOO 1 -.D1 \&.Dt FOO 4 KM -.D1 \&.Dt FOO 9 i386 +.Dl \&.Dt FOO 1 +.Dl \&.Dt FOO 4 KM +.Dl \&.Dt FOO 9 i386 .Pp See also .Sx \&Dd @@ -1675,8 +1675,8 @@ and Defined variables such as preprocessor constants. .Pp Examples: -.D1 \&.Dv BUFSIZ -.D1 \&.Dv STDOUT_FILENO +.Dl \&.Dv BUFSIZ +.Dl \&.Dv STDOUT_FILENO .Pp See also .Sx \&Er . @@ -1685,8 +1685,8 @@ Format the DragonFly BSD version provided as an argume value if no argument is provided. .Pp Examples: -.D1 \&.Dx 2.4.1 -.D1 \&.Dx +.Dl \&.Dx 2.4.1 +.Dl \&.Dx .Pp See also .Sx \&At , @@ -1732,8 +1732,8 @@ Note that this is a presentation term and should not b stylistically decorating technical terms. .Pp Examples: -.D1 \&.Em Warnings! -.D1 \&.Em Remarks : +.Dl \&.Em Warnings! +.Dl \&.Em Remarks : .Pp See also .Sx \&Bf , @@ -1758,8 +1758,8 @@ will emulate Display error constants. .Pp Examples: -.D1 \&.Er EPERM -.D1 \&.Er ENOENT +.Dl \&.Er EPERM +.Dl \&.Er ENOENT .Pp See also .Sx \&Dv . @@ -1770,8 +1770,8 @@ Environmental variables such as those specified in .Xr environ 7 . .Pp Examples: -.D1 \&.Ev DISPLAY -.D1 \&.Ev PATH +.Dl \&.Ev DISPLAY +.Dl \&.Ev PATH .Ss \&Ex Insert a standard sentence regarding exit values. Its syntax is as follows: @@ -1811,9 +1811,9 @@ Furthermore, if the following macro is another the last argument will also have a trailing comma. .Pp Examples: -.D1 \&.Fa \(dqconst char *p\(dq -.D1 \&.Fa \(dqint a\(dq \(dqint b\(dq \(dqint c\(dq -.D1 \&.Fa foo +.Dl \&.Fa \(dqconst char *p\(dq +.Dl \&.Fa \(dqint a\(dq \(dqint b\(dq \(dqint c\(dq +.Dl \&.Fa foo .Pp See also .Sx \&Fo . @@ -1841,10 +1841,10 @@ If the argument is a macro, a hyphen is prefixed to th output. .Pp Examples: -.D1 \&.Fl a b c -.D1 \&.Fl \&Pf a b -.D1 \&.Fl -.D1 \&.Op \&Fl o \&Ns \&Ar file +.Dl \&.Fl a b c +.Dl \&.Fl \&Pf a b +.Dl \&.Fl +.Dl \&.Op \&Fl o \&Ns \&Ar file .Pp See also .Sx \&Cm . @@ -1863,9 +1863,9 @@ are delimited by commas. If no arguments are specified, blank parenthesis are output. .Pp Examples: -.D1 \&.Fn "int funcname" "int arg0" "int arg1" -.D1 \&.Fn funcname "int arg0" -.D1 \&.Fn funcname arg0 +.Dl \&.Fn "int funcname" "int arg0" "int arg1" +.Dl \&.Fn funcname "int arg0" +.Dl \&.Fn funcname arg0 .Bd -literal -offset indent -compact \&.Ft functype \&.Fn funcname @@ -1916,7 +1916,7 @@ Its syntax is as follows: .D1 Pf \. Sx \&Ft Cm functype .Pp Examples: -.D1 \&.Ft int +.Dl \&.Ft int .Bd -literal -offset indent -compact \&.Ft functype \&.Fn funcname @@ -1934,8 +1934,8 @@ version provided as an argument, or a default value if no argument is provided. .Pp Examples: -.D1 \&.Fx 7.1 -.D1 \&.Fx +.Dl \&.Fx 7.1 +.Dl \&.Fx .Pp See also .Sx \&At , @@ -1955,8 +1955,8 @@ This is similar to but used for instructions rather than values. .Pp Examples: -.D1 \&.Ic hash -.D1 \&.Ic alias +.Dl \&.Ic hash +.Dl \&.Ic alias .Pp Note that using .Sx \&Bd Fl literal @@ -1977,7 +1977,7 @@ preceded by the arguments is enclosed in angle brackets. .Pp Examples: -.D1 \&.In sys/types +.Dl \&.In sys/types .Pp See also .Sx MANUAL STRUCTURE . @@ -2057,7 +2057,7 @@ phrases on an .Sx \&It , for example, .Pp -.D1 .It \(dqcol1 ; col2 ;\(dq \&; +.Dl .It \(dqcol1 ; col2 ;\(dq \&; .Pp will preserve the semicolon whitespace except for the last. .Pp @@ -2084,8 +2084,8 @@ section as described in .Sx MANUAL STRUCTURE . .Pp Examples: -.D1 \&.Lb libz -.D1 \&.Lb mdoc +.Dl \&.Lb libz +.Dl \&.Lb mdoc .Ss \&Li Denotes text that should be in a literal font mode. Note that this is a presentation term and should not be used for @@ -2103,8 +2103,8 @@ Its syntax is as follows: .D1 Pf \. Sx \&Lk Cm uri Op Cm name .Pp Examples: -.D1 \&.Lk http://bsd.lv \*qThe BSD.lv Project\*q -.D1 \&.Lk http://bsd.lv +.Dl \&.Lk http://bsd.lv \*qThe BSD.lv Project\*q +.Dl \&.Lk http://bsd.lv .Pp See also .Sx \&Mt . @@ -2118,21 +2118,18 @@ Its syntax is as follows: .D1 Pf \. Sx \&Ms Cm symbol .Pp Examples: -.D1 \&.Ms sigma -.D1 \&.Ms aleph +.Dl \&.Ms sigma +.Dl \&.Ms aleph .Ss \&Mt Format a .Dq mailto: hyperlink. -If an argument is not provided, the string -.Dq \(ti -is used as a default. Its syntax is as follows: .Pp .D1 Pf \. Sx \&Mt Cm address .Pp Examples: -.D1 \&.Mt discuss@manpages.bsd.lv +.Dl \&.Mt discuss@manpages.bsd.lv .Ss \&Nd A one line description of the manual's content. This may only be invoked in the @@ -2142,8 +2139,8 @@ section subsequent the macro. .Pp Examples: -.D1 \&.Sx \&Nd mdoc language reference -.D1 \&.Sx \&Nd format and display UNIX manuals +.Dl \&.Sx \&Nd mdoc language reference +.Dl \&.Sx \&Nd format and display UNIX manuals .Pp The .Sx \&Nd @@ -2200,14 +2197,16 @@ A macro used to terminate prior macro contexts. .Pp Examples: -.D1 \&.Sx \&Fl ab \&No cd \&Fl ef +.Dl \&.Sx \&Fl ab \&No cd \&Fl ef .Ss \&Ns Suppress a space. Following invocation, text is interpreted as free-form text until a macro is encountered. .Pp +This has no effect when invoked at the start of a macro line. +.Pp Examples: -.D1 \&.Fl o \&Ns \&Ar output +.Dl \&.Fl o \&Ns \&Ar output .Pp See also .Sx \&No @@ -2220,8 +2219,8 @@ version provided as an argument, or a default value if no argument is provided. .Pp Examples: -.D1 \&.Nx 5.01 -.D1 \&.Nx +.Dl \&.Nx 5.01 +.Dl \&.Nx .Pp See also .Sx \&At , @@ -2252,8 +2251,8 @@ Used when listing options to command-line utilities. Prints the argument(s) in brackets. .Pp Examples: -.D1 \&.Op \&Fl a \&Ar b -.D1 \&.Op \&Ar a | b +.Dl \&.Op \&Fl a \&Ar b +.Dl \&.Op \&Ar a | b .Pp See also .Sx \&Oo . @@ -2274,9 +2273,9 @@ Left unspecified, it defaults to the local operating s This is the suggested form. .Pp Examples: -.D1 \&.Os -.D1 \&.Os KTH/CSC/TCS -.D1 \&.Os BSD 4.3 +.Dl \&.Os +.Dl \&.Os KTH/CSC/TCS +.Dl \&.Os BSD 4.3 .Pp See also .Sx \&Dd @@ -2294,8 +2293,8 @@ version provided as an argument, or a default value if no argument is provided. .Pp Examples: -.D1 \&.Ox 4.5 -.D1 \&.Ox +.Dl \&.Ox 4.5 +.Dl \&.Ox .Pp See also .Sx \&At , @@ -2308,10 +2307,13 @@ and .Sx \&Ux . .Ss \&Pa A file-system path. +If an argument is not provided, the string +.Dq \(ti +is used as a default. .Pp Examples: -.D1 \&.Pa /usr/bin/mandoc -.D1 \&.Pa /usr/share/man/man7/mdoc.7 +.Dl \&.Pa /usr/bin/mandoc +.Dl \&.Pa /usr/share/man/man7/mdoc.7 .Pp See also .Sx \&Lk . @@ -2331,7 +2333,7 @@ The argument may be a macro. .Pp Examples: -.D1 \&.Pf \e. \&Sx \&Pf \&Cm prefix suffix +.Dl \&.Pf \e. \&Sx \&Pf \&Cm prefix suffix .Ss \&Po Multi-line version of .Sx \&Pq . @@ -2591,7 +2593,12 @@ The referenced section or sub-section name must be ide enclosed argument, including whitespace. .Pp Examples: -.D1 \&.Sx MANUAL STRUCTURE +.Dl \&.Sx MANUAL STRUCTURE +.Pp +See also +.Sx \&Sh +and +.Sx \&Ss . .Ss \&Sy Format enclosed arguments in symbolic .Pq Dq boldface . @@ -2607,7 +2614,7 @@ and Format a tradename. .Pp Examples: -.D1 \&.Tn IBM +.Dl \&.Tn IBM .Ss \&Ud Prints out .Dq currently under development . @@ -2616,7 +2623,7 @@ Format the UNIX name. Accepts no argument. .Pp Examples: -.D1 \&.Ux +.Dl \&.Ux .Pp See also .Sx \&At , @@ -2631,8 +2638,8 @@ and A variable name. .Pp Examples: -.D1 \&.Va foo -.D1 \&.Va const char *bar ; +.Dl \&.Va foo +.Dl \&.Va const char *bar ; .Ss \&Vt A variable type. This is also used for indicating global variables in the @@ -2651,8 +2658,8 @@ Note that this should not be confused with which is used for function return types. .Pp Examples: -.D1 \&.Vt unsigned char -.D1 \&.Vt extern const char * const sys_signame[] \&; +.Dl \&.Vt unsigned char +.Dl \&.Vt extern const char * const sys_signame[] \&; .Pp See also .Sx MANUAL STRUCTURE @@ -2662,9 +2669,13 @@ and Close a scope opened by .Sx \&Xo . .Ss \&Xo -Open an extension scope. -This macro originally existed to extend the 9-argument limit of troff; -since this limit has been lifted, the macro has been deprecated. +Extend the header of an +.Sx \&It +macro or the body of a partial-implicit block macro +beyond the end of the input line. +This macro originally existed to work around the 9-argument limit +of historic +.Xr roff 7 . .Ss \&Xr Link to another manual .Pq Qq cross-reference . @@ -2686,9 +2697,9 @@ This behaviour is for compatibility with GNU troff. .Pp Examples: -.D1 \&.Xr mandoc 1 -.D1 \&.Xr mandoc 1 \&; -.D1 \&.Xr mandoc 1 \&Ns s behaviour +.Dl \&.Xr mandoc 1 +.Dl \&.Xr mandoc 1 \&; +.Dl \&.Xr mandoc 1 \&Ns s behaviour .Ss \&br Emits a line-break. This macro should not be used; it is implemented for compatibility with @@ -2718,10 +2729,10 @@ troff implementations, at this time limited to GNU tro .Pq Qq groff . The term .Qq historic groff -refers to groff versions before the +refers to groff versions before 1.17, +which featured a significant update of the .Pa doc.tmac -file re-write -.Pq somewhere between 1.15 and 1.19 . +file. .Pp Heirloom troff, the other significant troff implementation accepting \-mdoc, is similar to historic groff. @@ -2731,6 +2742,16 @@ The following problematic behaviour is found in groff: .Pp .Bl -dash -compact .It +Display macros +.Po +.Sx \&Bd , +.Sx \&Dl , +and +.Sx \&D1 +.Pc +may not be nested. +\*[hist] +.It .Sx \&At with unknown arguments produces no output at all. \*[hist] @@ -2812,6 +2833,11 @@ can only be called by other macros, but not at the beg .Sx \&%C is not implemented. .It +Historic groff only allows up to eight or nine arguments per macro input +line, depending on the exact situation. +Providing more arguments causes garbled output. +The number of arguments on one input line is not limited with mandoc. +.It Historic groff has many un-callable macros. Most of these (excluding some block-level macros) are callable in new groff and mandoc. @@ -2879,7 +2905,10 @@ This is not supported by mandoc. .Sh SEE ALSO .Xr man 1 , .Xr mandoc 1 , +.Xr man 7 , .Xr mandoc_char 7 +.Xr roff 7 , +.Xr tbl 7 .Sh HISTORY The .Nm