[BACK]Return to mandoc.1 CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Diff for /mandoc/mandoc.1 between version 1.206 and 1.219

version 1.206, 2017/06/25 11:42:02 version 1.219, 2017/09/07 14:55:12
Line 238  See
Line 238  See
 .It Fl T Cm lint  .It Fl T Cm lint
 Parse only: produce no output.  Parse only: produce no output.
 Implies  Implies
 .Fl W Cm all .  .Fl W Cm all
   and redirects parser messages, which usually appear
   on standard error output, to standard output.
 .It Fl T Cm locale  .It Fl T Cm locale
 Encode output using the current locale.  Encode output using the current locale.
 This is the default.  This is the default.
Line 313  and seven for
Line 315  and seven for
 .Xr man 7 .  .Xr man 7 .
 Increasing this is not recommended; it may result in degraded formatting,  Increasing this is not recommended; it may result in degraded formatting,
 for example overfull lines or ugly line breaks.  for example overfull lines or ugly line breaks.
   .It Cm mdoc
   Format
   .Xr man 7
   input files in
   .Xr mdoc 7
   output style.
   Specifically, this suppresses the two additional blank lines near the
   top and the bottom of each page, and it implies
   .Fl O Cm indent Ns =5 .
   One useful application is for checking that
   .Fl T Cm man
   output formats in the same way as the
   .Xr mdoc 7
   source it was generated from.
 .It Cm width Ns = Ns Ar width  .It Cm width Ns = Ns Ar width
 The output width is set to  The output width is set to
 .Ar width .  .Ar width .
Line 719  so using GNU troff instead of
Line 735  so using GNU troff instead of
 .Nm  .Nm
 to process the file may be preferable.  to process the file may be preferable.
 .It Cm error  .It Cm error
 An input file contains invalid syntax that cannot be safely interpreted.  Indicates a risk of information loss or severe misformatting,
 By discarding part of the input or inserting missing tokens,  in most cases caused by serious syntax errors.
 the parser is able to continue, and the error does not prevent  
 generation of formatted output, but typically, preparing that  
 output involves information loss, broken document structure  
 or unintended formatting, no matter whether  
 .Nm  
 or GNU troff is used.  
 In many cases, the output of  
 .Nm  
 and GNU troff is identical, but in some,  
 .Nm  
 is more resilient than GNU troff with respect to malformed input.  
 .Pp  
 Non-existent or unreadable input files are also reported on the  
 .Cm error  
 level.  
 In that case, the parser cannot even be started and no output  
 is produced from those input files.  
 .It Cm warning  .It Cm warning
 An input file uses obsolete, discouraged or non-portable syntax.  Indicates a risk that the information shown or its formatting
 All the same, the meaning of the input is unambiguous and a correct  may mismatch the author's intent in minor ways.
 rendering can be produced.  Additionally, syntax errors are classified at least as warnings,
 Documents causing warnings may render poorly when using other  even if they do not usually cause misformatting.
 formatting tools instead of  
 .Nm .  
 .It Cm style  .It Cm style
 An input file uses dubious or discouraged style.  An input file uses dubious or discouraged style.
 This is not a complaint about the syntax, and probably neither  This is not a complaint about the syntax, and probably neither
Line 758  Please use your good judgement to decide whether any p
Line 755  Please use your good judgement to decide whether any p
 .Cm style  .Cm style
 suggestion really justifies a change to the input file.  suggestion really justifies a change to the input file.
 .It Cm base  .It Cm base
 A convertion used in the base system of a specific operating system  A convention used in the base system of a specific operating system
 is not adhered to.  is not adhered to.
 These are not markup mistakes, and neither the quality of formatting  These are not markup mistakes, and neither the quality of formatting
 nor portability are in danger.  nor portability are in danger.
   Messages of the
   .Cm base
   level are printed with the more intuitive
   .Cm style
   .Ar level
   tag.
 .El  .El
 .Pp  .Pp
 Messages of the  Messages of the
Line 836  generated by CVS
Line 839  generated by CVS
 or  or
 .Ic NetBSD  .Ic NetBSD
 keyword substitution as conventionally used in these operating systems.  keyword substitution as conventionally used in these operating systems.
   .It Sy "referenced manual not found"
   .Pq mdoc
   An
   .Ic \&Xr
   macro references a manual page that is not found in the base system.
   The path to look for base system manuals is configurable at compile
   time and defaults to
   .Pa /usr/share/man : /usr/X11R6/man .
 .El  .El
 .Ss Style suggestions  .Ss Style suggestions
 .Bl -ohang  .Bl -ohang
