| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
top-level DIV is used with only an H1 or H2 as the section header. This
makes manuals much more readable in lynx, less complicated, and
relegates left-margin widths to example.style.css.
|
| |
|
|
|
|
|
| |
printing as the first or last child of an `Ss' or `Sh': this is now
ensured within the validator.
|
|
|
|
|
|
|
| |
paragraph breaking in CSS).
Use -man's handling of `sp' and `br', which accomodates for scaling
widths (-mdoc wasn't).
|
|
|
|
| |
have to do this manually).
|
|
|
|
| |
Make `Dl' and `D1' both use BLOCKQUOTE instead of DIVs.
|
|
|
|
|
|
|
|
| |
be handled in CSS.
Clarified "lit" tag (will be the subject of future clarification).
Removed CSS2 note in mandoc.1, which is no longer the case.
|
| |
|
|
|
|
|
| |
OL, and UL. Issue raised by Will Backman, solution proposed by
schwarze@.
|
|
|
|
|
|
|
| |
making sure output doesn't add a superfluous newline with the nested displays.
Also add a COMPATIBILITY note.
Rename a macro (DATESIZ) to be in line with OpenBSD (DATESIZE).
|
|
|
|
|
|
|
|
| |
Clarify that `Mt' gets a default `~' (as per groff 1.20) and document it
in mdoc.7.
Made `Lk' be removed in mdoc_macro.c if it has no arguments. This fixes
segfaults in mdoc_{term,html}.c that nobody's managed to raise yet.
|
|
|
|
| |
from Ulrich Spoerlein <uqs at spoerlein dot net>
|
| |
|
|
|
|
|
|
|
| |
* 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@
|
| |
|
|
|
|
| |
macros within an unfilled or literal `Bd'.
|
| |
|
|
|
|
|
| |
This from a TODO entry. Also stripped the superfluous NOSPACE, which is
handled in term_word() or print_text() anyway.
|
|
|
|
|
|
| |
corresponding TODO entry.
Also have the "." after an `Rs' block trigger inter-sentence spacing.
|
| |
|
|
|
|
|
|
|
| |
separated by only "and" while two or more are with ", and" for the last
author.
Also remove relevant TODO and add regression tests.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
preserve blank lines at the end of .Bd -literal
patch from kristaps@, who asked me to commit this
|
|
|
|
|
| |
displays to work as old groff shows them; however, new groff still does
some fancy shit.
|
| |
|
|
|
|
|
|
| |
be converted into a symbol.
The `Pp' issue has also been fixed.
|
|
|
|
| |
`Sh'/`Ss'. Reported by Jason McIntyre.
|
|
|
|
| |
ok kristaps@
|
|
|
|
|
|
|
|
|
| |
roff_getstr() family of functions into roff.c with the "first_string"
directly in struct roff. Second, pre-process each line for reserved
words in libroff, splicing and re-running a line if it has one (this
allows defined symbols to be macros). Remove term.c's invocation of the
roff_getstrn() function. Removed function documentation in roff.3 and
added roff.7 `ds' documentation.
|
| |
|
|
|
|
| |
the loops here and there to track down the MDOC_Column arguments.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
copying on internals after modification. Even more importantly, if an
ENDBODY token is provided, it would have been impossible for post-change
copying of the data to take place in the BLOCK. This allows it to
happen by dint of pointers.
Also did some bikeshedding in mdoc_term.c: checking against enum type
and explicitly casting to the "post" function to void. This is for my
own readability.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the Rostock mandoc hackathon and tested and polished since,
supporting constructs like:
.Ao Bo Ac Bc (exp breaking exp)
.Aq Bo eol Bc (imp breaking exp)
.Ao Bq Ac eol (exp breaking imp)
.Ao Bo So Bc Ac Sc (double break, inner before outer)
.Ao Bo So Ac Bc Sc (double break, outer before inner)
.Ao Bo Ac So Bc Sc (broken breaker)
.Ao Bo So Bc Do Ac Sc Dc (broken double breaker)
There are still two known issues which are tricky:
1) Breaking two identical explicit blocks (Ao Bo Bo Ac or Aq Bo Bo eol)
fails outright, triggering a bogus syntax error.
2) Breaking a block by two identical explicit blocks (Ao Ao Bo Ac Ac Bc
or Ao Ao Bq Ac Ac eol) still has a minor rendering error left:
"<ao1 <ao2 [bo ac2> ac1> bc]>" should not have the final ">".
We can fix these later in the tree, let's not grow this diff too large.
"get it in" kristaps@
|
|
|
|
|
|
|
|
|
| |
passed in to libmdoc and libman.
Fix mdoc.3 and man.3 EXAMPLE sections to include regset.
Add MDOC_SYNPRETTY flag cueing front-end to nicely format certain values
as if SEC_SYNOPSIS were the current section.
|
|
|
|
| |
const struct regset pointer. No functionality.
|
| |
|
| |
|
|
|
|
|
| |
to 6n if no value is specified" and added regression tests for `Bl'
testing against the empty -offset argument.
|
|
|
|
| |
scanning the argv list in print_bvspace(), and thus the parent pointer.
|
|
|
|
| |
cached values. You can probably guess where this is going.
|
|
|
|
|
|
| |
the "data" union in mdoc_node. Allows me to remove some ugly loops in
the front-end and duplicate tests in mdoc_action.c. Add a regression
test to make sure we're not doing anything bad (more to come).
|
|
|
|
|
|
|
|
|
|
|
| |
only calculated once in mdoc_validate.c.
Noted that `Bd -file xxx' is not supported: it now raises a fatal
warning. This is noted in mdoc.7.
Empty `Bd' now defaults to LIST_ragged, which is not quite what groff
does, but close enough (gross just throws away the `Bd' and gets upset
when it encounters an `Ed').
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
inconsistent behaviour. In short:
Some macros are displayed differently in the SYNOPSIS
section, particularly Nm, Cd, Fd, Fn, Fo, In, Vt, and Ft.
All of these macros are output on their own line. If two
such dissimilar macros are pair-wise invoked (except for Ft
before Fo or Fn), they are separated by a vertical space,
unless in the case of Fo, Fn, and Ft, which are always
separated by vertical space.
Behaviour ok Jason McIntyre, ingo@. Fallout will be treated
case-by-case.
I had to clear out some regressions that were testing against groff's
stranger behaviours: these will now break, as we don't care about such
invocations.
Also removed the newline for `Cd' invocation in a non-SYNOPSIS context.
|
| |
|
|
|
|
| |
`Fn'.
|
|
|
|
|
|
|
| |
extent.
Documented `Fn'. Please note the COMPATIBILITY note regarding historic
groff.
|
|
|
|
|
|
| |
Fixed `In' to behave properly: it wasn't properly breaking lines,
formatting, or really anything else. Noted COMPATIBILITY with
OpenBSD's groff, which pukes all over `In'.
|