Age | Commit message (Collapse) | Author |
|
- add openbsd rcsid
- new sentence, new line
- > -> \*(Gt
ok schwarze
diff sent to kristaps; this commit includes a tweak from kristaps to
keep the page up to date
|
|
avoid the bad parts of 1.9.23, and keep local patches.
Input in general:
* Basic handling of roff-style font escapes \f, \F.
* Quoted punctuation does not count as punctuation.
mdoc(7) parser:
* Make .Pf callable; noted by Claus Assmann.
* Let .Bd and .Bl ignore unknown arguments; noted by deraadt@.
* Do not warn when .Er is used outside certain sections.
* Replace mdoc_node_free[list] by mdoc_node_delete.
* Replace #define by enum for rew*() return values.
man(7) parser:
* When .TH is missing, use default section and date.
Output in general:
* Curly braces do not count as punctuation.
* No space after .Fl w/o args when a macro follows on the same line.
HTML output:
* Unify PAIR_*_INIT macros, introduce new PAIR_ID_INIT().
* Print whitespace after, not before .Vt .Fn .Ft .Fo.
Checked that all manuals in base still build.
|
|
but warn, set up some default values, and prod on.
Unbreaking the ports build for textproc/sgmlformat;
reported by naddy@, thanks.
|
|
Fixing the x11/scrotwm build.
Problem reported by naddy@, thanks.
|
|
The mandoc_char(7) manual is supposed to document standard characters
for man(7) and mdoc(7), and these are not standard in any sense.
So move the documentation to an implementation-specific manual.
noticed by kristaps@ and merged in 1.9.22
ok jmc@ who also noticed that \*(TH broke the nroff -Tps build
|
|
Diff from Tim van der Molen <tbvdm at xs4all dot nl>, thanks!
ok kristaps@
|
|
ok deraadt@
|
|
ok deraadt@
|
|
use the first, discard the second, and warn. No need to bail out.
ok deraadt@
|
|
* a missing NAME section in mdoc(7) need not be fatal
ok deraadt@
|
|
* convert mdoc tokens from #define to enum
* fix a segfault with .Xo/.Xc in explicit blocks
* Thorn is \*(Th, not \*(TH; noticed by Joerg Sonnenberger
|
|
We must investigate the fallout before enabling this.
|
|
* prevent roff instructions in man(7) from clobbering scopes and line modes
(noted by Sascha Wildner)
* handle leading punctuation in mdoc(7) blocks and line macros
(looks good in principle, but is causing some fallout in OpenBSD,
so i will disable it locally for now with the next commit)
|
|
* scoping fixes for roff instructions
* accept apostroph in place of dot as a macro control character
* accept tabs between the control character and the macro name
* check that man(7) .TH titles use capital letters
|
|
* much improved pod2man support and low-level roff robustness
* have -Tlint imply -Wall and -fstrict
* use fewer macros and more enum in libman
* and various bug fixes
|
|
This is mostly cleanup by kristaps@ after my rather hackish patch
to tolerate the non-text macros .na, .sp, .br in next-line scope;
plus some nesting issues fixed by him, all in man(7).
This survived a full cd /usr/src; make man.
|
|
revision, in the code searching for the end of a sentence
|
|
when there actually IS a hyphen.
Fixing an endless loop that broke the xenocara build.
|
|
length, rather ignore the right margin than entering an endless loop.
Found the hard way in /usr/xenocara/app/fvwm/modules/FvwmM4/FvwmM4.1.
|
|
if and only if something was printed on that line.
This avoids double line breaks after nested lists
while still breaking lines after items with empty body.
|
|
Making pages look better and helping comparisons with groff output.
Note that proper hyphenation is postponed for now because it doesn't
really help the switch.
|
|
and do not emulate groff's habit of printing garbage either,
but just print the wanted information even though the format
must be sacrificed because it won't fit.
|
|
and effectively unlimit the width of literal displays.
Following this traditional behaviour allows for automatic output
comparisons.
|
|
and .Vb/.Ve (similar to .nf/.fi) in man(7) mode.
These are not intended to be used manually, but they allow us to
properly render man(7) code autogenerated by pod2man(1),
making Perl and OpenSSL happy in our tree.
|
|
When a text line or a non-block macro line in the source code ends
in any of ".!?", consider that an end of sentence (EOS).
This makes Jason's rule "new sentence, new line" even more important.
Let the parser detect the EOS and insert a token into the AST.
Let the -Tascii frontend render the EOS token as a double space before
the next word.
|
|
macros after closing delimiters only, not after opening ones. Besides,
neither roff nor old nor new groff consider braces { } as delimiters.
This fixes some frequent misrenderings by mandoc,
for example ".Ql (" being rendered as "`'(" instead of "`('".
|
|
This commit corresponds to what jmc@ did in share/tmac/mdoc/doc-common
and share/man/man7/mdoc.samples.7 on January 24.
|
|
used as a label, not "the first line following", so allow (some kinds of)
intervening macros - some people actually put macros in between.
On the other hand, when there is no text line before the next block macro,
that is, when the .TP block ends without any text line, then something *is*
broken, so still error out in that case.
|
|
The trick is to not switch from the .It header to the body at EOL, but,
in case an explicit block macro follows, at the end of the block.
|
|
* corrected .Vt handling (spotted by Joerg Sonnenberger)
* corrected .Xr argument handling (based on my patch)
* removed \\ escape sequence (because it is for low-level roff only)
* warn about trailing whitespace (suggested by jmc@)
* -Txhtml support
* and some general cleanup and doc improvements
|
|
man(7) and mdoc(7) special characters and predefined strings in general;
just as mandoc(1) is not intending to implement new languages,
but provide standard formatting for man(7) and mdoc(7) files,
whatever "standard" may mean in this context (sigh).
So move this to the right place.
noticed by deraadt@
|
|
characters and predefined strings.
In kristaps@'s words:
"Note that mandoc_char(7) is a superset of the latest groff_char(7)
(which defines most special characters), groff(7) (more special
characters, mostly formatting), and mdoc_samples(7) (predefined
strings and other nits). Thus, some of the characters that mandoc(1)
accepts are not accepted by the groff in OpenBSD base."
This is useful because you now have everything in one place, and
in a form authoritative for mandoc(1). At least as long as we still
have groff(1) in base, we must keep groff_char(7) as well, of course.
"sure" jmc@
|
|
* bugfix: do not restore TERMP flags when leaving lists, just reset them
* and a few HTML fixes
* clarity: return width from a2width, not width+2, and adapt to it
* manual: document .Bl and .Fl
* portability: no need to escape '%' in macro names
|
|
we need a space in between;
patch by kristaps@, rev. 1.103 and 1.104;
fixes regress/usr.bin/mandoc/mdoc/Fl/noarg.in.
|
|
The comment in the source code and OK by kristaps@;
merged upstream in rev. 1.55.
|
|
My original patch nicely improved by and OK kristaps@;
merged upstream as rev. 1.105, 1.106.
|
|
each should be rendered with its own dash.
Fixes regress/usr.bin/mandoc/mdoc/Fl/multiarg.in;
ok kristaps@ and merged upstream in rev. 1.39.
|
|
- new function a2roffdeco
- font modes (\f) only affect the current stack point
- implement scaling (\s)
- implement space suppression (\c)
- implement non-breaking space (\~) in -Tascii
- many manual improvements
|
|
correctness/functionality:
- bugfix: properly ignore lines with only a dot in -man
- bugfix: .Bl -ohang doesn't allow -width, warn about this
- improve date string handling by new function mandoc_a2time
- some HTML improvements
- significant documentation additions in man.7 and mdoc.7
portability:
- replace __dead by __attribute__((noreturn))
- bugfix: correct .Dx rendering
- some more library names for NetBSD
simplicity:
- replace hand-rolled putchar(3)-loops by fwrite(3)
- replace single-character printf(3) by putchar(3)
|
|
correctness/functionality:
- bugfix: do not die when overstep hits the right margin
- new option: -fign-escape
- and various HTML features
portability:
- replace bzero(3) by memset(3), which is ANSI C
- replace err(3)/warn(3) by perror(3)/exit(3), which is ANSI C
- iuse argv[0] instead of __progname
- add time.h to various files for FreeBSD compilation
simplicity:
- do not allocate header/footer data dynamically in *_term.c
- provide and use malloc frontends that error out on failure
for full changelogs, see http://bsd.lv/cgi-bin/cvsweb.cgi/
|
|
NetBSD portability fixes and some minor bugfixes and feature enhancements;
also checked that my hyphenation code still works on top of this
|
|
no functional change;
ok kristaps@ and merged as rev. 1.110
|
|
* -Thtml output mode
* roff scaling units
* and some minor fixes
for full changelogs, see http://bsd.lv/cgi-bin/cvsweb.cgi/
|
|
|
|
and use a static buffer for the footer
|
|
intricately mixed with three minor .Bd fixes
|
|
spotted by Ulrich Spoerlein, uqs at spoerlein dot net
|
|
and for a local variable in another function in the same compilation unit;
suggested by Ulrich Spoerlein, uqs at spoerlein dot net
|
|
|
|
|