summaryrefslogtreecommitdiffstats
path: root/mandoc.1
Commit message (Collapse)AuthorAgeFilesLines
* add some notes about using col(1) and ul(1) to process the ascii markupIngo Schwarze2018-12-281-0/+7
| | | | | | since these may not be commonly known utilities; idea from and joint work with tedu@ CV: ----------------------------------------------------------------------
* mandoc.css lives in /usr/share/misc now; use full paths to indicate this.Ingo Schwarze2018-12-241-7/+7
| | | | from tedu@
* Explain what the fields in mandoc messages mean,Ingo Schwarze2018-12-201-3/+19
| | | | | | rather than merely specifying the message syntax. Gap in documentation found while looking at a bug report from Raf Czlonka <rczlonka at gmail dot com>.
* Several improvements to escape sequence handling.Ingo Schwarze2018-12-151-1/+15
| | | | | | | | | | | | | | | | | | | | | | | * Add the missing special character \_ (underscore). * Partial implementations of \a (leader character) and \E (uninterpreted escape character). * Parse and ignore \r (reverse line feed). * Add a WARNING message about undefined escape sequences. * Add an UNSUPP message about unsupported escape sequences. * Mark \! and \? (transparent throughput) and \O (suppress output) as unsupported. * Treat the various variants of zero-width spaces as one-byte escape sequences rather than as special characters, to avoid defining bogus forms with square brackets. * For special characters with one-byte names, do not define bogus forms with square brackets, except for \[-], which is valid. * In the form with square brackets, undefined special characters do not fall back to printing the name verbatim, not even for one-byte names. * Starting a special character name with a blank is an error. * Undefined escape sequences never abort formatting of the input string, not even in HTML output mode. * Document the newly handled escapes, and a few that were missing. * Regression tests for most of the above.
* In -T locale (the default), -T ascii, and -T utf8 mode, provide a newIngo Schwarze2018-11-221-0/+12
| | | | | | | | | | | | | | | output option -O tag[=term] to move right to the definition of "term" when opening the manual page in a pager, effectively porting the -T html fragment name feature - https://man.openbsd.org/ksh#ulimit - to the terminal. Try: $ man -O tag uvm_sysctl $ man -O tag=ulimit ksh $ man -O tag 3 compress Feature development triggered by a question from kn@. Klemens also tested, provided feedback that resulted in improvements, and provided an OK.
* Add an option -T html -O toc to add a brief table of contents nearIngo Schwarze2018-10-021-0/+3
| | | | | the top of HTML pages containing at least two non-standard sections. Suggested by Adam Kalisz and discussed with kristaps@ during EuroBSDCon 2018.
* Support a second argument to -O man,Ingo Schwarze2018-10-021-1/+5
| | | | | | selecting the format according to local existence of the file. Suggested by kristaps@ during EuroBSDCon 2018. Written on the train Frankfurt-Karlsruhe returning from EuroBSDCon.
* Rudimentary implementation of the roff(7) .char (output glyphIngo Schwarze2018-08-251-0/+13
| | | | | | | | | definition) request, used for example by groff_hdtbl(7). This simplistic implementation may interact incorrectly with the .tr (input character translation) request. But come on, you are not only using .char *and* .tr, but you do so with respect to the same character in the same manual page?
* Implement the roff(7) .shift and .return requests,Ingo Schwarze2018-08-231-0/+22
| | | | | | | | | | | | | | for example used by groff_hdtbl(7) and groff_mom(7). Also correctly interpolate arguments during nested macro execution even after .shift and .return, implemented using a stack of argument arrays. Note that only read.c, but not roff.c can detect the end of a macro execution, and the existence of .shift implies that arguments cannot be interpolated up front, so unfortunately, this includes a partial revert of roff.c rev. 1.337, moving argument interpolation back into the function roff_res().
* Issue a STYLE message when normalizing the date format in .Dd/.TH.Ingo Schwarze2018-07-281-0/+10
| | | | | | | | Leah Neukirchen pointed out that mdoclint(1) used to warn about a leading zero before the day number, so we know that both NetBSD and Void Linux want the message. It does no harm on OpenBSD because Mdocdate always does the right thing anyway. jmc@ agrees that it makes sense in contexts not using Mdocdate.
* Minor correction: we render HTML character references hexadecimal,Ingo Schwarze2018-05-031-1/+1
| | | | not decimal; bentley@ changed that in html.c on July 14, 2017.
* Simpler description of output formats, shortening the manual page by 15 lines.Ingo Schwarze2018-04-291-99/+85
| | | | | | | Avoid the double redirection from -Tutf8 via -Tlocale to -Tascii. Add LC_CTYPE to the ENVIRONMENT section. While here, also correct a few inaccuracies and tweak some wordings. Triggered by a question from Laura Morales <lauretas at mail dot com>.
* Use TIOCGWINSZ to reduce the default -Owidth during interactive useIngo Schwarze2018-04-131-4/+8
| | | | | | | on terminals narrower than 79 columns and the default -Oindent on terminals narrower than 66 columns. Requested by and feedback from pirofti@; mpi@ and juanfra@ also like the general direction.
* Style message about bad input encoding of em-dashes as -- instead of \(em.Ingo Schwarze2018-03-161-1/+7
| | | | Suggested by Thomas Klausner <wiz at NetBSD>; discussed with jmc@.
* duplicate word, found by igor(1)Ingo Schwarze2017-11-281-1/+1
|
* be less assertive when warning about a possible typo;Ingo Schwarze2017-11-101-1/+1
| | | | from jca@, ok jmc@
* typo: convertion -> convention; from dcoppa@Ingo Schwarze2017-09-071-1/+1
|
* document -O mdoc; triggered by a question from jmc@ and OK jmc@Ingo Schwarze2017-08-191-0/+14
|
* For -Tlint, put parser messages on stdout instead of stderr.Ingo Schwarze2017-07-201-1/+3
| | | | | | | | | | | Originally, naddy@ requested this in 2011 (or maybe even earlier). It was discussed with joerg@, kristaps@, naddy@, and espie@ in 2011, and everybody agreed in principle, but it was postponed because kristaps@ wanted to do some cleanup of the message system first. Meanwhile, message infrastructure was improved about a dozen times... This makes long, tedious commands like "mandoc -Tlint *.1 2>&1 | less" unnecessary and allows simple ones like "man -l -Tlint *.1".
* Radically simplify the definitions what the message levels ERRORIngo Schwarze2017-07-071-25/+6
| | | | and WARNING mean: minus 20 lines of mdoc source. OK jmc@.
* Now that we have the -Wstyle message level, downgrade six warningsIngo Schwarze2017-07-061-56/+56
| | | | | | that are not syntax mistakes and that do not cause wrong formatting or content to style suggestions. Also upgrade two warnings that may cause information loss to errors.
* Printing "BASE:" in messages about violations of base system conventionsIngo Schwarze2017-07-041-0/+6
| | | | | is confusing, simply print "STYLE:", which is intuitive and does not sound excessively alarming; suggested by jmc@, OK tedu@ jmc@.
* report trailing delimiters after macros where they are usually a mistake;Ingo Schwarze2017-07-031-4/+8
| | | | the idea came up in a discussion with Thomas Klausner <wiz at NetBSD>
* warn about time machines; suggested by Thomas Klausner <wiz @ NetBSD>Ingo Schwarze2017-07-031-0/+8
|
* add warning "cross reference to self"; inspired by mdoclintIngo Schwarze2017-07-021-0/+18
|
* Basic reporting of .Xrs to manual pages that don't existIngo Schwarze2017-07-011-0/+8
| | | | | | | | | | | | in the base system, inspired by mdoclint(1). We are able to do this because (1) the -mdoc parser, the -Tlint validator, and the man(1) manual page lookup code are all in the same program and (2) the mandoc.db(5) database format allows fast lookup. Feedback from, previous versions tested by, and OK jmc@. A few features will be added to this in the tree, step by step.
* warn about some non-portable idioms in .Bl -column;Ingo Schwarze2017-06-291-0/+17
| | | | triggered by a question from Yuri Pankov (illumos)
* warn about .Ns macros that have no effect because they are followedIngo Schwarze2017-06-271-1/+3
| | | | by an isolated closing delimiter; inspired by mdoclint
* Catch typos in .Sh names; suggested by jmc@.Ingo Schwarze2017-06-251-0/+5
| | | | | | I'm using a very simple, linear time / zero space fuzzy string matching heuristic rather than a full Levenshtein metric, to keep the code both simple and fast.
* add support for the MT and ME mailto macros, used for example in wg(8);Ingo Schwarze2017-06-251-2/+6
| | | | patch from bentley@
* delete useless .Ns macro that jmc@ found with mdoclint(1)Ingo Schwarze2017-06-241-1/+1
|
* document message "unknown architecture"Ingo Schwarze2017-06-241-0/+6
|
* in the base system, suggest leaving .Os blank; inspired by mdoclintIngo Schwarze2017-06-241-0/+6
|
* Split -Wstyle into -Wstyle and the even lower -Wbase, and addIngo Schwarze2017-06-241-28/+69
| | | | | | | | | | | | | | | -Wopenbsd and -Wnetbsd to check conventions for the base system of a specific operating system. Mark operating system specific messages with "(OpenBSD)" at the end. Please use just "-Tlint" to check base system manuals (defaulting to -Wall, which is now -Wbase), but prefer "-Tlint -Wstyle" for the manuals of portable software projects you maintain that are not part of OpenBSD base, to avoid bogus recommendations about base system conventions that do not apply. Issue originally reported by semarie@, solution using an idea from tedu@, discussed with jmc@ and jca@.
* style message about duplicate RCS ids; inspired by mdoclintIngo Schwarze2017-06-171-0/+5
|
* style message about missing RCS ids; inspired by mdoclintIngo Schwarze2017-06-171-0/+42
|
* Delete the arbitrary range restriction for -Owidth.Ingo Schwarze2017-06-131-2/+1
| | | | | | | We provide users with tools. We don't attempt to prevent them from using them in stupid ways: depending on the context, not every stupid-looking use is necessarily actually stupid, and not every stupidity can be automatically detected anyway, so don't even try.
* style message about missing .Fn markup; inspired by mdoclintIngo Schwarze2017-06-111-0/+9
|
* style message about missing blank before trailing delimiter;Ingo Schwarze2017-06-101-0/+5
| | | | inspired by mdoclint(1), and jmc@ considers it useful
* warning about unknown .Lb arguments; inspired by mdoclint(1)Ingo Schwarze2017-06-081-0/+6
|
* style checks related to .Er; inspired by mdoclint(1)Ingo Schwarze2017-06-071-0/+30
|
* Minimal implementation of the roff(7) .ce request (center a numberIngo Schwarze2017-06-061-0/+5
| | | | | of input lines without filling). Contrary to groff, high-level macros abort .ce mode for now.
* enable -Wstyle by default in -Tlint; OK jmc@Ingo Schwarze2017-06-031-2/+2
|
* STYLE message about full stop at the end of .Nd; inspired by mdoclint(1)Ingo Schwarze2017-06-011-0/+5
|
* STYLE message about missing use of Ox/Nx/Fx/Dx; OK jmc@ wiz@Ingo Schwarze2017-05-311-0/+10
|
* tweak previous; from jmc@Ingo Schwarze2017-05-301-2/+2
|
* STYLE message about useless macros we don't want (Bt Tn Ud);Ingo Schwarze2017-05-301-0/+12
| | | | not a WARNING because they don't endanger portability
* Delete the -T xhtml command line option.Ingo Schwarze2017-05-171-3/+0
| | | | | It has been obsolete for more than two years. Use -T html.
* Modernize an example showing antiquated syntax,Ingo Schwarze2017-05-171-2/+1
| | | | and delete an example showing the arcane -W stop option.
* missing space between macro arg and punctuation; from jmc@Ingo Schwarze2017-05-171-1/+1
|