Line 852  Consider using the conventional
Line 863  Consider using the conventional
 date format  date format
 .Dq "Month dd, yyyy"  .Dq "Month dd, yyyy"
 instead.  instead.
   .It Sy "lower case character in document title"
   .Pq mdoc , man
   The title is still used as given in the
   .Ic \&Dt
   or
   .Ic \&TH
   macro.
 .It Sy "duplicate RCS id"  .It Sy "duplicate RCS id"
 A single manual page contains two copies of the RCS identifier for  A single manual page contains two copies of the RCS identifier for
 the same operating system.  the same operating system.
 Consider deleting the later instance and moving the first one up  Consider deleting the later instance and moving the first one up
 to the top of the page.  to the top of the page.
   .It Sy "typo in section name"
   .Pq mdoc
   Fuzzy string matching revealed that the argument of an
   .Ic \&Sh
   macro is similar, but not identical to a standard section name.
   .It Sy "unterminated quoted argument"
   .Pq roff
   Macro arguments can be enclosed in double quote characters
   such that space characters and macro names contained in the quoted
   argument need not be escaped.
   The closing quote of the last argument of a macro can be omitted.
   However, omitting it is not recommended because it makes the code
   harder to read.
 .It Sy "useless macro"  .It Sy "useless macro"
 .Pq mdoc  .Pq mdoc
 A  A
Line 892  list contains two consecutive
Line 923  list contains two consecutive
 entries describing the same  entries describing the same
 .Ic \&Er  .Ic \&Er
 number.  number.
 .It Sy "description line ends with a full stop"  .It Sy "trailing delimiter"
 .Pq mdoc  .Pq mdoc
 Do not use punctuation at the end of an  The last argument of an
 .Ic \&Nd  .Ic \&Ex , \&Fo , \&Nd , \&Nm , \&Os , \&Sh , \&Ss , \&St ,
 block.  or
   .Ic \&Sx
   macro ends with a trailing delimiter.
   This is usually bad style and often indicates typos.
   Most likely, the delimiter can be removed.
 .It Sy "no blank before trailing delimiter"  .It Sy "no blank before trailing delimiter"
 .Pq mdoc  .Pq mdoc
 The last argument of a macro that supports trailing delimiter  The last argument of a macro that supports trailing delimiter
 arguments is longer than one byte and ends with a trailing delimiter.  arguments is longer than one byte and ends with a trailing delimiter.
 Consider inserting a blank such that the delimiter becomes a separate  Consider inserting a blank such that the delimiter becomes a separate
 argument, thus moving it out of the scope of the macro.  argument, thus moving it out of the scope of the macro.
   .It Sy "fill mode already enabled, skipping"
   .Pq man
   A
   .Ic \&fi
   request occurs even though the document is still in fill mode,
   or already switched back to fill mode.
   It has no effect.
   .It Sy "fill mode already disabled, skipping"
   .Pq man
   An
   .Ic \&nf
   request occurs even though the document already switched to no-fill mode
   and did not switch back to fill mode yet.
   It has no effect.
 .It Sy "function name without markup"  .It Sy "function name without markup"
 .Pq mdoc  .Pq mdoc
 A word followed by an empty pair of parentheses occurs on a text line.  A word followed by an empty pair of parentheses occurs on a text line.
