CVS log for mandoc/mdoc.h

[BACK] Up to [cvsweb.bsd.lv] / mandoc

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: MAIN


Revision 1.146 / (download) - annotate - [select for diffs], Sun Dec 30 00:49:55 2018 UTC (5 years, 2 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_14_6, VERSION_1_14_5, HEAD
Changes since 1.145: +4 -1 lines
Diff to previous 1.145 (colored) to selected 1.116 (colored)

Cleanup, no functional change:

The struct roff_man used to be a bad mixture of internal parser
state and public parsing results.  Move the public results to the
parsing result struct roff_meta, which is already public.  Move the
rest of struct roff_man to the parser-internal header roff_int.h.

Since the validators need access to the parser state, call them
from the top level parser during mparse_result() rather than from
the main programs, also reducing code duplication.

This keeps parser internal state out of thee main programs (five
in mandoc portable) and out of eight formatters.

Revision 1.145 / (download) - annotate - [select for diffs], Mon Apr 24 23:06:18 2017 UTC (6 years, 11 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_14_4, VERSION_1_14_3, VERSION_1_14_2
Changes since 1.144: +1 -130 lines
Diff to previous 1.144 (colored) to selected 1.116 (colored)

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[].

Revision 1.144 / (download) - annotate - [select for diffs], Sat Nov 7 14:01:16 2015 UTC (8 years, 4 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_14_1, VERSION_1_13_4, VERSION_1_13
Changes since 1.143: +1 -4 lines
Diff to previous 1.143 (colored) to selected 1.116 (colored)

In private header files, __BEGIN_DECLS and __END_DECLS are pointless.
Because these work slightly differently on different systems,
they are becoming a maintenance burden in the portable version,
so delete them.

Besides, one of the chief design goals of the mandoc toolbox is to
make sure that nothing related to documentation requires C++.
Consequently, linking mandoc against any kind of C++ program would
defeat the purpose and is not supported.
I don't understand why kristaps@ added them in the first place.

Revision 1.143 / (download) - annotate - [select for diffs], Tue Oct 20 02:01:31 2015 UTC (8 years, 5 months ago) by schwarze
Branch: MAIN
Changes since 1.142: +7 -1 lines
Diff to previous 1.142 (colored) to selected 1.116 (colored)

In order to become able to generate syntax tree nodes on the roff(7)
level, validation must be separated from parsing and rewinding.
This first big step moves calling of the mdoc(7) post_*() functions
out of the parser loop into their own mdoc_validate() pass, while
using a new mdoc_state() module to make syntax tree state handling
available to both the parser loop and the validation pass.

Revision 1.142 / (download) - annotate - [select for diffs], Thu Apr 23 16:17:44 2015 UTC (8 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.141: +1 -9 lines
Diff to previous 1.141 (colored) to selected 1.116 (colored)

Unify mdoc_deroff() and man_deroff() into a common function deroff().
No functional change except that for mdoc(7), it now skips leading
escape sequences just like it already did for man(7).
Escape sequences rarely occur in mdoc(7) code and if they do,
skipping them is an improvement in this context.
Minus 30 lines of code.

Revision 1.141 / (download) - annotate - [select for diffs], Sat Apr 18 17:53:21 2015 UTC (8 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.140: +1 -3 lines
Diff to previous 1.140 (colored) to selected 1.116 (colored)

Delete the wrapper functions mdoc_meta(), man_meta(), mdoc_node(),
man_node() from the mandoc(3) semi-public interface and the internal
wrapper functions print_mdoc() and print_man() from the HTML formatters.
Minus 60 lines of code, no functional change.

Revision 1.140 / (download) - annotate - [select for diffs], Sat Apr 18 16:06:40 2015 UTC (8 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.139: +4 -4 lines
Diff to previous 1.139 (colored) to selected 1.116 (colored)

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.

Revision 1.139 / (download) - annotate - [select for diffs], Thu Apr 2 23:48:19 2015 UTC (8 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.138: +2 -12 lines
Diff to previous 1.138 (colored) to selected 1.116 (colored)

Third step towards parser unification:
Replace struct mdoc_meta and struct man_meta by a unified struct roff_meta.
Written of the train from London to Exeter on the way to p2k15.

Revision 1.138 / (download) - annotate - [select for diffs], Thu Apr 2 22:48:17 2015 UTC (8 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.137: +129 -211 lines
Diff to previous 1.137 (colored) to selected 1.116 (colored)

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.

Revision 1.137 / (download) - annotate - [select for diffs], Thu Apr 2 21:36:50 2015 UTC (8 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.136: +4 -16 lines
Diff to previous 1.136 (colored) to selected 1.116 (colored)

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.

Revision 1.136 / (download) - annotate - [select for diffs], Thu Feb 12 12:24:33 2015 UTC (9 years, 1 month ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_13_3
Changes since 1.135: +5 -5 lines
Diff to previous 1.135 (colored) to selected 1.116 (colored)

Delete the mdoc_node.pending pointer and the function calculating
it, make_pending(), which was the most difficult function of the
whole mdoc(7) parser.  After almost five years of maintaining this
hellhole, i just noticed the pointer isn't needed after all.

Blocks are always rewound in the reverse order they were opened;
that even holds for broken blocks.  Consequently, it is sufficient
to just mark broken blogs with the flag MDOC_BROKEN and breaking
blocks with the flag MDOC_ENDED.  When rewinding, instead of iterating
the pending pointers, just iterate from each broken block to its
parents, rewinding all that are MDOC_ENDED and stopping after
processing the first ancestor that it not MDOC_BROKEN.  For ENDBODY
markers, use the mdoc_node.body pointer in place of the former
mdoc_node.pending.

This also fixes an assertion failure found by jsg@ with afl,
test case #467 (Bo Bl It Bd Bc It), where (surprise surprise)
the pending pointer got corrupted.

Improved functionality, minus one function, minus one struct field,
minus 50 lines of code.

Revision 1.135 / (download) - annotate - [select for diffs], Thu Feb 5 00:14:13 2015 UTC (9 years, 1 month ago) by schwarze
Branch: MAIN
Changes since 1.134: +1 -2 lines
Diff to previous 1.134 (colored) to selected 1.116 (colored)

Simplify by deleting the "lastline" member of struct mdoc_node.
Minus one struct member, minus 17 lines of code, no functional change.

Revision 1.134 / (download) - annotate - [select for diffs], Sat Jan 31 00:12:41 2015 UTC (9 years, 1 month ago) by schwarze
Branch: MAIN
Changes since 1.133: +2 -2 lines
Diff to previous 1.133 (colored) to selected 1.116 (colored)

Use relative offsets instead of absolute pointers for the terminal
font stack.  The latter fail after the stack is grown with realloc().
Fixing an assertion failure found by jsg@ with afl some time ago
(test case number 51).

Revision 1.133 / (download) - annotate - [select for diffs], Thu Dec 18 03:10:11 2014 UTC (9 years, 3 months ago) by schwarze
Branch: MAIN
Changes since 1.132: +2 -1 lines
Diff to previous 1.132 (colored) to selected 1.116 (colored)

The code is already careful to not add items to lists that were
already closed.  In this respect, also consider lists closed
that have broken another block, their closure pending until the
end of the broken block.  This avoids syntax tree corruption
leading to a NULL pointer access found by jsg@ with afl.

Revision 1.132 / (download) - annotate - [select for diffs], Mon Dec 1 04:05:32 2014 UTC (9 years, 3 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_13_2
Changes since 1.131: +1 -5 lines
Diff to previous 1.131 (colored) to selected 1.116 (colored)

remove unneccessary inclusion protection; patch from deraadt@

Revision 1.131 / (download) - annotate - [select for diffs], Tue Jul 29 13:58:18 2014 UTC (9 years, 8 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_13_1, VERSION_1_12_4, VERSION_1_12
Changes since 1.130: +2 -2 lines
Diff to previous 1.130 (colored) to selected 1.116 (colored)

Partial implementation of .Bd -centered.

In groff, .Bd -centered operates in fill mode, which is relatively
hard to implement, while this implementation operates in non-fill
mode so far.  As long as you pay attention that your lines do not
overflow, it works.  To make sure that rendering is the same for
mandoc and groff, it is recommended to insert .br between lines
for now.  This implementation will need improvement later.

Revision 1.130 / (download) - annotate - [select for diffs], Wed Jul 2 03:48:07 2014 UTC (9 years, 8 months ago) by schwarze
Branch: MAIN
Changes since 1.129: +2 -1 lines
Diff to previous 1.129 (colored) to selected 1.116 (colored)

Implement the obsolete macros .En .Es .Fr .Ot for backward compatibility,
since this is hardly more complicated than explicitly ignoring them
as we did in the past.  Of course, do not use them!

Revision 1.129 / (download) - annotate - [select for diffs], Sun Apr 20 16:46:05 2014 UTC (9 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.128: +10 -10 lines
Diff to previous 1.128 (colored) to selected 1.116 (colored)

KNF: case (FOO):  ->  case FOO:, remove /* LINTED */ and /* ARGSUSED */,
remove trailing whitespace and blanks before tabs, improve some indenting;
no functional change

Revision 1.128 / (download) - annotate - [select for diffs], Mon Mar 31 01:05:32 2014 UTC (10 years ago) by schwarze
Branch: MAIN
Changes since 1.127: +2 -1 lines
Diff to previous 1.127 (colored) to selected 1.116 (colored)

Support the CONTEXT section for kernel manual pages found in Solaris and
OpenBSD manuals.  It describes which contexts you can call functions in.
from dlg@, ok jmc@ deraadt@

Revision 1.127 / (download) - annotate - [select for diffs], Sun Mar 30 19:47:48 2014 UTC (10 years ago) by schwarze
Branch: MAIN
Changes since 1.126: +2 -1 lines
Diff to previous 1.126 (colored) to selected 1.116 (colored)

Implement the roff(7) .ll (line length) request.
Found by naddy@ in the textproc/enchant(1) port.
Of course, do not use this in new manuals.

Revision 1.126 / (download) - annotate - [select for diffs], Sun Mar 23 12:44:56 2014 UTC (10 years ago) by schwarze
Branch: MAIN
Changes since 1.125: +2 -1 lines
Diff to previous 1.125 (colored) to selected 1.116 (colored)

If an .Nd block contains macros, avoid fragmented entries in mandocdb(8),
instead use the .Nd content recursively.

Revision 1.125 / (download) - annotate - [select for diffs], Tue Dec 24 19:11:45 2013 UTC (10 years, 3 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_12_3
Changes since 1.124: +2 -1 lines
Diff to previous 1.124 (colored) to selected 1.116 (colored)

When deciding whether two consecutive macros are on the same input line,
we have to compare the line where the first one *ends* (not where it begins)
to the line where the second one starts.
This fixes the bug that .Bk allowed output line breaks right after block
macros spanning more than one input line, even when the next macro follows
on the same line.

Revision 1.124 / (download) - annotate - [select for diffs], Fri Nov 16 17:16:55 2012 UTC (11 years, 4 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_12_2
Changes since 1.123: +2 -1 lines
Diff to previous 1.123 (colored) to selected 1.116 (colored)

Improve formatting of badly nested font blocks.
The basic idea is to already pop the font at the end marker
instead of allowing it to linger until the final end of the block.

This requires a few preliminaries:
* For each block, save a pointer to the previous font
  to be used in case the block breaks another and gets extended.
* That requires making node information writable during rendering.
* Now fonts may get popped in the wrong order; hence, after the stack
  has already been rewound further by some block that began earlier,
  ignore popping a font that was put on the stack later.
* To be able to exploit all this for font blocks, tie processing
  to their body, not their block, which is more logical anyway.

Triggered by florian@ reporting vaguely similar issues with list blocks.

Revision 1.123 / (download) - annotate - [select for diffs], Tue Jul 10 14:38:51 2012 UTC (11 years, 8 months ago) by schwarze
Branch: MAIN
Changes since 1.122: +2 -1 lines
Diff to previous 1.122 (colored) to selected 1.116 (colored)

* implement -Tman .Bl -item -inset -diag -ohang -dash -hyphen -enum .It
* fix -Tman .Bl -bullet .It
* adjust the -Tascii .Bl -bullet -dash -hyphen .It
default and minimum width to new groff standards,
it changed from 4n (in groff 1.15) to 2n (in groff 1.21)
* same for -Tascii -enum, it changed from 5n to 2n
* use -hang formatting for -Tascii -enum -width 2n
* for -Tascii -enum, the default is -width 3n

Revision 1.122 / (download) - annotate - [select for diffs], Tue Mar 22 14:05:45 2011 UTC (13 years ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_12_1, VERSION_1_12_0, VERSION_1_11_7, VERSION_1_11_6, VERSION_1_11_5, VERSION_1_11_4, VERSION_1_11_3, VERSION_1_11_2, VERSION_1_11_1
Changes since 1.121: +3 -1 lines
Diff to previous 1.121 (colored) to selected 1.116 (colored)

Move mandoc_isdelim() back into libmdoc.h.  This fixes an unreported
error where (1) -man pages were punctuating delimiters (e.g., `.B a ;')
and where (2) standalone punctuation in -mdoc or -man (e.g., ";" on its
own line) would also be punctuated.  This introduces a small amount of
complexity of mdoc_{html,term}.c must manage their own spacing with
running print_word() or print_text().  The check for delimiting now
happens in mdoc_macro.c's dword().

Revision 1.121 / (download) - annotate - [select for diffs], Tue Mar 22 13:28:22 2011 UTC (13 years ago) by kristaps
Branch: MAIN
Changes since 1.120: +76 -117 lines
Diff to previous 1.120 (colored) to selected 1.116 (colored)

Add some documentation and clean up mdoc.h/man.h.

Revision 1.120 / (download) - annotate - [select for diffs], Tue Mar 22 09:48:13 2011 UTC (13 years ago) by kristaps
Branch: MAIN
Changes since 1.119: +1 -10 lines
Diff to previous 1.119 (colored) to selected 1.116 (colored)

Step 1 of restructuring: libmandoc.h.  Move all compiler-set-specific
stuff into libmandoc.h, including old mdoc.h/man.h/roff.h functions now
used by read.c.  The motivation behind this is to tighten the
relationship between the underlying compilers while keeping parse data
hidden from general callers (e.g., main.c).

While here, also move register values from mandoc.h into libmandoc.h as
noted by schwarze@.  See above for explanation.

Revision 1.119 / (download) - annotate - [select for diffs], Sun Mar 20 16:02:05 2011 UTC (13 years ago) by kristaps
Branch: MAIN
Changes since 1.118: +2 -2 lines
Diff to previous 1.118 (colored) to selected 1.116 (colored)

Consolidate messages.  Have all parse-time messages (in libmdoc,
libroff, etc., etc.) route into mandoc_msg() and mandoc_vmsg(), for the
time being in libmandoc.h.  This requires struct mparse to be passed
into the allocation routines instead of mandocmsg and a void pointer.
Then, move some of the functionality of the old mmsg() into read.c's
mparse_mmsg() (check against wlevel and setting of file_status) and use
main.c's mmsg() as simply a printing tool.

Revision 1.118 / (download) - annotate - [select for diffs], Mon Mar 7 01:35:51 2011 UTC (13 years ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_10_10
Changes since 1.117: +3 -3 lines
Diff to previous 1.117 (colored) to selected 1.116 (colored)

Clean up date handling,
as a first step to get rid of the frequent petty warnings in this area:
 - always store dates as strings, not as seconds since the Epoch
 - for input, try the three most common formats everywhere
 - for unrecognized format, just pass the date though verbatim
 - when there is no date at all, still use the current date
Originally triggered by a one-line patch from Tim van der Molen,
<tbvdm at xs4all dot nl>, which is included here.
Feedback and OK on manual parts from jmc@.
"please check this in" kristaps@

Revision 1.117 / (download) - annotate - [select for diffs], Wed Feb 9 09:05:52 2011 UTC (13 years, 1 month ago) by kristaps
Branch: MAIN
Changes since 1.116: +4 -1 lines
Diff to previous 1.116 (colored)

Allow EQN data to be pushed down into libmdoc via mdoc_addeqn().  Only
the adding itself is implemented; equation data is not yet shown.

Revision 1.116 / (download) - annotate - [selected], Sun Feb 6 21:44:36 2011 UTC (13 years, 1 month ago) by kristaps
Branch: MAIN
Changes since 1.115: +2 -1 lines
Diff to previous 1.115 (colored)

Add initial libmdoc and libman top-most machinery for accepting TBL
directives.  For now this will just ignore them (except for -Ttree,
which just notes that an EQN's been accepted).

Revision 1.115 / (download) - annotate - [select for diffs], Tue Jan 25 10:37:49 2011 UTC (13 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.114: +2 -2 lines
Diff to previous 1.114 (colored) to selected 1.116 (colored)

If %B is specified, quote %T.  Noted by schwarze@ in the TODO.

Revision 1.114 / (download) - annotate - [select for diffs], Sat Jan 1 12:18:37 2011 UTC (13 years, 2 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_10_9
Changes since 1.113: +5 -1 lines
Diff to previous 1.113 (colored) to selected 1.116 (colored)

Add table processing structures to -mdoc.  This consists of an
external-facing function mdoc_addspan(), then various bits to prohibit
printing and scanning (this requires some if's to be converted into
switch's).

Revision 1.113 / (download) - annotate - [select for diffs], Sun Dec 26 14:44:13 2010 UTC (13 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.112: +1 -2 lines
Diff to previous 1.112 (colored) to selected 1.116 (colored)

Whack MDOC_ACTED and MAN_ACTED (these no longer exist).

Revision 1.112 / (download) - annotate - [select for diffs], Sat Dec 25 23:25:53 2010 UTC (13 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.111: +2 -2 lines
Diff to previous 1.111 (colored) to selected 1.116 (colored)

Implement schwarze@'s much more elegant version of my %T/%J fix.

Revision 1.111 / (download) - annotate - [select for diffs], Sat Dec 25 13:50:37 2010 UTC (13 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.110: +6 -1 lines
Diff to previous 1.110 (colored) to selected 1.116 (colored)

Specifying both %T and %J in an `Rs' block causes the title to be quoted
instead of underlined.  This only happens in -Tascii, as -T[x]html both
underlines and italicises.

Revision 1.110 / (download) - annotate - [select for diffs], Fri Dec 24 14:00:40 2010 UTC (13 years, 3 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_10_8
Changes since 1.109: +2 -11 lines
Diff to previous 1.109 (colored) to selected 1.116 (colored)

As per schwarze@'s suggestions, roll back the refcount structure in
favour of a simpler shim for normalised data in the node allocation and
free routines.  This removes the need to bump and copy references within
validator handlers, removes a pointer redirect, and also kills the
refcount structure itself.  Data is assumed to "live" either in a
MDOC_BLOCK or MDOC_ELEM and is copied accordingly.

Revision 1.109 / (download) - annotate - [select for diffs], Wed Dec 22 11:15:16 2010 UTC (13 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.108: +16 -7 lines
Diff to previous 1.108 (colored) to selected 1.116 (colored)

Implement reference-counted version of original union mdoc_data.  This
simplifies clean-up and allows for more types without extra hassle.

Also made in-line literal types in -T[x]html use CODE instead of SPAN to
match how literal blocks use PRE.

Revision 1.108 / (download) - annotate - [select for diffs], Thu Dec 16 17:14:48 2010 UTC (13 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.107: +2 -2 lines
Diff to previous 1.107 (colored) to selected 1.116 (colored)

Migrate `An' to use a pointer in its data, like everybody else.  This is
the first step to having a simpler ref-counted system for "data"
associated with a node.

Revision 1.107 / (download) - annotate - [select for diffs], Wed Dec 15 23:39:40 2010 UTC (13 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.106: +2 -1 lines
Diff to previous 1.106 (colored) to selected 1.116 (colored)

Add a "last child" member of struct mdoc_node.

Remove `Pp' or `Lp' if it is the FIRST or LAST child of an `Sh' or `Sh' body.

Make "skipping paragraph" be an error, not a warning, as information (an
invoked macro) is ignored.

Revision 1.106 / (download) - annotate - [select for diffs], Wed Dec 15 14:52:16 2010 UTC (13 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.105: +3 -2 lines
Diff to previous 1.105 (colored) to selected 1.116 (colored)

In-progress move from -T[x]html using DIVs for its lists to using DL,
OL, and UL.  Issue raised by Will Backman, solution proposed by
schwarze@.

Revision 1.105 / (download) - annotate - [select for diffs], Mon Oct 4 07:01:02 2010 UTC (13 years, 5 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_10_7
Changes since 1.104: +385 -8 lines
Diff to previous 1.104 (colored) to selected 1.116 (colored)

Revert merging of {mdoc,man}.h -> mandoc.h.

While I'm add it, properly document all structures in these files.

Revision 1.104 / (download) - annotate - [select for diffs], Sat Oct 2 10:14:37 2010 UTC (13 years, 5 months ago) by kristaps
Branch: MAIN
Changes since 1.103: +1 -328 lines
Diff to previous 1.103 (colored) to selected 1.116 (colored)

Unify mdoc and man enums and structs into mandoc.h.  This is part of the
slow process of logically splitting formatting frontend and parser backend
without pollution.

Revision 1.103 / (download) - annotate - [select for diffs], Fri Aug 20 01:02:07 2010 UTC (13 years, 7 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_10_6
Changes since 1.102: +2 -6 lines
Diff to previous 1.102 (colored) to selected 1.116 (colored)

Implement a simple, consistent user interface for error handling.
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.

Revision 1.102 / (download) - annotate - [select for diffs], Wed Jul 21 09:08:26 2010 UTC (13 years, 8 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_10_5_PREPDF, VERSION_1_10_5
Changes since 1.101: +32 -31 lines
Diff to previous 1.101 (colored) to selected 1.116 (colored)

Finally make mdoc argv CPP-defines into a proper enum.

Revision 1.101 / (download) - annotate - [select for diffs], Tue Jul 13 23:53:20 2010 UTC (13 years, 8 months ago) by schwarze
Branch: MAIN
Changes since 1.100: +2 -2 lines
Diff to previous 1.100 (colored) to selected 1.116 (colored)

correct lots of copyright notices;
ok kristaps@

Revision 1.100 / (download) - annotate - [select for diffs], Sun Jul 4 21:59:30 2010 UTC (13 years, 8 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_10_4
Changes since 1.99: +3 -1 lines
Diff to previous 1.99 (colored) to selected 1.116 (colored)

Cache column sizes and char pointer into mdoc_bl.  Finally get rid of
the loops here and there to track down the MDOC_Column arguments.

Revision 1.99 / (download) - annotate - [select for diffs], Fri Jul 2 15:03:14 2010 UTC (13 years, 8 months ago) by kristaps
Branch: MAIN
Changes since 1.98: +12 -1 lines
Diff to previous 1.98 (colored) to selected 1.116 (colored)

Cached `An' arguments in struct mdoc_an.  Note that this isn't a
pointer like the other data members, as there's no need to copy it around.

Revision 1.98 / (download) - annotate - [select for diffs], Fri Jul 2 12:54:33 2010 UTC (13 years, 8 months ago) by kristaps
Branch: MAIN
Changes since 1.97: +14 -2 lines
Diff to previous 1.97 (colored) to selected 1.116 (colored)

Stash `Bf' parameters into struct mdoc_bf.

Revision 1.97 / (download) - annotate - [select for diffs], Fri Jul 2 10:53:28 2010 UTC (13 years, 8 months ago) by kristaps
Branch: MAIN
Changes since 1.96: +2 -2 lines
Diff to previous 1.96 (colored) to selected 1.116 (colored)

Lint fixes.

Revision 1.96 / (download) - annotate - [select for diffs], Thu Jul 1 22:56:17 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
Changes since 1.95: +3 -3 lines
Diff to previous 1.95 (colored) to selected 1.116 (colored)

Make struct_bl and struct_bd into pointers.  This removes the need to do
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.

Revision 1.95 / (download) - annotate - [select for diffs], Tue Jun 29 19:20:38 2010 UTC (13 years, 9 months ago) by schwarze
Branch: MAIN
Changes since 1.94: +9 -1 lines
Diff to previous 1.94 (colored) to selected 1.116 (colored)

Support for badly nested blocks, written around the time of
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@

Revision 1.94 / (download) - annotate - [select for diffs], Sun Jun 27 16:18:13 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_10_3
Changes since 1.93: +3 -2 lines
Diff to previous 1.93 (colored) to selected 1.116 (colored)

Following clue-stick applied by schwarze@, back out const-ness of regset
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.

Revision 1.93 / (download) - annotate - [select for diffs], Sun Jun 27 15:52:41 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
Changes since 1.92: +4 -7 lines
Diff to previous 1.92 (colored) to selected 1.116 (colored)

Downstream maintainers: this removes UGLY!  I don't want diverging
functionality and UGLY works quite well thanks to schwarze@'s careful
attention.

This also backs out function-prototype changes for struct regset,
instead stuffing a pointer to the regset directly into struct
mdoc/man/roff.

Revision 1.92 / (download) - annotate - [select for diffs], Sat Jun 26 15:36:37 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
Changes since 1.91: +4 -2 lines
Diff to previous 1.91 (colored) to selected 1.116 (colored)

Churn-ish check-in getting mdoc_parseln() and man_parseln() to accept a
const struct regset pointer.  No functionality.

Revision 1.91 / (download) - annotate - [select for diffs], Sat Jun 26 15:22:19 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
Changes since 1.90: +2 -1 lines
Diff to previous 1.90 (colored) to selected 1.116 (colored)

First step of adding register support.  This is inspired by a significant
patch by schwarze@.  This commit adds support to libroff parsing `nr'
into register set defined in regs.h.  This will propogate into libmdoc
and libman in later commits.

Revision 1.90 / (download) - annotate - [select for diffs], Sat Jun 19 20:46:28 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_10_2
Changes since 1.89: +2 -2 lines
Diff to previous 1.89 (colored) to selected 1.116 (colored)

Churn as I finish email address migration kth.se -> bsd.lv.

Revision 1.89 / (download) - annotate - [select for diffs], Sun Jun 13 21:02:48 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
Changes since 1.88: +2 -1 lines
Diff to previous 1.88 (colored) to selected 1.116 (colored)

Allow -width for lists to be cached in mdoc_bl.  This requires some
trickery because widths may be on-the-fly recalculated.  I don't like
how these are split between mdoc_action.c and mdoc_validate.c, but for
the time being, it'll do.

Revision 1.88 / (download) - annotate - [select for diffs], Sat Jun 12 12:38:01 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
Changes since 1.87: +2 -1 lines
Diff to previous 1.87 (colored) to selected 1.116 (colored)

Cached `Bl -offset' into mdoc_bl.  Removed erroneous "-offset defaults
to 6n if no value is specified" and added regression tests for `Bl'
testing against the empty -offset argument.

Revision 1.87 / (download) - annotate - [select for diffs], Sat Jun 12 12:10:55 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
Changes since 1.86: +6 -5 lines
Diff to previous 1.86 (colored) to selected 1.116 (colored)

Moved `Bl -compact' into cached data.  This allowed the removal of
scanning the argv list in print_bvspace(), and thus the parent pointer.

Revision 1.86 / (download) - annotate - [select for diffs], Sat Jun 12 11:58:22 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
Changes since 1.85: +6 -2 lines
Diff to previous 1.85 (colored) to selected 1.116 (colored)

`Bl' is now using a struct instead of a single enum mdoc_list for its
cached values.  You can probably guess where this is going.

Revision 1.85 / (download) - annotate - [select for diffs], Sat Jun 12 11:21:44 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
Changes since 1.84: +8 -2 lines
Diff to previous 1.84 (colored) to selected 1.116 (colored)

Cache all of `Bd's resolved arguments into mdoc_bd, which is stashed in
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).

Revision 1.84 / (download) - annotate - [select for diffs], Sat Jun 12 10:09:19 2010 UTC (13 years, 9 months ago) by kristaps
Branch: MAIN
Changes since 1.83: +12 -2 lines
Diff to previous 1.83 (colored) to selected 1.116 (colored)

Added enum mdoc_disp (similar to enum mdoc_list).  Display types are now
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').

Revision 1.83 / (download) - annotate - [select for diffs], Mon May 31 10:28:04 2010 UTC (13 years, 10 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_10_1
Changes since 1.82: +2 -1 lines
Diff to previous 1.82 (colored) to selected 1.116 (colored)

Remove enum mdocargerr from phrase() (unused).

Add `Ta' macro, which is basically a NULL case everywhere but in
mdoc_macro.c, where it closes out an existing `It' body scope and opens
a new one, then continues parsing as in phrase() (TODO: merge these
two?).

Fix where scope-breaking was silently just dying instead of printing an
error.

Fix where trailing `Ta' or tab weren't creating a new MDOC_BODY context.

We now support arbitrarily complex `It' contents for `Bl -column'.

Revision 1.82 / (download) - annotate - [select for diffs], Mon May 17 23:57:06 2010 UTC (13 years, 10 months ago) by kristaps
Branch: MAIN
Changes since 1.81: +20 -1 lines
Diff to previous 1.81 (colored) to selected 1.116 (colored)

Increase performance by stashing the list type in struct mdoc_node.
This will eventually be used so that mdoc_macro can known whether to
dump list line arguments into the body (`Bl -column' overflowing).

Remove a2list() and arg_listtype() because of this.

Revision 1.81 / (download) - annotate - [select for diffs], Mon May 17 22:11:42 2010 UTC (13 years, 10 months ago) by kristaps
Branch: MAIN
Changes since 1.80: +2 -9 lines
Diff to previous 1.80 (colored) to selected 1.116 (colored)

Enable the unified error/warning enumeration in mandoc.h that's
stringified in main.c.

Allow `An' to handle an argument and child (with a warning).

Allow `Rv' and `Ex' to work without a prior `Nm' as groff does (with a
warning).

Allow inconsistent column syntax to only raise a warning.

Revision 1.80 / (download) - annotate - [select for diffs], Sun May 16 10:59:36 2010 UTC (13 years, 10 months ago) by kristaps
Branch: MAIN
Changes since 1.79: +2 -2 lines
Diff to previous 1.79 (colored) to selected 1.116 (colored)

Allow roff_parseln() to be re-run.
Allow roff_parseln() to manipulate the line buffer offset.  This is used
in situations like `.ie n .TH FOO 1' or `.ie n .ie n', where the line
buffer offset is recalculated then the roff parser re-run.
Fix mdoc_parseln() and man_parseln() to accept the initial line offset.
WARNING: backed-out ALL roff macros whilst accomodating for how roff
handles multi-line conditionals (in short, re-running the parser).

Revision 1.79 / (download) - annotate - [select for diffs], Sat May 15 16:24:38 2010 UTC (13 years, 10 months ago) by kristaps
Branch: MAIN
Changes since 1.78: +2 -2 lines
Diff to previous 1.78 (colored) to selected 1.116 (colored)

LIBRARY can also occur in section 9.
All manual sections (unknown, 3p, 3f, etc.) correctly handled by -mdoc.
Useful warning printed if unknown manual section.
Checking for manual sections (e.g., LIBRARY) checks only first character, so 3p, 3f, etc. are free.

Revision 1.78 / (download) - annotate - [select for diffs], Thu May 13 06:22:11 2010 UTC (13 years, 10 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_9_25
Changes since 1.77: +15 -15 lines
Diff to previous 1.77 (colored) to selected 1.116 (colored)

Fixed bug in -Thtml -mdoc where `Lb' would line-break in LIBRARY section.
Fixed assumption that parse-point == 1 equates to beginning of line (false if whitespace separates macro and control character).
Fixed line-break for non-first-macro in several SYNOPSIS macros.

Revision 1.77 / (download) - annotate - [select for diffs], Wed May 12 16:01:01 2010 UTC (13 years, 10 months ago) by kristaps
Branch: MAIN
Changes since 1.76: +2 -1 lines
Diff to previous 1.76 (colored) to selected 1.116 (colored)

Tiny EOS patch.  Back-end cues front-end through flag.  Front-end cues output engine with flag.

Revision 1.76 / (download) - annotate - [select for diffs], Wed May 12 08:41:17 2010 UTC (13 years, 10 months ago) by kristaps
Branch: MAIN
Changes since 1.75: +4 -3 lines
Diff to previous 1.75 (colored) to selected 1.116 (colored)

mdoc_atosec -> mdoc_str2sec (consistent with str2 being different from a2).
Changed ordering of sections (EXIT STATUS moved around), argued for by Ulrich Sporlein.
Fixed mdoc_str2sec not to use weird structure.

Revision 1.75 / (download) - annotate - [select for diffs], Sun May 9 21:19:42 2010 UTC (13 years, 10 months ago) by kristaps
Branch: MAIN
Changes since 1.74: +1 -2 lines
Diff to previous 1.74 (colored) to selected 1.116 (colored)

Remove -fno-ign-chars as well-argued by Ingo Schwarze.  Patch by Ingo Schwarze, too.

Revision 1.74 / (download) - annotate - [select for diffs], Wed Mar 31 07:13:53 2010 UTC (14 years ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_9_24, VERSION_1_9_23, VERSION_1_9_22
Changes since 1.73: +129 -124 lines
Diff to previous 1.73 (colored) to selected 1.116 (colored)

Macro types enum-ated (enum mdoct) (for easier debugging in gdb of "tok" values).
Initial check-in of Ingo Schwarze's patch for Xo/Xc handling (in blocks ifdef'd "UGLY").
Put Oc-close-Op parts into UGLY ifdef blocks.

Revision 1.73 / (download) - annotate - [select for diffs], Fri Oct 30 05:58:38 2009 UTC (14 years, 5 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_9_21, VERSION_1_9_20, VERSION_1_9_19, VERSION_1_9_18, VERSION_1_9_17, VERSION_1_9_16, VERSION_1_9_15-pre2, VERSION_1_9_15-pre1, VERSION_1_9_15, VERSION_1_9_14, VERSION_1_9_13, VERSION_1_9_12
Changes since 1.72: +2 -2 lines
Diff to previous 1.72 (colored) to selected 1.116 (colored)

libmdoc and libman now using non-recoverable allocations (simpler code).

Revision 1.72 / (download) - annotate - [select for diffs], Mon Oct 26 04:09:45 2009 UTC (14 years, 5 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_9_11, VERSION_1_9_10
Changes since 1.71: +1 -3 lines
Diff to previous 1.71 (colored) to selected 1.116 (colored)

Full `%U' support.
`Lk' display fixed.
Renamed arg2xxxx as a2xxxx for consistency.
Renamed print_foot to print_man_foot for consistency.
Removed default printing of `~' when `Lk' not provided (not sure where I got that from).

Revision 1.71 / (download) - annotate - [select for diffs], Sat Oct 24 05:52:13 2009 UTC (14 years, 5 months ago) by kristaps
Branch: MAIN
Changes since 1.70: +3 -2 lines
Diff to previous 1.70 (colored) to selected 1.116 (colored)

Added `%U' to -mdoc (doesn't render in a nice way yet).

Revision 1.70 / (download) - annotate - [select for diffs], Thu Oct 15 01:33:12 2009 UTC (14 years, 5 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_9_9
Changes since 1.69: +3 -2 lines
Diff to previous 1.69 (colored) to selected 1.116 (colored)

Added support for `Bd -centered', which appears in newer groffs (not yet implemented in centre-capable front-ends, i.e., -Thtml).

Revision 1.69 / (download) - annotate - [select for diffs], Thu Aug 20 13:32:09 2009 UTC (14 years, 7 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_9_8, VERSION_1_9_7, VERSION_1_9_6, VERSION_1_9_5, VERSION_1_9_2, VERSION_1_9_1
Changes since 1.68: +3 -3 lines
Diff to previous 1.68 (colored) to selected 1.116 (colored)

Synchronised man.7, mdoc.7, mdoc.template manual structure.

Revision 1.68 / (download) - annotate - [select for diffs], Thu Aug 20 13:22:48 2009 UTC (14 years, 7 months ago) by kristaps
Branch: MAIN
Changes since 1.67: +4 -2 lines
Diff to previous 1.67 (colored) to selected 1.116 (colored)

Updated manual structure in mdoc.7.
Synchronised mdoc.template and mdoc.7 manual structure.
`Rv' and `Ex' now accept multiple arguments (-std made standalone, terms as children).
`Rv' and `Ex' format correctly in -Tascii (plurals, commas, etc.).

Revision 1.67 / (download) - annotate - [select for diffs], Fri Jul 24 12:48:18 2009 UTC (14 years, 8 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_9_0, VERSION_1_8_5, VERSION_1_8_4
Changes since 1.66: +2 -3 lines
Diff to previous 1.66 (colored) to selected 1.116 (colored)

Removed superfluous FIXMEs.

Revision 1.66 / (download) - annotate - [select for diffs], Fri Jul 17 10:56:57 2009 UTC (14 years, 8 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_8_3, VERSION_1_8_2, VERSION_1_8_1
Changes since 1.65: +4 -2 lines
Diff to previous 1.65 (colored) to selected 1.116 (colored)

Added `br' and `sp' macros (requested by joerg@netbsd.org, jmc@openbsd.org).

Revision 1.65 / (download) - annotate - [select for diffs], Sun Jul 12 20:50:08 2009 UTC (14 years, 8 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_8_0
Changes since 1.64: +1 -3 lines
Diff to previous 1.64 (colored) to selected 1.116 (colored)

Replacement of `Lb' in mdoc_action.c.
Added warning against bogus `Lb' (like groff does).
Added proper quotes around `Lb' in mdoc_term.c.
Moved mdoc_a2lib -> libmdoc (where it belongs).

Revision 1.64 / (download) - annotate - [select for diffs], Sun Jul 12 20:30:35 2009 UTC (14 years, 8 months ago) by kristaps
Branch: MAIN
Changes since 1.63: +1 -2 lines
Diff to previous 1.63 (colored) to selected 1.116 (colored)

Moved mdoc_a2st() out of mdoc.h -> libmdoc.h (replacement in mdoc_action.c).
Made bad standards into an error (were a warning).

Revision 1.63 / (download) - annotate - [select for diffs], Sun Jul 12 20:24:24 2009 UTC (14 years, 8 months ago) by kristaps
Branch: MAIN
Changes since 1.62: +1 -2 lines
Diff to previous 1.62 (colored) to selected 1.116 (colored)

Moved mdoc_a2att() into libmdoc (replacement happens in mdoc_action.c).

Revision 1.62 / (download) - annotate - [select for diffs], Mon Jul 6 09:21:24 2009 UTC (14 years, 8 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_7_24, VERSION_1_7_23
Changes since 1.61: +2 -9 lines
Diff to previous 1.61 (colored) to selected 1.116 (colored)

Initial removal of enum mdoc_warn from mdoc warnings (unnecessary complication).

Revision 1.61 / (download) - annotate - [select for diffs], Thu Jun 18 20:46:19 2009 UTC (14 years, 9 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_7_22, VERSION_1_7_21, VERSION_1_7_20
Changes since 1.60: +2 -1 lines
Diff to previous 1.60 (colored) to selected 1.116 (colored)

Added nchild decrement in libman (not used, but better in than forgotten).
Added nchild to libmdoc, deprecated count() functions in validator.

Revision 1.60 / (download) - annotate - [select for diffs], Wed Jun 17 10:53:32 2009 UTC (14 years, 9 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_7_19
Changes since 1.59: +26 -40 lines
Diff to previous 1.59 (colored) to selected 1.116 (colored)

Section orders are more elegantly handled (MDOC_PBODY is a flag).
Cleaned up string->enum conversion for section lookup.

Revision 1.59 / (download) - annotate - [select for diffs], Tue Jun 16 19:45:51 2009 UTC (14 years, 9 months ago) by kristaps
Branch: MAIN
Changes since 1.58: +14 -15 lines
Diff to previous 1.58 (colored) to selected 1.116 (colored)

Removed MDOC___: moved MDOC_Ap to its index (comments not passed into mdoc parser).

Revision 1.58 / (download) - annotate - [select for diffs], Mon Jun 15 10:36:01 2009 UTC (14 years, 9 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_7_17
Changes since 1.57: +1 -2 lines
Diff to previous 1.57 (colored) to selected 1.116 (colored)

Deprecated mdoc_msg (not being used anywhere).

Revision 1.57 / (download) - annotate - [select for diffs], Wed Jun 10 20:18:43 2009 UTC (14 years, 9 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_7_16, VERSION_1_7_15, VERSION_1_7_14
Changes since 1.56: +2 -2 lines
Diff to previous 1.56 (colored) to selected 1.116 (colored)

Fixed license email address.

Revision 1.56 / (download) - annotate - [select for diffs], Sun Apr 12 19:45:26 2009 UTC (14 years, 11 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_7_13
Changes since 1.55: +10 -12 lines
Diff to previous 1.55 (colored) to selected 1.116 (colored)

Using proper license template (const).

Revision 1.55 / (download) - annotate - [select for diffs], Sun Apr 12 19:19:57 2009 UTC (14 years, 11 months ago) by kristaps
Branch: MAIN
Changes since 1.54: +2 -1 lines
Diff to previous 1.54 (colored) to selected 1.116 (colored)

Manual .Dt fields CAPITALISED.
Indent set to 5 chars (nroff compat).
Half-indent set to 3 chars (nroff compat).
Default behaviour is loose-y (ignore macro/char/escape).
Added -fstrict.
Added unknown-character ignoring.

Revision 1.54 / (download) - annotate - [select for diffs], Tue Mar 31 13:50:19 2009 UTC (15 years ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_7_12, VERSION_1_7_10, OPENBSD_CHECKIN
Changes since 1.53: +2 -2 lines
Diff to previous 1.53 (colored) to selected 1.116 (colored)

General clean-ups.

Revision 1.53 / (download) - annotate - [select for diffs], Mon Mar 23 14:22:11 2009 UTC (15 years ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_7_5
Changes since 1.52: +2 -2 lines
Diff to previous 1.52 (colored) to selected 1.116 (colored)

First addition of -man macro support.
Abstraction of mdoc.

Revision 1.52 / (download) - annotate - [select for diffs], Sat Mar 21 13:09:29 2009 UTC (15 years ago) by kristaps
Branch: MAIN
Changes since 1.51: +1 -3 lines
Diff to previous 1.51 (colored) to selected 1.116 (colored)

`Em' accepts empty tokens.
Punctuation fully fixed (per-reserved-word).
Sm enabled.

Revision 1.51 / (download) - annotate - [select for diffs], Sat Mar 21 09:42:07 2009 UTC (15 years ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_6_5
Changes since 1.50: +3 -2 lines
Diff to previous 1.50 (colored) to selected 1.116 (colored)

Added %Q macro.

Revision 1.50 / (download) - annotate - [select for diffs], Thu Mar 19 11:49:00 2009 UTC (15 years ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_6_2
Changes since 1.49: +3 -3 lines
Diff to previous 1.49 (colored) to selected 1.116 (colored)

Many more ASCII escapes added.
Stripped nroff punt from mdocterm.c.
Fixed multiple-file handling for mdocterm.c.
Cleared up mdoc.h API.

Revision 1.49 / (download) - annotate - [select for diffs], Mon Mar 16 23:37:28 2009 UTC (15 years ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_5_3
Changes since 1.48: +3 -2 lines
Diff to previous 1.48 (colored) to selected 1.116 (colored)

Changed e-mail address to @openbsd.
Cleaned up manual-page documentation.

Revision 1.48 / (download) - annotate - [select for diffs], Mon Mar 16 22:19:19 2009 UTC (15 years ago) by kristaps
Branch: MAIN
Changes since 1.47: +4 -4 lines
Diff to previous 1.47 (colored) to selected 1.116 (colored)

Fixed mdoc_phrase escape handling.
Added MDOC_IGNDELIM (Pf, soon Li, etc.).
macro_constant_delimited ignargs -> argv.c parsing.
Renamed macro functions to correspond to ontologies.
`Fo' and `St' made callable (compat documented).
strings.sh deprecated (directly using CPP).
Abstracted ASCII translation into ascii.{c,in}.
ASCII table uses a self-reordering chained hashtable.
Removed old regressions.

Revision 1.47 / (download) - annotate - [select for diffs], Thu Mar 12 16:30:50 2009 UTC (15 years ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_5_1
Changes since 1.46: +5 -3 lines
Diff to previous 1.46 (colored) to selected 1.116 (colored)

Added -nested (doesn't do anything).
Added .%C.
.Cd is now callable.
Added .Rv -std.

Revision 1.46 / (download) - annotate - [select for diffs], Wed Mar 11 00:39:58 2009 UTC (15 years ago) by kristaps
Branch: MAIN
Changes since 1.45: +5 -2 lines
Diff to previous 1.45 (colored) to selected 1.116 (colored)

Expanded perfect htab to use 27 * 26 * 3 space.
Added Brq, Bro and Brc macros.
Added lbrace and rbrace to special characters.
Fixed spacing in braces.

Revision 1.45 / (download) - annotate - [select for diffs], Mon Mar 9 14:19:59 2009 UTC (15 years ago) by kristaps
Branch: MAIN
Changes since 1.44: +4 -2 lines
Diff to previous 1.44 (colored) to selected 1.116 (colored)

Added `Mt' and `Lk' macros (NetBSD).

Revision 1.44 / (download) - annotate - [select for diffs], Mon Mar 9 13:17:49 2009 UTC (15 years ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_4_6, VERSION_1_4_5
Changes since 1.43: +3 -1 lines
Diff to previous 1.43 (colored) to selected 1.116 (colored)

Easier integration into FreeBSD (sys/types.h, time.h, etc.).

Revision 1.43 / (download) - annotate - [select for diffs], Mon Mar 9 13:04:01 2009 UTC (15 years ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_4_4
Changes since 1.42: +2 -1 lines
Diff to previous 1.42 (colored) to selected 1.116 (colored)

Added "Input Encoding" section to mdoc*.1.
Newline-escaped lines are concatenated.
Added -fign-macro option.

Revision 1.42 / (download) - annotate - [select for diffs], Sun Mar 8 20:57:35 2009 UTC (15 years ago) by kristaps
Branch: MAIN
Changes since 1.41: +3 -2 lines
Diff to previous 1.41 (colored) to selected 1.116 (colored)

Added `Lp' macro.

Revision 1.41 / (download) - annotate - [select for diffs], Sun Mar 8 20:50:12 2009 UTC (15 years ago) by kristaps
Branch: MAIN
Changes since 1.40: +3 -2 lines
Diff to previous 1.40 (colored) to selected 1.116 (colored)

Added .Ap.

Revision 1.40 / (download) - annotate - [select for diffs], Sun Mar 8 18:02:36 2009 UTC (15 years ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_4_2
Changes since 1.39: +6 -3 lines
Diff to previous 1.39 (colored) to selected 1.116 (colored)

Updated manuals.
Added -fign-scope and -fign-escape.

Revision 1.39 / (download) - annotate - [select for diffs], Sun Mar 8 13:52:29 2009 UTC (15 years ago) by kristaps
Branch: MAIN
Changes since 1.38: +3 -1 lines
Diff to previous 1.38 (colored) to selected 1.116 (colored)

mdocterm now using new API.

Revision 1.38 / (download) - annotate - [select for diffs], Sun Mar 8 11:41:22 2009 UTC (15 years ago) by kristaps
Branch: MAIN
Changes since 1.37: +21 -33 lines
Diff to previous 1.37 (colored) to selected 1.116 (colored)

BROKEN CHECK-IN.  Wide-ranging updates.
Removed libmdoc internal argv limit (all dynamic).
Removed "data" union in mdoc_node (to be selectively re-added).

Revision 1.37 / (download) - annotate - [select for diffs], Fri Mar 6 14:13:47 2009 UTC (15 years ago) by kristaps
Branch: MAIN
Changes since 1.36: +37 -157 lines
Diff to previous 1.36 (colored) to selected 1.116 (colored)

Strings abstracted into dynamically-created C files.
Added -V option.
Deprecated README files.

Revision 1.36 / (download) - annotate - [select for diffs], Mon Mar 2 12:09:32 2009 UTC (15 years ago) by kristaps
Branch: MAIN
Changes since 1.35: +2 -1 lines
Diff to previous 1.35 (colored) to selected 1.116 (colored)

Support for maxrmargin-breaking with TERMP_NOBREAK.
Tabs auto-converted to spaces.

Revision 1.35 / (download) - annotate - [select for diffs], Tue Feb 24 14:52:55 2009 UTC (15 years, 1 month ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_3_9, VERSION_1_3_8, VERSION_1_3_6, VERSION_1_3_5, VERSION_1_3_15, VERSION_1_3_13, VERSION_1_3_11, VERSION_1_3_10
Changes since 1.34: +4 -1 lines
Diff to previous 1.34 (colored) to selected 1.116 (colored)

Added several more mdocterm outputs.

Revision 1.34 / (download) - annotate - [select for diffs], Tue Feb 24 12:20:52 2009 UTC (15 years, 1 month ago) by kristaps
Branch: MAIN
Changes since 1.33: +1 -3 lines
Diff to previous 1.33 (colored) to selected 1.116 (colored)

Added character-encoding checks.

Revision 1.33 / (download) - annotate - [select for diffs], Mon Feb 23 09:33:34 2009 UTC (15 years, 1 month ago) by kristaps
Branch: MAIN
Changes since 1.32: +10 -4 lines
Diff to previous 1.32 (colored) to selected 1.116 (colored)

Considerable mdoc.3 documentation.
Added a few more escapes and macros.

Revision 1.32 / (download) - annotate - [select for diffs], Sun Feb 22 22:58:39 2009 UTC (15 years, 1 month ago) by kristaps
Branch: MAIN
Changes since 1.31: +3 -3 lines
Diff to previous 1.31 (colored) to selected 1.116 (colored)

BROKEN BUILD: migrating to mmain stuff.

Revision 1.31 / (download) - annotate - [select for diffs], Sun Feb 22 14:31:08 2009 UTC (15 years, 1 month ago) by kristaps
Branch: MAIN
Changes since 1.30: +2 -2 lines
Diff to previous 1.30 (colored) to selected 1.116 (colored)

Cleaned up validation source a bit.
Fixed `Nm' and `Nd' detection.
Added a few more terminal outputs.

Revision 1.30 / (download) - annotate - [select for diffs], Sat Feb 21 21:00:06 2009 UTC (15 years, 1 month ago) by kristaps
Branch: MAIN
Changes since 1.29: +9 -1 lines
Diff to previous 1.29 (colored) to selected 1.116 (colored)

Split mdocml -> mdocterm, mdoctree (new manuals, etc.).
Escape-recognition term.c.

Revision 1.29 / (download) - annotate - [select for diffs], Fri Feb 20 07:43:15 2009 UTC (15 years, 1 month ago) by kristaps
Branch: MAIN
Changes since 1.28: +16 -21 lines
Diff to previous 1.28 (colored) to selected 1.116 (colored)

Removed tree-writing capability (for now, only validates and exits).

Revision 1.28 / (download) - annotate - [select for diffs], Tue Jan 20 13:44:05 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_2_0
Changes since 1.27: +2 -1 lines
Diff to previous 1.27 (colored) to selected 1.116 (colored)

Re-merged old port-building routines.

Revision 1.27 / (download) - annotate - [select for diffs], Mon Jan 19 17:51:33 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.26: +6 -3 lines
Diff to previous 1.26 (colored) to selected 1.116 (colored)

More correct validation.
Elision of prologue macros from main tree.

Revision 1.26 / (download) - annotate - [select for diffs], Mon Jan 19 17:02:58 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.25: +4 -1 lines
Diff to previous 1.25 (colored) to selected 1.116 (colored)

Removed unnecessary test cases (most were for visual).
Finally fixed scope-rewinding (MDOC_VALID).

Revision 1.25 / (download) - annotate - [select for diffs], Sat Jan 17 16:15:27 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.24: +4 -5 lines
Diff to previous 1.24 (colored) to selected 1.116 (colored)

Documentation, more validations, cleaned up actions, added Nm action.

Revision 1.24 / (download) - annotate - [select for diffs], Sat Jan 17 14:04:25 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.23: +1 -4 lines
Diff to previous 1.23 (colored) to selected 1.116 (colored)

Separating output filters.

Revision 1.23 / (download) - annotate - [select for diffs], Fri Jan 16 12:23:25 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.22: +36 -7 lines
Diff to previous 1.22 (colored) to selected 1.116 (colored)

Clean-ups & documentation.

Revision 1.22 / (download) - annotate - [select for diffs], Thu Jan 15 17:38:57 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.21: +13 -57 lines
Diff to previous 1.21 (colored) to selected 1.116 (colored)

Broken build (changing err/warn/msg function prototypes for clarity).

Revision 1.21 / (download) - annotate - [select for diffs], Wed Jan 14 11:58:24 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
CVS Tags: VERSION_1_1_0
Changes since 1.20: +5 -1 lines
Diff to previous 1.20 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.20 / (download) - annotate - [select for diffs], Mon Jan 12 12:52:21 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.19: +8 -18 lines
Diff to previous 1.19 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.19 / (download) - annotate - [select for diffs], Mon Jan 12 10:31:53 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.18: +5 -1 lines
Diff to previous 1.18 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.18 / (download) - annotate - [select for diffs], Fri Jan 9 14:45:44 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.17: +4 -2 lines
Diff to previous 1.17 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.17 / (download) - annotate - [select for diffs], Thu Jan 8 14:55:59 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.16: +2 -2 lines
Diff to previous 1.16 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.16 / (download) - annotate - [select for diffs], Wed Jan 7 15:53:00 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.15: +7 -3 lines
Diff to previous 1.15 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.15 / (download) - annotate - [select for diffs], Mon Jan 5 17:57:08 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.14: +3 -2 lines
Diff to previous 1.14 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.14 / (download) - annotate - [select for diffs], Mon Jan 5 16:11:14 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.13: +7 -3 lines
Diff to previous 1.13 (colored) to selected 1.116 (colored)

Finished initial parse sequence.

Revision 1.13 / (download) - annotate - [select for diffs], Sat Jan 3 18:38:39 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.12: +6 -2 lines
Diff to previous 1.12 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.12 / (download) - annotate - [select for diffs], Fri Jan 2 14:06:16 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.11: +4 -2 lines
Diff to previous 1.11 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.11 / (download) - annotate - [select for diffs], Thu Jan 1 20:40:16 2009 UTC (15 years, 2 months ago) by kristaps
Branch: MAIN
Changes since 1.10: +3 -2 lines
Diff to previous 1.10 (colored) to selected 1.116 (colored)

Broke apart macro_prologuexxx into prologue.
Fixed validation for line-scoped.
Merged const_arg and const.

Revision 1.10 / (download) - annotate - [select for diffs], Tue Dec 30 19:06:03 2008 UTC (15 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.9: +2 -1 lines
Diff to previous 1.9 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.9 / (download) - annotate - [select for diffs], Mon Dec 29 19:25:29 2008 UTC (15 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.8: +2 -1 lines
Diff to previous 1.8 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.8 / (download) - annotate - [select for diffs], Mon Dec 29 18:08:44 2008 UTC (15 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.7: +20 -1 lines
Diff to previous 1.7 (colored) to selected 1.116 (colored)

More macros.

Revision 1.7 / (download) - annotate - [select for diffs], Mon Dec 29 12:19:41 2008 UTC (15 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.6: +2 -2 lines
Diff to previous 1.6 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.6 / (download) - annotate - [select for diffs], Sun Dec 28 23:07:04 2008 UTC (15 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.5: +2 -1 lines
Diff to previous 1.5 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.5 / (download) - annotate - [select for diffs], Sun Dec 28 00:34:20 2008 UTC (15 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.4: +12 -5 lines
Diff to previous 1.4 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.4 / (download) - annotate - [select for diffs], Tue Dec 23 05:30:49 2008 UTC (15 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.3: +10 -2 lines
Diff to previous 1.3 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.3 / (download) - annotate - [select for diffs], Wed Dec 17 17:18:38 2008 UTC (15 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.2: +21 -10 lines
Diff to previous 1.2 (colored) to selected 1.116 (colored)

Prologue Dd and Dt macros.

Revision 1.2 / (download) - annotate - [select for diffs], Mon Dec 15 03:13:01 2008 UTC (15 years, 3 months ago) by kristaps
Branch: MAIN
Changes since 1.1: +92 -2 lines
Diff to previous 1.1 (colored) to selected 1.116 (colored)

*** empty log message ***

Revision 1.1 / (download) - annotate - [select for diffs], Mon Dec 15 01:54:58 2008 UTC (15 years, 3 months ago) by kristaps
Branch: MAIN
Diff to selected 1.116 (colored)

Purged all old files in favour of new design.  Selective reintegration.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb