#
252b7e4a |
| 14-Aug-2018 |
schwarze <schwarze@openbsd.org> |
support tail arguments on the .ME and .UE macros, used for example in the ditroff(7) manual of the groff package
|
#
df9a9479 |
| 25-Jun-2017 |
bentley <bentley@openbsd.org> |
Add support for the MT and ME mailto macros, used for example in wg(8).
feedback and ok schwarze@
|
#
318aa4c1 |
| 17-Jun-2017 |
schwarze <schwarze@openbsd.org> |
if .in is used inside the .TP head, it's always relative
|
#
ed5ade8a |
| 13-Jun-2017 |
schwarze <schwarze@openbsd.org> |
Partial support for the \n[an-margin] number register.
Manuals autogenerated from reStructuredText are reckless enough to peek at this non-portable, implementation-dependent, highly groff-specific i
Partial support for the \n[an-margin] number register.
Manuals autogenerated from reStructuredText are reckless enough to peek at this non-portable, implementation-dependent, highly groff-specific internal register - for no good reason, because the man(7) language natively provides in a much simpler way what they are trying to emulate here with much fragility.
A full implementation would be very hard because it would require access to output-device-specific formatting data at the roff(7) preprocessor stage, which mandoc doesn't support at all. So hardcode a few magic numbers as reStructuredText expects them for terminal output. For other output modes (like HTML), code using this register is utterly broken anyway.
show more ...
|
#
6561cb23 |
| 05-May-2017 |
schwarze <schwarze@openbsd.org> |
Move .sp to the roff modules. Enough infrastructure is in place now that this actually saves code: -70 LOC.
|
#
644b390b |
| 05-May-2017 |
schwarze <schwarze@openbsd.org> |
move .ll to the roff modules
|
#
c4d3fa85 |
| 05-May-2017 |
schwarze <schwarze@openbsd.org> |
Move handling of the roff(7) .ft request from the man(7) modules to the new roff(7) modules. As a side effect, mdoc(7) now handles .ft, too. Of course, do not use that.
|
#
29478532 |
| 04-May-2017 |
schwarze <schwarze@openbsd.org> |
Parser reorg: Generate the first node on the roff level: .br Fix some column numbers in diagnostic messages while here.
|
#
14a309e3 |
| 24-Apr-2017 |
schwarze <schwarze@openbsd.org> |
Continue parser unification: * Make enum rofft an internal interface as enum roff_tok in "roff.h". * Represent mdoc and man macros in enum roff_tok. * Make TOKEN_NONE a proper enum value and use it t
Continue parser unification: * Make enum rofft an internal interface as enum roff_tok in "roff.h". * Represent mdoc and man macros in enum roff_tok. * Make TOKEN_NONE a proper enum value and use it throughout. * Put the prologue macros first in the macro tables. * Unify mdoc_macroname[] and man_macroname[] into roff_name[].
show more ...
|
#
c4b0939c |
| 10-Jan-2017 |
schwarze <schwarze@openbsd.org> |
unify names of AST node flags; no change of cpp output
|
#
30e5ee06 |
| 08-Jan-2016 |
schwarze <schwarze@openbsd.org> |
Delete the redundant "nchild" member of struct roff_node, replacing most uses by one, a few by two pointer checks, and only one by a tiny loop - not only making data smaller, but code shorter as well
Delete the redundant "nchild" member of struct roff_node, replacing most uses by one, a few by two pointer checks, and only one by a tiny loop - not only making data smaller, but code shorter as well.
This gets rid of an implicit invariant that confused both static analysis tools and human auditors. No functional change.
show more ...
|
#
b3cd4c9a |
| 22-Oct-2015 |
schwarze <schwarze@openbsd.org> |
move man(7) validation into the dedicated validation phase, too
|
#
526e306b |
| 06-Oct-2015 |
schwarze <schwarze@openbsd.org> |
modernize style: "return" is not a function; ok cmp(1)
|
#
0639f12a |
| 26-Sep-2015 |
schwarze <schwarze@openbsd.org> |
/* NOTREACHED */ after abort() is silly, delete it
|
#
9d496861 |
| 04-Sep-2015 |
schwarze <schwarze@openbsd.org> |
Fill mode changes don't break next-line scope in all cases, in particular not for tagged paragraphs. Issue found by Christian Neukirchen <chneukirchen at gmail dot com> in the exiv2(1) manual page.
|
#
e0c8c906 |
| 23-Apr-2015 |
schwarze <schwarze@openbsd.org> |
Get rid of two empty wrapper functions. No functional change.
|
#
e32c44d4 |
| 19-Apr-2015 |
schwarze <schwarze@openbsd.org> |
Unify trickier node handling functions. * man_elem_alloc() -> roff_elem_alloc() * man_block_alloc() -> roff_block_alloc() The functions mdoc_elem_alloc() and mdoc_block_alloc() remain for now because
Unify trickier node handling functions. * man_elem_alloc() -> roff_elem_alloc() * man_block_alloc() -> roff_block_alloc() The functions mdoc_elem_alloc() and mdoc_block_alloc() remain for now because they need to do mdoc(7)-specific argument processing.
show more ...
|
#
69c34eaa |
| 19-Apr-2015 |
schwarze <schwarze@openbsd.org> |
Unify some node handling functions that use TOKEN_NONE. * mdoc_word_alloc(), man_word_alloc() -> roff_word_alloc() * mdoc_word_append(), man_word_append() -> roff_word_append() * mdoc_addspan(), man_
Unify some node handling functions that use TOKEN_NONE. * mdoc_word_alloc(), man_word_alloc() -> roff_word_alloc() * mdoc_word_append(), man_word_append() -> roff_word_append() * mdoc_addspan(), man_addspan() -> roff_addtbl() * mdoc_addeqn(), man_addeqn() -> roff_addeqn() Minus 50 lines of code, no functional change.
show more ...
|
#
fa2127f9 |
| 19-Apr-2015 |
schwarze <schwarze@openbsd.org> |
Unify node handling functions: * node_alloc() for mdoc and man_node_alloc() -> roff_node_alloc() * node_append() for mdoc and man_node_append() -> roff_node_append() * mdoc_head_alloc() and man_head_
Unify node handling functions: * node_alloc() for mdoc and man_node_alloc() -> roff_node_alloc() * node_append() for mdoc and man_node_append() -> roff_node_append() * mdoc_head_alloc() and man_head_alloc() -> roff_head_alloc() * mdoc_body_alloc() and man_body_alloc() -> roff_body_alloc() * mdoc_node_unlink() and man_node_unlink() -> roff_node_unlink() * mdoc_node_free() and man_node_free() -> roff_node_free() * mdoc_node_delete() and man_node_delete() -> roff_node_delete() Minus 130 lines of code, no functional change.
show more ...
|
#
ede1b9d0 |
| 18-Apr-2015 |
schwarze <schwarze@openbsd.org> |
Replace the structs mdoc and man by a unified struct roff_man. Almost completely mechanical, no functional change. Written on the train from Exeter to London returning from p2k15.
|
#
6f5bf183 |
| 03-Apr-2015 |
schwarze <schwarze@openbsd.org> |
Vastly simplify man(7) block unwinding, similar to mdoc_macro.c 1.171. Drop one enum type, two static functions, 70 lines of code. Also fixes the mpeg_encode(1) manual reported broken by naddy@.
|
#
de972994 |
| 03-Apr-2015 |
schwarze <schwarze@openbsd.org> |
It turns out the man(7) parser suffers from unintelligible handling of block rewinding, just like then mdoc(7) parser did. First step in getting rid of rew_scope(): Replace the only call where the ta
It turns out the man(7) parser suffers from unintelligible handling of block rewinding, just like then mdoc(7) parser did. First step in getting rid of rew_scope(): Replace the only call where the target block is known. This commit is analogous to mdoc_macro.c rev. 1.167. One down, three to go.
show more ...
|
#
3a0d07af |
| 02-Apr-2015 |
schwarze <schwarze@openbsd.org> |
Second step towards parser unification: Replace struct mdoc_node and struct man_node by a unified struct roff_node. To be able to use the tok member for both mdoc(7) and man(7) without defining all t
Second step towards parser unification: Replace struct mdoc_node and struct man_node by a unified struct roff_node. To be able to use the tok member for both mdoc(7) and man(7) without defining all the macros in roff.h, sacrifice a tiny bit of type safety and make tok an int rather than an enum. Almost mechanical, no functional change. Written on the Eurostar from Bruxelles to London on the way to p2k15.
show more ...
|
#
d1982c71 |
| 02-Apr-2015 |
schwarze <schwarze@openbsd.org> |
First step towards parser unification: Replace enum mdoc_type and enum man_type by a unified enum roff_type. Almost mechanical, no functional change. Written on the ICE train from Frankfurt to Bruxel
First step towards parser unification: Replace enum mdoc_type and enum man_type by a unified enum roff_type. Almost mechanical, no functional change. Written on the ICE train from Frankfurt to Bruxelles on the way to p2k15.
show more ...
|
#
5cd28c26 |
| 20-Mar-2015 |
schwarze <schwarze@openbsd.org> |
The .PD macro can occur in next-line scope. Fixes zshmisc(1). Issue reported by Christian Neukirchen <chneukirchen at gmail dot com>.
|