Line 911  Consider using an
Line 960  Consider using an
 or  or
 .Ic \&Xr  .Ic \&Xr
 macro.  macro.
   .It Sy "whitespace at end of input line"
   .Pq mdoc , man , roff
   Whitespace at the end of input lines is almost never semantically
   significant \(em but in the odd case where it might be, it is
   extremely confusing when reviewing and maintaining documents.
   .It Sy "bad comment style"
   .Pq roff
   Comment lines start with a dot, a backslash, and a double-quote character.
   The
   .Nm
   utility treats the line as a comment line even without the backslash,
   but leaving out the backslash might not be portable.
 .El  .El
 .Ss Warnings related to the document prologue  .Ss Warnings related to the document prologue
 .Bl -ohang  .Bl -ohang
Line 926  macro before the first non-prologue macro.
Line 987  macro before the first non-prologue macro.
 There is no  There is no
 .Ic \&TH  .Ic \&TH
 macro, or it has no arguments.  macro, or it has no arguments.
 .It Sy "lower case character in document title"  
 .Pq mdoc , man  
 The title is still used as given in the  
 .Ic \&Dt  
 or  
 .Ic \&TH  
 macro.  
 .It Sy "missing manual section, using \(dq\(dq"  .It Sy "missing manual section, using \(dq\(dq"
 .Pq mdoc , man  .Pq mdoc , man
 A  A
Line 968  The date given in a
Line 1022  The date given in a
 or  or
 .Ic \&TH  .Ic \&TH
 macro does not follow the conventional format.  macro does not follow the conventional format.
   .It Sy "date in the future, using it anyway"
   .Pq mdoc , man
   The date given in a
   .Ic \&Dd
   or
   .Ic \&TH
   macro is more than a day ahead of the current system
   .Xr time 3 .
 .It Sy "missing Os macro, using \(dq\(dq"  .It Sy "missing Os macro, using \(dq\(dq"
 .Pq mdoc  .Pq mdoc
 The default or current system is not shown in this case.  The default or current system is not shown in this case.
 .It Sy "duplicate prologue macro"  
 .Pq mdoc  
 One of the prologue macros occurs more than once.  
 The last instance overrides all previous ones.  
 .It Sy "late prologue macro"  .It Sy "late prologue macro"
 .Pq mdoc  .Pq mdoc
 A  A
Line 982  A
Line 1040  A
 or  or
 .Ic \&Os  .Ic \&Os
 macro occurs after some non-prologue macro, but still takes effect.  macro occurs after some non-prologue macro, but still takes effect.
 .It Sy "skipping late title macro"  
 .Pq mdoc  
 The  
 .Ic \&Dt  
 macro appears after the first non-prologue macro.  
 Traditional formatters cannot handle this because  
 they write the page header before parsing the document body.  
 Even though this technical restriction does not apply to  
 .Nm ,  
 traditional semantics is preserved.  
 The late macro is discarded including its arguments.  
 .It Sy "prologue macros out of order"  .It Sy "prologue macros out of order"
 .Pq mdoc  .Pq mdoc
 The prologue macros are not given in the conventional order  The prologue macros are not given in the conventional order
Line 1084  The same standard section title occurs more than once.
Line 1131  The same standard section title occurs more than once.
 .Pq mdoc  .Pq mdoc
 A standard section header occurs in a section of the manual  A standard section header occurs in a section of the manual
 where it normally isn't useful.  where it normally isn't useful.
   .It Sy "cross reference to self"
   .Pq mdoc
   An
   .Ic \&Xr
   macro refers to a name and section matching the section of the present
   manual page and a name mentioned in an
   .Ic \&Nm
   macro in the NAME or SYNOPSIS section, or in an
   .Ic \&Fn
   or
   .Ic \&Fo
   macro in the SYNOPSIS.
   Consider using
   .Ic \&Nm
   or
   .Ic \&Fn
   instead of
   .Ic \&Xr .
 .It Sy "unusual Xr order"  .It Sy "unusual Xr order"
 .Pq mdoc  .Pq mdoc
 In the SEE ALSO section, an  In the SEE ALSO section, an
Line 1170  The paragraph macro is moved after the end of the list
Line 1235  The paragraph macro is moved after the end of the list
 .Pq mdoc  .Pq mdoc
 An input line begins with an  An input line begins with an
 .Ic \&Ns  .Ic \&Ns
 macro.  macro, or the next argument after an
   .Ic \&Ns
   macro is an isolated closing delimiter.
 The macro is ignored.  The macro is ignored.
 .It Sy "blocks badly nested"  .It Sy "blocks badly nested"
 .Pq mdoc  .Pq mdoc
Line 1211  list block contains text or macros before the first
Line 1278  list block contains text or macros before the first
 .Ic \&It  .Ic \&It
 macro.  macro.
 The offending children are moved before the beginning of the list.  The offending children are moved before the beginning of the list.
 .It Sy "fill mode already enabled, skipping"  .It Sy "first macro on line"
 .Pq man  Inside a
 A  .Ic \&Bl Fl column
 .Ic \&fi  list, a
 request occurs even though the document is still in fill mode,  .Ic \&Ta
 or already switched back to fill mode.  macro occurs as the first macro on a line, which is not portable.
 It has no effect.  
 .It Sy "fill mode already disabled, skipping"  
 .Pq man  
 An  
 .Ic \&nf  
 request occurs even though the document already switched to no-fill mode  
 and did not switch back to fill mode yet.  
 It has no effect.  
 .It Sy "line scope broken"  .It Sy "line scope broken"
 .Pq man  .Pq man
 While parsing the next-line scope of the previous macro,  While parsing the next-line scope of the previous macro,
Line 1356  list, an
Line 1415  list, an
 .Ic \&It  .Ic \&It
 block is empty.  block is empty.
 An empty list item is shown.  An empty list item is shown.
   .It Sy "missing argument, using next line"
   .Pq mdoc
   An
   .Ic \&It
   macro in a
   .Ic \&Bd Fl column
   list has no arguments.
   While
   .Nm
   uses the text or macros of the following line, if any, for the cell,
   other formatters may misformat the list.
 .It Sy "missing font type, using \efR"  .It Sy "missing font type, using \efR"
 .Pq mdoc  .Pq mdoc
 A  A
Line 1427  An empty box is inserted.
Line 1497  An empty box is inserted.
 .El  .El
 .Ss "Warnings related to bad macro arguments"  .Ss "Warnings related to bad macro arguments"
 .Bl -ohang  .Bl -ohang
 .It Sy "unterminated quoted argument"  
 .Pq roff  
 Macro arguments can be enclosed in double quote characters  
 such that space characters and macro names contained in the quoted  
 argument need not be escaped.  
 The closing quote of the last argument of a macro can be omitted.  
 However, omitting it is not recommended because it makes the code  
 harder to read.  
 .It Sy "duplicate argument"  .It Sy "duplicate argument"
 .Pq mdoc  .Pq mdoc
 A  A
Line 1576  As an implementation dependent choice, tab characters 
Line 1638  As an implementation dependent choice, tab characters 
 are passed through to the formatters in any case.  are passed through to the formatters in any case.
 Given that the text before the tab character will be filled,  Given that the text before the tab character will be filled,
 it is hard to predict which tab stop position the tab will advance to.  it is hard to predict which tab stop position the tab will advance to.
 .It Sy "whitespace at end of input line"  
 .Pq mdoc , man , roff  
 Whitespace at the end of input lines is almost never semantically  
 significant \(em but in the odd case where it might be, it is  
 extremely confusing when reviewing and maintaining documents.  
 .It Sy "new sentence, new line"  .It Sy "new sentence, new line"
 .Pq mdoc  .Pq mdoc
 A new sentence starts in the middle of a text line.  A new sentence starts in the middle of a text line.
 Start it on a new input line to help formatters produce correct spacing.  Start it on a new input line to help formatters produce correct spacing.
 .It Sy "bad comment style"  
 .Pq roff  
 Comment lines start with a dot, a backslash, and a double-quote character.  
 The  
 .Nm  
 utility treats the line as a comment line even without the backslash,  
 but leaving out the backslash might not be portable.  
 .It Sy "invalid escape sequence"  .It Sy "invalid escape sequence"
 .Pq roff  .Pq roff
 An escape sequence has an invalid opening argument delimiter, lacks the  An escape sequence has an invalid opening argument delimiter, lacks the
Line 1698  and any remaining cells stay empty.
Line 1748  and any remaining cells stay empty.
 .El  .El
 .Ss "Errors related to roff, mdoc, and man code"  .Ss "Errors related to roff, mdoc, and man code"
 .Bl -ohang  .Bl -ohang
   .It Sy "duplicate prologue macro"
   .Pq mdoc
   One of the prologue macros occurs more than once.
   The last instance overrides all previous ones.
   .It Sy "skipping late title macro"
   .Pq mdoc
   The
   .Ic \&Dt
   macro appears after the first non-prologue macro.
   Traditional formatters cannot handle this because
   they write the page header before parsing the document body.
   Even though this technical restriction does not apply to
   .Nm ,
   traditional semantics is preserved.
   The late macro is discarded including its arguments.
 .It Sy "input stack limit exceeded, infinite loop?"  .It Sy "input stack limit exceeded, infinite loop?"
 .Pq roff  .Pq roff
 Explicit recursion limits are implemented for the following features,  Explicit recursion limits are implemented for the following features,

Legend:
Removed from v.1.206  
changed lines
  Added in v.1.219

CVSweb