Lines Matching +full:1 +full:- +full:7
7 --- MAJOR NEW FEATURES ---
8 * mdoc(7): automatic tagging improved in many respects
9 * mdoc(7): new .Tg (tag) macro to explicitly mark a place as defining a term
10 * man(7): implement some automatic tagging support
11 * man(1): let -w without argument show the manpath, like in man-db and man-1.6
12 * -T html: wrap text and phrasing elements in paragraphs unless already
17 --- MINOR NEW FEATURES ---
18 * man(1): switch the default pager from "more -s" to "less"
19 * man(1): in the fallback code to look for manual pages without using
20 mandoc.db(5), accept files "man<one-digit-section>/<name>.<full-section>"
21 in addition to the already supported "man<full-section>/name.[01-9]*"
23 a heads-up on stderr at the end because otherwise, users may easily
25 * man.cgi(8): add a Content-Security-Policy HTTP header
27 * mandoc.css: support prefers-color-scheme: dark
28 * -T html: add meta viewport element to help mobile devices
29 * -T html -O tag: let this pass a file:// URI to the pager
30 * tbl(7): implement the "nospaces" option
31 * tbl(7) -T html: implement the "a" (em indent) layout specification
32 * tbl(7) -T html: implement the "b" (bold) and "i" (italic) layout modifiers
33 * tbl(7): support two-character font names in the layout font modifier
34 * tbl(7) -T html: support horinzontal rulers in individual cells
35 * tbl(7) -T tree: print more details about columns, options, rows, and cells
36 * roff(7): implement the .break request (break out of a .while loop)
37 * roff(7): support the CB and CI fonts in \f and .ft
38 * -T lint: new STYLE message if a file name extension contradicts .Dt/.TH
39 * -T lint: new STYLE message about overlong text lines
40 * -W style: check .Xr links along the full manpath
41 --- RELIABILITY BUGFIXES ---
42 * man(1): do not segfault if /tmp/ is not writeable
43 * man(1): do not access a NULL pointer when both -l and -w are given
46 * man(7): fix an assertion failure caused by doubly nested next-line scopes
47 * tbl(7): fix a crash when the last column is only reached by spans
48 * tbl(7): fix a NULL pointer access in some cases of two spans on one row
49 * tbl(7) -T ascii: fix a NULL pointer access on empty data cells
50 * tbl(7) -T ascii: fix a NULL pointer access on a line next to a short row
51 * tbl(7): fix an assertion failure caused by excessive spacing modifiers
52 * tbl(7): fix an infinite loop for some overlapping horizontal spans
53 * roff(7): fix a rare case of writing one byte past the end of the input buffer
54 * roff(7): do not call abort(3) when \*[.T] is encountered
55 * roff(7): fix an assertion failure caused by a macro inside .ce .if
56 * roff(7): fix assertion failures for .ti and .po with excessive arguments
57 * roff(7): avoid near-infinte output for .ce inside explicit no-fill mode
58 * -T ascii/utf8: fix assertion failures caused by excessive spacing
59 * -T html: fix an assertion failure caused by .ft in rare situations
60 * -T man: fix an assertion failure caused by tbl(7) and eqn(7) input
61 --- PORTABILITY IMPROVEMENTS ---
64 * configure: stop trying to ask make(1) what the default compiler is
70 * in regress.pl, avoid the non-portable options sed(1) -i and echo(1) -n
72 --- MINOR FUNCTIONAL IMPROVEMENTS ---
73 * man(1) -h: for pages lacking a SYNOPSIS, show the NAME section
74 * man(1): when the first argument starts with a digit, optionally
78 * man(1): with a specific section requested, try harder to find
80 1. The section in both the directory name and the file name matches exactly.
84 * man(1): if no tags were generated at all, unlink(2) the empty tags file
85 as soon as the condition can be detected and do not pass it to less(1)
90 * mdoc(7): let .Dd concatenate all arguments and default to the empty string
91 * mdoc(7): convert ".Fl Fl" to ".Fl \-" during validation, improving -T html
92 * mdoc(7): improve output of .At 32v
93 * man(7): no longer print multiple blank lines before NAME and page footer
94 * tbl(7) -T utf8: improved rendering of horizontal lines
95 * tbl(7) -T html: in "n" cells, align by padding numbers on the right
96 * tbl(7): no longer leak tabulator settings to subsequent roff(7) code
97 * mdoc(7) -T html: for .Bl -tag, use "column-count: 1" rather
99 * mdoc(7) -T html: render .Bd -unfilled in proportionally-spaced font
100 * mdoc(7) -T html: format .Nd with <span> rather than <div>
101 * mdoc(7) -T lint: do not warn about Mdocdate without an actual date
102 * mdoc(7) -T lint: do not complain about function types of the
104 * -T html: append .html suffix to temporary files to please browsers
105 * -T markdown: print a BAGARG message if called on man(7) input
106 --- MINOR BUGFIXES ---
107 * man(1): do the search for each name independently, and
109 * man(1): escape shell wildcard characters in name arguments before glob(3)
110 * man(1): when asking for a single manual page by name, prefer file name
112 matches, but do not change the ordering for apropos(1) nor for man -a
113 * man(1): correctly extract the section name from the file name extension
117 * tbl(7): correct handling of T& after horizontal rulers in the layout
118 * tbl(7): correct column widths if rows have different numbers of cells
119 * tbl(7): empty columns are 1n wide rather than 0n
120 * tbl(7): correctly calculate required column widths for tables containing
123 * tbl(7): skip escape sequences when looking for column separators
124 * eqn(7): skip whitespace before tokens
125 * roff(7): when calling an empty macro, do not clobber existing arguments
126 * roff(7): recognize \} on lines closing a macro definition request
127 * roff(7): do not throw a bogus warning for "'br\}" and similar lines
128 * roff(7): stop generating comment nodes when encountering the first content
129 * mandoc_char(7): make \0 (digit-width space) non-breaking
130 * mdoc(7) .Bl -column: parse Macro in .It "word<tab>word" Ta word Macro<eol>
131 * mdoc(7) -T html: display straight quotes, not curly quotes, for .Qq/.Qo
132 * -T html: remove some spurious line breaks, in particular inside <pre>
133 * -T html: use <br/> for a space character at the beginning of an input line
134 * -T html: use ~%d for ordinal fragment suffixes, reserve '~' for that purpose
135 --- STRUCTURAL IMPROVEMENTS ---
139 doing one well-defined task each
144 --- THANKS TO ---
160 * Jan Schreiber for many bug reports found with afl(1)
181 Jamie Landeg-Jones, Kazuo KUROI, and Wynn Wolf Arbor for a bug report
206 --- MAJOR NEW FEATURES ---
207 * apropos(1): improve POSIX compliance by accepting case-insensitive
209 * new -O tag[=term] output option (open a page at the definition of a term)
210 * tbl(7) -T html: spanning and horizontal and vertical alignment of cells
211 * tbl(7) -T html: draw lines on the edges of table cells
212 * tbl(7) -T utf8: render lines with the Unicode box drawing characters
214 --- MINOR NEW FEATURES ---
215 * -T html: new option -O toc (table of contents)
216 * -T html: second argument to -O man to support local and remote links
217 * mdoc(7) .Bd -centered now fills the text contained in it
218 * man-ext .SY and .YS macros (synopsis block)
219 * man-ext .TQ macro (tagged paragraph without vertical space before it)
220 * tbl(7) \& explicit alignment indicator
221 * roff(7) .shift, .while, and .return requests
222 * roff(7) .char request (output glyph definition)
223 * roff(7) .nop request (no operation)
224 * roff(7) .ft request: handle the CB, CI, and CR fonts
225 * roff(7) .if c conditional (character available)
226 * roff(7) \\$@ escape sequence (insert all macro arguments, quoted)
227 * roff(7) \*(.T predefined string (interpolate output device name)
228 * roff(7) \[charNNN] escape sequence (for printable ASCII characters)
229 * roff(7) \# escape sequence (line continuation with comment)
230 --- HTML OUTPUT SYNTAX CORRECTIONS ---
233 * Stop writing empty list elements for non-compact .Bl -tag lists.
236 --- MINOR FUNCTIONAL IMPROVEMENTS ---
237 * many improvements to the handling of fill and no-fill mode
238 * tbl(7): better column widths in the presence of horizontal spans
242 * portability: autodetect whether less(1) supports the -T option
244 --- STRUCTURAL IMPROVEMENTS ---
245 * Disentangle eqn(7) and tbl(7) from other parser header files,
248 --- THANKS TO ---
280 --- MAJOR NEW FEATURES ---
289 particular all hard-coded indentations and column widths, and
294 (element nesting, URL-fragment syntax, duplicate id= attributes).
295 --- MINOR NEW FEATURES ---
296 * When a man(1) argument contains a slash, imply -l like in man-db.
297 * Use TIOCGWINSZ to reduce the default -Owidth and -Oindent during
300 * Terminal rendering of eqn(7) is improved in several respects.
301 * Simplified and nicer output from the mdoc(7) .Lk macro, formatting
302 all links in-line, even long ones.
303 * roff(7) \n+ and \n- numerical register auto-increment and -decrement
304 * roff(7) .nr optional third argument (auto-increment step size)
305 * Autodetect in ./configure whether the compiler can use -W and -static,
307 --- RELIABILITY BUGFIXES ---
308 * Only activate UTF-8 output when the user really selected UTF-8,
312 using renamed or user defined macros after roff(7) conditionals.
313 * Avoid an assertion failure in certain .Bl -column lists.
319 * Fix misformatting of man(7) documents lacking .SH macros
322 --- THANKS TO ---
331 * Werner Lemberg (groff) for feedback on mdoc(7) language changes.
332 * Colin Watson (man-db) for feedback on man-db semantics.
357 --- BUG FIXES ---
358 * man(7): Do not crash with out-of-bounds read access to a constant
360 * mdoc(7): Do not crash with out-of-bounds read access to a constant
362 * tbl(7): Ignore explicitly specified negative column widths rather than
364 * man(1): No longer use names that only occur in the SYNOPSIS section.
366 --- THANKS TO ---
372 --- MAJOR NEW FEATURES ---
373 * New mdoc(7) -Tmarkdown output mode.
374 * For -Thtml, implement internal hyperlinks pointing to authoritative
375 definitions of various syntax elements, similar to the ctags(1)-like
376 less(1) :t internal searching in terminal mode.
377 * Provide a superset of the functionality of the former mdoclint(1)
378 utility and a new -Wstyle message level with several new messages,
380 * tbl(7): Implement automatic line breaking inside individual table
382 * eqn(7): Complete rewrite of the lexer, resulting in several bugfixes.
384 of syntax tree nodes on the roff(7) level, allowing implementation
386 --- REMOVED FUNCTIONALITY ---
387 * Delete the manpage(1) utility. It was never enabled in any release.
388 * Delete the -Txhtml command line option. It has been an obsolete
389 alias for the -Thtml output mode for more than two years.
390 --- MINOR NEW FEATURES ---
391 * -Tlint now puts parser messages on stdout instead of stderr,
392 making commands like "man -l -Tlint *.1" useful.
393 * mdoc(7): Various .Lk formatting improvements.
394 * mdoc(7) -Thtml: Better CSS for .Bl lists.
395 * man(7): Implement the .MT/.ME block macro (mailto hyperlink).
396 * man(7): Implement the .DT macro (restore default tab positions).
397 * man(7): Improved support for manuals generated with reStructuredText
398 by partial support for the \n[an-margin] number register.
399 * man(7) -Thtml: Support deep linking to .SH and .SS headers.
400 * tbl(7): Implement the "allbox" table option.
401 * tbl(7): Implement the column spacing and the 'w' (minimum column
403 * tbl(7): Significant improvements of the manual page.
404 * eqn(7): Much improved font selection, including recognition of
405 well-known function names, and a few other formatting improvements.
406 * eqn(7) -Thtml: Use <mn> and <mo> in addition to <mi>.
407 * roff(7): Implement the .ce (centering), .mc (margin character),
411 * roff(7) .am: Implement appending to mdoc(7) and man(7) macros.
412 * roff(7): implement the \h (horizontol motion), \l (horizontal
415 * roff(7): Implement the 'd' conditional (macro or string defined).
417 * regress.pl(1): simpler user interface, better summary output,
419 --- THANKS TO ---
426 * Jonathan Gray (OpenBSD) for several bug reports from afl(1)
428 * Theo Buehler (OpenBSD) for several bug reports, most from afl(1).
433 mdoclint(1) functionality to mandoc -Tlint, for suggesting
437 * Thomas Guettler for suggesting -Thtml internal hyperlinks.
450 * Dag-Erling Smoergrav (FreeBSD) for inspiring new warning messages.
456 Changes in version 1.14.1, released on February 21, 2017
458 --- MAJOR NEW FEATURES ---
459 * apropos(1): Reimplement complete semantic search functionality
462 * man(1): Support more than one tag entry for the same search term,
463 plus some minor improvements to the less(1) :t support.
464 * -Thtml: Use real macro names for CSS classes.
466 * -Thtml: Produce human readable HTML code by using indentation
471 suite, see regress/regress.pl.1 for details.
472 --- REMOVED FUNCTIONALITY ---
474 * Drop support for manpath(1). Even if your system has manpath(1),
476 operating system defaults, man.conf(5) for machine-specific
477 modifications, and ${MANPATH}, -m, and -M for user preferences
478 than to bother with the complexity of manpath(1).
479 * makewhatis(8) -p: No longer warn about missing MLINKS since these
481 --- MINOR NEW FEATURES ---
482 * mdoc(7): Warn about invalid punctuation and content below NAME.
483 * mdoc(7): Warn about .Xr lacking the second argument (section).
484 * mdoc(7): Warn about violations of the rule "new sentence, new line".
485 * roff(7): Warn about trailing whitespace at the end of comments.
486 * mdoc(7): Improve rendering of double quotes.
487 * mdoc(7): Always do text production in the validator, never in the
488 formatters. Cleaner, simpler, shorter, helps NetBSD apropos(1)
489 and also makes -Ttree output more useful.
490 * -Ttree: Show metadata and some additional node flags.
491 New -Onoval output option to show the unvalidated tree.
492 --- RELIABILITY BUGFIXES ---
493 * man(1): Make "man -l" work with standard input from a pipe or file,
495 * man(7): Fix out of bounds read access if a text node immediately
497 * mdoc(7): Fix out of bounds read access for .Bl without a type
499 * mdoc(7): Fix out of bounds read access for .Bl -column starting
501 * mdoc(7): Fix syntax tree corruption leading to segfaults caused
503 * man(1): Fix NULL dereference when the first of multiple pages
505 * mdoc(7): Fix syntax tree corruption leading to NULL dereference
506 caused by partial implicit macros inside .Bl -column table cells.
507 * mdoc(7): Fix syntax tree corruption leading to NULL dereference
509 * mdoc(7): Fix syntax tree corruption leading to NULL dereference
510 caused by .Ta following a nested .Bl -column breaking another block.
511 * mdoc(7): Fix syntax tree corruption sometimes leading to NULL
513 * mdoc(7) -Thtml: Fix a NULL dereference for .Bl -column with 0 columns.
514 * mdoc(7): Fix NULL dereference in some specific cases of a
515 block-end macro calling another block-end macro.
516 * mdoc(7): Fix NULL dereference if the only child of the head
517 of the first .Sh was an empty in-line macro.
518 * eqn(7): Fix NULL dereference in the terminal formatter
520 * mdoc(7): Fix an assertion failure for a .Bd without a type that
522 * mdoc(7): Fix an assertion failure that happened for some .Bl -column
523 lists containing a column width of "-4n", "-3n", or "-2n".
524 * mdoc(7): Fix an assertion failure caused by .Bl -column without .It
525 but containing eqn(7) or tbl(7) code.
526 * roff(7): Fix an assertion failure caused by \z\[u00FF] with -Tps/-Tpdf.
527 * roff(7): Fix an assertion failures caused by whitespace inside \o''
529 * -Thtml: Fix an assertion failure caused by -Oman or -Oincludes of
531 --- PORTABILITY IMPROVEMENTS ---
532 * man(1): Do not mix stdio narrow and wide stream orientation
534 * mandoc(1): Autodetect a suitable locale for -Tutf8 mode.
536 * ./configure: Autodetect if nanosleep(3) needs -lrt.
538 * ./configure: Put compiler arguments that may contain -l at the end.
539 --- MINOR BUGFIXES ---
540 * mdoc(7): Fix SYNOPSIS output if the first child of .Nm is a macro.
541 * mdoc(7) -Thtml: Improve formatting of .Bl -tag with short tags.
542 * man(7) -Thtml: Preserve whitespace in .nf (nofill) mode.
543 * mandoc(1): Error out on invalid output options on the command line.
544 --- STRUCTURAL CHANGES, no functional change ---
547 --- THANKS TO ---
557 most of them found by systematic afl(1) fuzzing.
559 for crucial help in getting .Bl -tag CSS formatting fixed.
561 patch to autodetect a suitable locale for -Tutf8 mode
586 --- MAJOR NEW FEATURES ---
588 * man(1): Leverage less(1) -T and :t in a way resembling ctags(1)
590 * soelim(1): New implementation by Baptiste Daroussin.
595 --- MAJOR FUNCTIONALLY RELEVANT BUGFIXES ---
596 * mdoc(7): Fix multiple aspects of SYNOPSIS .Nm formatting.
597 * man(1): Fix process group handling, avoiding unclean shutdowns.
598 --- PORTABILITY IMPROVEMENTS ---
607 * Do not hardcode the path to the more(1) program.
608 --- MINOR NEW FEATURES ---
609 * roff(7): Implement \n(.$ (number of macro arguments).
610 * roff(7): Fully implement \z (do not advance cursor).
611 * roff(7): Implement the `r' conditional (register exists).
612 * roff(7): Implement \\$* (interpolate all arguments).
613 * roff(7): Parse and ignore \, and \/ (italic corrections).
614 * When there is no -m, no -M, no MANPATH and no /etc/man.conf,
616 * man(1): Give manuals in purely numerical sections priority over
621 * man.cgi(8): Delete the pseudo-manpath "mandoc", assume that
622 apropos(1) and man.cgi(8) are installed in the default manpath.
623 --- RELIABILITY BUGFIXES ---
624 * mdoc(7): Avoid a use after free and an assertion failure when nodes
626 * mdoc(7): Avoid a NULL pointer access when .Bd has no arguments.
627 * mdoc(7): Avoid a NULL pointer access triggered by mismatching end macros.
628 * mdoc(7): Avoid an assertion when .Fo has no argument.
629 * mdoc(7): Avoid an assertion when .Ta<tab> occurs in .Bl -column.
630 * mdoc(7): Avoid an assertion when a body gets broken and has a tail.
631 * roff(7): Avoid an assertion caused by blanks inside \o.
632 * roff(7): Make .so links to gziped manuals work without mandoc.db(5).
633 * tbl(7): Avoid a use after free when the last line of a layout is empty.
634 * eqn(7): Avoid an infinite loop caused by recursive "define".
636 * Fix handling of leading, trailing, and double colons in MANPATH and -m.
637 --- MINOR BUGFIXES ---
638 * mdoc(7): Put arguments to end macros of broken partial explicit blocks
640 * mdoc(7): Let .Dv force normal font.
641 * mdoc(7): Make trailing whitespace significant in .Bl -tag widths.
642 * mdoc(7): Fix macro interpretation around tabs in .Bl -column.
643 * man(7): Use the default width for .RS without arguments.
644 * man(7): On a new RS nesting level, the saved width starts from
646 * man(7): Allow .PD in next-line scope.
647 * man(7): Improve handling of empty .HP.
648 * man(7): Improve formatting of .br and .sp inside .HP.
649 * man(7): Do not mistreat empty arguments to font alternating
651 * man(7): Allow fill mode changes in tagged paragraph next-line scope.
652 * man(7): Fix minor bugs in block rewinding and simplify the related code.
653 * man(7): Add missing line breaks before subsection headers.
654 * man(7): Give section and subsection headers hanging indentation.
655 * man(7): Make trailing whitespace significant in .TP widths.
656 * roff(7): Don't allow breaking the output line after hyphens
658 * roff(7): Ignore blank characters at the beginning of conditional blocks.
659 * roff(7): Escape breakable hyphens only after handling input line traps.
660 * roff(7): Reject \[uD800] to \[uDFFF] (surrogates) in the parser.
661 * tbl(7): Allow more than one data field after T} on the same input line.
662 * terminal output: Apply bold and italic to non-ASCII Unicode codepoints.
664 * HTML output: Render ASCII_NBRSP as " ", not "-".
665 * man(1): Do not match the first part of a name if it continues with a dot.
666 * man(1): Keep working even if the current directory is unusable.
667 * man(1): Better error message when $PAGER is invalid.
669 * apropos(1): Print "nothing appropriate" to stderr when appropriate.
670 * apropos(1): Abort with a useful error message when elementary
672 --- STRUCTURAL CHANGES, no functional change ---
673 * mdoc(7) and man(7): Unified data structures struct roff_node etc.
674 * mdoc(7) and man(7): Unified node handling library in roff.c.
675 * mdoc(7) and man(7): Seperate validation phase from parsing.
676 * roff(7): Major character table cleanup.
677 * Link with libz rather than forking gunzip(1).
678 --- THANKS TO ---
679 * Baptiste Daroussin (FreeBSD) for the new soelim(1)
687 * Jonathan Gray (OpenBSD) for yet more testing with afl(1)
708 Daniel Levai, Fabian Raetz, Jan Stary, Jean-Yves Migeon,
719 --- MAJOR NEW FEATURES ---
720 * When a manual is missing from an outdated database, let man(1)
722 * Use this to always provide man(1), even without database support.
725 * New -Wunsupp message level.
726 --- POTENTIONALLY SECURITY RELEVANT BUGFIXES ---
728 http://mandoc.bsd.lv/cgi-bin/cvsweb/roff.c#rev1.241
730 http://mandoc.bsd.lv/cgi-bin/cvsweb/roff.c#rev1.247
732 http://mandoc.bsd.lv/cgi-bin/cvsweb/mdoc_macro.c#rev1.180
733 --- MAJOR FUNCTIONALLY RELEVANT BUGFIXES ---
734 * Let man(1) show manuals for the current architecture by default,
736 * Fix the man(1) and apropos(1) -m option, it didn't work at all.
740 --- PORTABILITY IMPROVEMENTS ---
743 * Support homebrew-style linking on Mac OS X.
744 --- MINOR NEW FEATURES ---
745 * lookup: Accept digit+letter and "n" as section names in man(1),
747 * lookup: Speed up -s/-S by using the "mlinks" rather than the "keys" table.
749 * input: New stricter and more resilient UTF-8 parser.
750 * mdoc(7): Refactor block rewinding for simpler and more robust parsing.
751 * man(7): Use the -Ios option when .TH has less than four arguments.
752 * tbl(7): Implement the "center" option.
753 * tbl(7): New option and format parsers, improved in many respects.
754 * roff(7): Basic implementation of the \o escape sequence (overstrike),
757 eqn(7), tbl(7), and wrong numbers of arguments in mdoc(7) and man(7),
759 * Delete the -V option. It serves no purpose but keeps confusing people.
761 --- RELIABILITY BUGFIXES ---
762 * tbl(7): Fix a read buffer overrun on 'f' at EOL in a layout.
763 * roff(7): Fix a read buffer overrun on incomplete numerical conditions.
764 * mdoc(7): Fix a NULL pointer access on .Nd followed by an explicit block.
765 * mdoc(7): Fix a NULL pointer access on .It Xo without .Xc.
766 * mdoc(7): Fix a NULL pointer access on .Eo without a tail.
767 * mdoc(7): Fix a NULL pointer access in the validation of empty .St macros.
768 * man(7)/tbl(7): Fix a NULL pointer access on .TS right after .TP.
769 * tbl(7): Fix a NULL pointer access on layout lines without any cells.
770 * eqn(7): Fix NULL pointer accesses in the terminal formatter.
771 * roff(7): Fix a NULL pointer access on trailing \s-/\s+ without an argument.
773 * roff(7): Don't let the modulo operator divide by zero.
774 * input: Fix an assertion failure on certain invalid UTF-8 input.
776 * mdoc(7): Fix assertion failures and endless loops on invalid block closing.
777 * mdoc(7): Fix an assertion failure on .Bl .Sm not followed by .It.
778 * mdoc(7): Fix an assertion failure on .Bl -column ... .El .Ta.
779 * tbl(7): Fix assertion failures by macros inside table data,
784 --- MINOR BUGFIXES ---
785 * mdoc(7): Fix parsing of badly nested blocks with multiple identical blocks.
786 * mdoc(7): Support negative indentations for displays and lists.
787 * mdoc(7): Don't mistreat negative .sp arguments as large positive ones.
788 * mdoc(7): Some spacing fixes for .Eo/.Ec.
789 * man(7): Support negative horizontal widths.
790 * man(7): Do not print out invalid .IP arguments.
791 * man(7): Correctly handle scaling units after .PD.
792 * man(7): Support .RE with an argument.
793 * man(7): Fix restoring indentation after .RS with large negative arguments.
794 * tbl(7): Prevent tables from breaking the filling of preceding text.
795 * tbl(7): Fix vertical spacing at the beginning of tables.
796 * tbl(7): Parser and formatter fixes for line drawing and font modifiers.
797 * tbl(7): Correct handling of blank data lines.
798 * eqn(7): Add sometimes missing whitespace before equation output.
799 * roff(7): Fix vertical scaling, most of it was wrong.
800 * roff(7): Slightly improve \w width measurements.
801 * roff(7): Accept the historic aliases \s10 to \s39 for \s(10 to \s(39.
802 * roff(7): Correctly escape quotes when expanding macro arguments.
803 * roff(7): Correctly handle scaling units in numerical expressions,
805 * roff(7): Three minor fixes with respect to evaluation of conditionals.
806 * roff(7): Let .it accept numerical expressions, not just constants.
807 * mandoc_char(7): Correct some character names and renderings.
808 * If earlier files set a non-zero exit status, never reset it to zero.
809 --- THANKS TO ---
812 * Theo de Raadt (OpenBSD) for suggesting the main new feature (man(1) file
814 * Theo Buehler for an important bug report (-s/-S slowness)
819 important bug reports (architecture and man -m, respectively).
820 * Thomas Klausner (NetBSD) for proposing a new feature (man(7) -Ios),
834 --- MAJOR NEW FEATURES ---
835 * Include an implementation of man(1), the manual page viewer.
837 command names, including new options -a (format all), -c (no
838 pager), -h (synopsis only), and -w (list filenames).
841 * Support UTF-8 and Latin-1 input by the whole toolset, delete preconv(1).
842 * Switch the default output mode from -Tascii to -Tlocale.
843 * Improve -Tascii output for Unicode escape sequences.
844 * Let the -Thtml output mode produce polyglot HTML5.
845 * Many improvements for eqn(7), in particular in-line equations,
846 MathML output in -Thtml mode, and much improved terminal formatting.
847 --- PORTABILITY IMPROVEMENTS ---
853 --- MINOR NEW FEATURES ---
854 * Rudimentary implementation of the e, x, and z tbl(7) layout
856 * Implement font modifiers in tbl(7) layouts.
857 * Allow comma-separated options in the tbl(7) options line.
858 * Parse and ignore the .pl (page length) roff(7) request.
859 * Implement .An -[no]split for the mdoc(7) -Thtml output mode.
864 * Warn about attempts to call non-callable macros.
866 --- BUGFIXES ---
877 * Fix a division by zero in the roff(7) parser.
880 * Multiple fixes with respect to .Bd and .Bl -offset and -width.
882 * Multiple fixes with respect to delimiter handling by in-line macros.
884 * Make \c work properly in no-fill mode.
886 --- THANKS TO ---
887 * Kristaps Dzonsons for rewriting the eqn(7) parser, implementing
901 Changes in version 1.13.1, released on August 10, 2014
903 --- MAJOR NEW FEATURES ---
904 * A complete apropos(1)/makewhatis(8)/man.cgi(8) suite
906 * The roff(7) parser now provides an almost complete implementation
912 The mandoc(1) manual now includes a list explaining all messages.
913 --- MINOR NEW FEATURES ---
914 * The roff(7) parser now supports the .ami (append to macro with
915 indirectly specified name), .as (append to user-defined
918 * The roff(7) parser now supports string comparison and numerical
925 * The roff parser now supports expansion of user-defined strings
927 * The roff(7) parser now handles some pre-defined read-only
928 number registers that occur in the pod2man(1) preamble.
929 * For backward compatibility, the mdoc(7) parser and formatters
931 * The mdoc(7) formatter non partially supports .Bd -centered.
932 * tbl(7) now handles leading and trailing vertical lines.
935 * The mdoc(7) manual now explains how various standards
937 --- BUGFIXES ---
938 * In the roff(7) parser, several bugs were fixed with respect
940 * Parsing of roff(7) identifiers and escape sequences was improved
942 * In the mdoc(7) parser, the handling of defective document
944 * The mdoc(7) parser no longer skips content before the first section
945 header, and it no longer deletes non-.% content from .Rs blocks.
946 * In the mdoc(7) parser, a crash was fixed related to weird .Sh headers.
947 * In the mdoc(7) parser, handling of .Sm with missing or invalid
949 * In the mdoc(7) parser, trailing punctuation at the end of partial
950 implicit macros no longer triggers end-of-sentence spacing.
954 fixed that sometimes caused an off-by-one error in indentation.
955 * In the UTF-8 formatter, rendering of accents, breakable hyphens,
956 and non-breakable spaces was corrected.
959 * In the mdoc(7) formatter, rendering of .Ex and .Rv was
961 * In the mdoc(7) formatter, handling of empty .Bl -inset item
963 * In the man(7) formatter, some bugs were fixed with respect
964 to same-line detection in the context of .TP and .nf macros,
967 --- THANKS TO ---
970 Jason McIntyre (OpenBSD), Jeremie Courreges-Anglas (OpenBSD),
980 * In the mdoc(7) SYNOPSIS, line breaks and hanging indentation
983 * The mdoc(7) .Bk macro got some addititonal bugfixes.
984 * In mdoc(7) macro arguments, double quotes can now be quoted
985 by doubling them, just like in man(7).
987 * At the end of man(7) macro lines, end-of-sentence spacing
989 * For backward compatibility, the man(7) parser now supports the
990 man-ext .UR/.UE (uniform resource identifier) block macros.
991 * The man(7) parser now handles closing blocks that are not open
993 * The man(7) parser now ignores blank lines right after .SH and .SS.
994 * In the man(7) formatter, reset indentation when leaving a block,
996 * The roff(7) .nr request now supports incrementing and decrementing
998 first non-digit character.
999 * The roff(7) parser now supports the alternative escape sequence
1001 * The roff(7) parser now parses and ignores the .fam (font family)
1004 * The roff(7) manual got a new ESCAPE SEQUENCE REFERENCE.
1008 * The mdoc(7) to man(7) converter, to be called as mandoc -Tman,
1010 * The mandoc(1) utility now supports the -Ios (default operating system)
1011 input option, and the -Tutf8 output mode now actually works.
1015 * The man(7) parser now supports the PD macro (paragraph distance),
1016 and (for GNU man-ext compatibility only) EX (example block) and EE
1019 * The roff(7) parser now supports the \f(BI (bold+italic) font escape,
1023 * In mdoc(7), several bugs were fixed related to UTF-8 output of quoting
1028 blocks, and non-text children of Nm blocks.
1029 * In tbl(7), the width of horizontal spans and the vertical spacing
1030 around tables was corrected, and in man(7) files, a crash was fixed
1033 gmdiff, a very small, very simplistic groff-versus-mandoc output
1037 Changes in version 1.12.1, released on March 23, 2012
1039 * Significant work on apropos(1) and mandocdb(8). These tools are now
1040 much more robust. A whatis(1) implementation is now handled as an
1041 apropos(1) mode. These tools are also able to minimally handle
1042 pre-formatted pages, that is, those already formatted by another
1044 * The man.cgi(7) script is also now available for wider testing.
1046 HTML output is generated on-the-fly by libmandoc or internal
1047 methods to convert pre-formatted pages.
1054 * This version features a new, work-in-progress mandoc(1) output mode:
1055 -Tman. This mode allows a system maintainer to distribute man(7)
1056 media for older systems that may not natively support mdoc(7), such
1058 * The -Ofragment option was added to mandoc(1)'s -Thtml and -Txhtml modes.
1059 * While adding features, an apropos(1) utility has been merged from the
1060 mandoc-tools sandbox. This interfaces with mandocdb(8) for semantic
1061 search of manual content. apropos(1) is different from the traditional
1065 * In documentation news, the mdoc(7) and man(7) manuals have been
1067 moving the gory details of the LANGUAGE SYNTAX to the roff(7) manual,
1070 * Furthermore, for tbl(7), the -Tascii mode horizontal spacing of tables
1071 was rewritten completely. It is now compatible with groff(1), both
1073 * Nesting of indented blocks is now supported in man(7), and several
1075 * The page headers in mdoc(7) are now nicer for very long titles.
1077 Changes in version 1.11.7, released on September 2, 2011
1079 * Added demandoc(1) utility for stripping away macros and escapes.
1080 This replaces the historical deroff(1) utility.
1081 * Also improved the mdoc(7) and man(7) manuals.
1085 * Handling of tr macro in roff(7) implemented. This makes Perl
1087 man(7) format documents. Many other general improvements have been
1092 * Significant eqn(7) improvements. mdocml can now parse arbitrary eqn
1094 low-level roff with eqn). See the eqn(7) manual for details.
1095 For the time being, equations are rendered as simple in-line text.
1102 * Bug-fixes and clean-ups across all systems, especially in mandocdb(8)
1103 and the man(7) parser. This release was significantly assisted by
1108 * Introduce locale-encoding of output with the -Tlocale output option and
1109 Unicode escaped-character input. See mandoc(1) and mandoc_char(7),
1110 respectively, for details. This allows for non-ASCII characters (e.g.,
1112 supports wide-character encoding (if it does not, -Tascii is used
1114 -DUSE_WCHAR in the Makefile, in which case -Tlocale is always a synonym
1115 for -Tascii.
1116 * Furthermore, multibyte-encoded documents, such as those in UTF-8, may
1117 be on-the-fly recoded into mandoc(1) input by using the newly-added
1118 preconv(1) utility. Note: in the future, this feature may be
1119 integrated into mandoc(1).
1123 * Corrected some installation issues in version 1.11.1.
1129 Changes in version 1.11.1, released on April 4, 2011
1133 real manuals, from line-handling to tbl(7) parsing.
1141 * Initial eqn(7) functionality is in place. For the time being,
1145 Changes in version 1.10.9, released on January 7, 2011
1147 * Many back-end fixes have been implemented: argument handling (quoting),
1148 man(7) improvements, error/warning classes, and many more.
1149 * Initial tbl(7) functionality (see the "TS", "TE", and "T&" macros in
1150 the roff(7) manual) has been merged from tbl.bsd.lv. Output is still
1151 minimal, especially for -Thtml and -Txhtml, but manages to at least
1152 display data. This means that mandoc(1) now has built-in support
1153 for two troff preprocessors via libroff: soelim(1) and tbl(1).
1157 * Overhauled the -Thtml and -Txhtml output modes. They now display
1158 readable output in arbitrary browsers, including text-based ones like
1159 lynx(1). See HTML and XHTML manuals in the DOCUMENTATION section
1160 for examples. Attention: available style-sheet classes have been
1164 * see also the changes in 1.10.7
1166 Changes in version 1.10.7, December 6, 2010, NOT released
1169 * many new roff(7) components,
1170 * in-line implementation of troff's soelim(1),
1171 * broken-block handling,
1177 * Calling conventions for mandoc(1) have changed: -W improved and -f
1179 * Non-ASCII characters are also now uniformly discarded.
1183 * Lastly, pod2man(1) preambles are now fully accepted after some
1184 considerable roff(7) and special character support.
1188 * Primarily a bug-fix and polish release, but including -Tpdf support
1189 in mandoc(1) by way of "Summer of Code". Highlights:
1191 * fix end-of-sentence handling for embedded sentences
1192 * polish man(7) documentation
1193 * document all mdoc(7) macros
1194 * polish mandoc(1) -Tps output
1195 * lots of internal clean-ups in character escapes
1196 * un-break literal contexts in man(7) documents
1197 * improve -Thtml output for -man
1198 * add mandoc(1) -Tpdf support
1204 * minimal "ds" roff(7) symbols are supported
1206 * acceptance of scope-block breakage in mdoc(7)
1208 * many minor bug-fixes and formatting issues resolved
1213 * variable font-width and paper-size support in mandoc(1) -Tps output
1214 * "Bk" mdoc(7) support
1218 * Small release featuring text-decoration in -Tps output,
1221 Changes in version 1.10.1, released on June 7, 2010
1224 mdoc(7). Multi-line column support is now fully compatible with groff,
1226 * Removed manuals(7) in favour of http://manpages.bsd.lv.
1230 * Furthermore, the -Owidth=width output option has been added to -Tascii,
1231 see mandoc(1).
1232 * Lastly, initial PostScript output has been added with the -Tps option
1233 to mandoc(1). It's brutally simple at the moment: fixed-font, with no
1238 * Release consisting of the results from the m2k10 hackathon and up-merge
1244 roff(7) instructions;
1245 * end-of-sentence (EOS) detection in free-form and macro lines;
1246 * correct handling of tab-separated columnar lists in mdoc(7);
1249 * cleaned up exiting when invoked as -Tlint or over multiple files
1250 with -fign-errors;
1251 * error and warning message handling re-written to be unified for
1253 * handling of badly-nested explicit-scoped macros;
1254 * improved free-form text parsing in libman and libmdoc;
1255 * significant GNU troff compatibility improvements in -Tascii,
1259 * support for -Tascii breaking at hyphens encountered in free-form text;
1265 * Backed out -fno-ign-chars (pointless complexity).
1267 * Fixed SYNOPSIS breaking lines before non-initial macros.
1269 * Most importantly, the framework for end-of-sentence double-spacing is
1270 in place, now implemented for the "end-of-sentence, end-of-line" rule.
1271 * This is a stable roll-back point before the mandoc hackathon in Rostock!
1275 * Rolled back break-at-hyphen.
1276 * -DUGLY is now the default (no feature splits!).
1277 * Free-form text is not de-chunked any more: lines are passed
1278 whole-sale into the front-end, including whitespace.
1281 Changes in version 1.9.23, released on April 7, 2010
1286 of erroring-out.
1289 * Lastly, some issues with -Thtml have been fixed, which prompted an
1296 for non-columnar lists) to work properly. This isn't
1297 enabled by default: you must specify -DUGLY as a compiler
1302 * More efforts to get roff instructions in man(7) documents under
1303 control. Note that roff instructions embedded in line-scoped,
1304 next-line macros (e.g. "B") are not supported.
1305 * Leading punctuation for mdoc(7) macros, such as "Fl ( ( a",
1311 and improvements (e.g., handling of apostrophe-control macros,
1313 to handling roff instructions in man(7) documents.
1317 * Accept perlpod(1) standard preamble.
1324 allowed man(7) to accept non-printing elements to be nested
1325 within next-line scopes, such as "br" within "B" or "TH",
1332 * XHTML is now an acceptable output mode for mandoc(1);
1336 * end-of-line white-space detected for all lines;