Age | Commit message (Collapse) | Author |
|
and provide more useful tbl error messages in a non-intrusive way.
|
|
Very similar to what i have done in man(7) yesterday.
Allows to build cpu(4) on HPPA, wi(4), and phantasia(6).
Now we are able to build all tbl code in base.
|
|
This finally allows terminfo(5) to build.
Now we can build all man(7)-tbl(1) in base without loss of information,
though some still look ugly.
|
|
First step to get terminfo(5) to build.
|
|
This doesn't give us nice column widths yet with spanned headings, but
it helps mkhybrid(8) to survive the build and produce complete output.
"move forward" deraadt@
|
|
calculation routines. This gives us mostly sane table column widths.
"move forward" deraadt@
|
|
This fixes (1) all escape sequences and (2) some aspects of indentation.
Table column widths are still way off, though.
"move forward" deraadt@
|
|
The output dosn't look nice yet, escape handling is still missing,
but will follow soon.
"move forward aggressively :-)" deraadt@
|
|
Unchanged code from bsd.lv release 0.1.5, but without the main program.
Not yet linked to the build; next commit will integrate it into mandoc.
|
|
* make the initial maxvis/mmax calculation easier to understand
* where real, non-indexing casts happen, make them explicit
* avoid a few lint warnings that can easily be fixed
* remove one needless LINTED comment
"I like this" kristaps@
|
|
* slightly simplify .Pf *_IGNDELIM code, and share part of it with .No
* do not let opening delimiters fall out of the front of .Ns (from kristaps@)
This fixes a few spacing issues in csh(1) and ksh(1).
OK kristaps@
|
|
* ignore double-.Pp
* ignore .Pp before .Bd and .Bl (unless -compact in specified)
* avoid double blank line upon .Pp, .br and friends in literal context
* cast enums to int when passing them to exit(3) to please lint(1)
While merging, fix a regression introduced by kristaps@:
Outside literal mode, double blank lines must both be printed.
To achieve this again after kristaps@ improvements in 1.10.6,
treat such blank lines as .sp (instead of .Pp as in 1.10.5)
and drop .Pp before .sp just like dropping .Pp before .Pp.
|
|
|
|
report an ERROR: We can still render the page by just closing
the open scope, but it is likely that information will be missing
or document structure mangled.
Before, man(7) only reported a WARNING (which is dangerous because
we cannot be sure rendering is correct) and mdoc(7) ran into FATAL
(which is too drastic, there is no reason not to show what we have).
While here, add a few explicit casts to appease lint.
"looks good" kristaps@
|
|
do not talk about \s, it is ignored anyway
do not .Xr groff(1) any longer, just talk about GNU troff
because in the long run, groff may not even be installed
|
|
to help code comprehension and reduce code size
also remove redundant TERMP_NOSPACE here and there
from kristaps@
|
|
in .Rs, mark full stops after .%* as end of a sentence
from kristaps@
|
|
|
|
than the column containing it, the TERMP_HANG flag is required,
but avoid the flag when we know that the HEAD is shorter,
because in that case, the flag might ruin the alignment.
Problem originally reported by jmc@, who also spotted a regression
in an earlier version of this patch.
"feel free to commit" kristaps@
|
|
those ruined the alignment of columns.
Tested by jmc@, and kristaps@ agrees with the direction.
|
|
their actual lengths. Will improve vertical alignment in some
uncommon situations, for example when escape sequences occur in
list or column width strings or in .Nm block arguments in the SYNOPSIS.
From kristaps@.
|
|
from kristaps@
|
|
Two authors with "and", but without a comma.
Three or more with commata, and an "and" before the last one.
From kristaps@.
|
|
From kristaps@
|
|
ignore embedded escapes and mathematical roff subexpressions.
In roff copy mode, resolve "\\" to '\'.
Allow ".xx\}" where xx is a macro to close roff conditional scope.
Mandoc now handles the special character definitions in the pod2man(1)
preamble, so remove the explicit redefinitions in chars.c/chars.in.
From kristaps@.
I have checked that this causes no relevant change to the Perl manuals.
The only change introduced is that some non-ASCII characters rendered
incorrectly before are now rendered incorrectly in a different way.
For example, e accent aigu was "e", now is "e'"
and c cedille was "c", now is "c,".
|
|
Fix for .Pp from kristaps@, i applied the same to .Lp.
Bug reported by espie@.
|
|
ok schwarze@ and kristaps
|
|
sys/types.h is the file you want to include.
|
|
As Kristaps found out, i was wrong: .Bl -column phrases do not ignore
spacing rules for trailing punctuation in general. In particular,
- the rightmost column of a column list is unaffected
- columns terminated by the .Ta macro instead of a tab are unaffected
- columns ending in a blank are unaffected
Spacing rules for trailing punctuation are only ignored when the tab
follows the punctuation immediately, without a blank in between,
because then the combination of punctuation and tab is treated by roff
as a word, and the punctuation is not recognized as isolated.
The reason this doesn't work in mandoc is that in the special case
of .Bl -column (not in general!), mandoc treats tabs as word delimiters.
We either need to solve this differently, or call it a bug in roff.
|
|
making the code simpler and easier to understand.
No functional change.
|
|
to the start of the next column correctly.
Fixing a problem found by jmc@ in sysctl(3), reminded by kettenis@.
|
|
and render it just like normal text.
Minimal fix of a formatting bug in operator(7) reported by ray@.
|
|
skip output functions, but not *_endparse;
problem reported by kristaps@
|
|
We now have sufficient practical experience to know what we want,
so this is intended to be final:
- provide -Wlevel (warning, error or fatal) to select what you care about
- provide -Wstop to stop after parsing a file with warnings you care about
- provide consistent exit status codes for those warnings you care about
- fully document what warnings, errors and fatal errors mean
- remove all other cruft from the user interface, less is more:
- remove all -f knobs along with the whole -f option
- remove the old -Werror because calling warnings "fatal" is silly
- always finish parsing each file, unless fatal errors prevent that
This commit also includes a couple of related simplifications behind
the scenes regarding error handling.
Feedback and OK kristaps@; Joerg Sonnenberger (NetBSD) and
Sascha Wildner (DragonFly BSD) agree with the general direction.
|
|
It is always defined in the preamble using .ds when used in manuals.
Since we now support .ds, it is no longer necessary to provide it.
Triggered by a bug report from Thomas Jeunet, patch by kristaps@.
|
|
just in the same way as \s (font size) escapes, and handle \s escapes
not having an explicit plus or minus sign.
This fixes the very ugly rendering of "C++" in gcc(1).
Reported by Thomas Jeunet, fixed by kristaps@.
|
|
Issue reported by Aldis Berzoja, fix by kristaps@.
|
|
from kristaps@.
|
|
Don't use MAX, it doesn't exist in the default namespace on Solaris.
From Joerg Sonnenberger, with a critical fix by kristaps@.
|
|
in man_pmacro() and mdoc_pmacro(). In particular, no need to use
isgraph(3) here, that has already been done in main.c.
Joint work by Kristaps and myself, ok kristaps@.
|
|
because isgraph(3) returns true for some eight-bit characters.
ok kristaps@
|
|
of by a tab; so allow the tab in mandoc, too.
Bug found by me, fix by kristaps@, "sure" deraadt@.
|
|
Patch from kristaps@, analoguous to mdoc_term.c rev. 1.100.
With permission from deraadt@ to still fix bugs in mandoc.
|
|
input line, not after the first element. Since free-form text lines
only have a single element in literal mode, this is only relevant for
macro lines inside literal displays, and only for those containing
more than one macro. Fixes e.g. awk(1) and boot_config(8).
Note this fix differs from what kristaps@ committed to bsd.lv because
those changes introduce regressions with respect to blank lines in
literal mode.
With permission from deraadt@ to still fix bugs in mandoc.
|
|
which had much less information, such that the new one gets installed.
No change to the build system required, no text change in this commit.
Doing the big move early even though a few more improvements will follow.
The duplicate information in mdoc.samples(7) will be cleaned up post-release.
ok jmc@, and kristaps@ agreed with the plan, too
|
|
State that we parse and ignore \s and \m font size and colour control
sequences, and remove the detailed, irrelevant documentation.
|
|
* add missing years (only where substantial changes were committed)
* update Kristaps' email address in the remaining places
No code changes.
|
|
* rewrite .An, .Bd, .Bk, .Bl, .Ex descriptions
* correct "parsable" to "parsed"
* and various formatting and wording tweaks
This commit includes a patch from kristaps@ explaining empty .Dd.
Feedback and OK jmc@ and kristaps@.
|
|
NOT including Kristaps' .Bd -literal changes which cause regressions.
Features:
* -Tpdf now fully working
Bugfixes:
* proper handling of quoted strings by .ds in roff(7)
* allow empty .Dd
* make .Sm start no-spacing after the first output word
* underline .Ad
* minor fixes in -Thtml
and some optimisations in terminal output.
|
|
new features:
* support the .in macro in man(7)
* support minimal PDF output
* support .Sm in mdoc(7) HTML output
* support .Vb and .nf in man(7) HTML output
* complete the mdoc(7) manual
bug fixes:
* do not let mdoc(7) .Pp produce a newline before/after .Sh; reported by jmc@
* avoid double blank lines related to man(7) .sp and .br
* let man(7) .nf and .fi flush the line; reported by jsg@ and naddy@
* let "\ " produce a non-breaking space; reported by deraadt@
* discard \m colour escape sequences; reported by J.C. Roberts
* map undefined 1-character-escapes to the literal character itself
maintenance:
* express mdoc(7) arguments in terms of an enum for additional type-safety
* simplify mandoc_special() and a2roffdeco()
* use strcspn in term_word() in place of a manual loop
* minor optimisations in the -Tps and -Thtml formatting frontends
|