CVS log for docbook2mdoc/node.c

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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.28 / (download) - annotate - [select for diffs], Wed May 1 12:52:05 2019 UTC (4 years, 10 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_1_0, HEAD
Changes since 1.27: +2 -1 lines
Diff to previous 1.27 (colored)

handle <funcparams> inside <paramdef> inside <funcprototype>
(used for giving full function prototypes inside parameter lists
of functions taking function pointer arguments)
by enclosing them in parentheses inside the .Fa macro

Revision 1.27 / (download) - annotate - [select for diffs], Wed May 1 11:34:20 2019 UTC (4 years, 10 months ago) by schwarze
Branch: MAIN
Changes since 1.26: +2 -1 lines
Diff to previous 1.26 (colored)

print commas between Copyright years

Revision 1.26 / (download) - annotate - [select for diffs], Sun Apr 28 20:26:49 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_0_2
Changes since 1.25: +2 -1 lines
Diff to previous 1.25 (colored)

Parse <abstract> and treat it like a <section>;
when it occurs inside an info element, move it out
and put it before the first section of the page.

Revision 1.25 / (download) - annotate - [select for diffs], Sun Apr 28 15:32:05 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.24: +12 -1 lines
Diff to previous 1.24 (colored)

provide a simple function to generate a text node

Revision 1.24 / (download) - annotate - [select for diffs], Sun Apr 28 15:03:29 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.23: +7 -7 lines
Diff to previous 1.23 (colored)

In this program, there is never a need to survive memory allocation
failure, and there are many places allocating memory.  Consequently,
the code can be simplified providing memory allocation functions
that error out on failure, in the conventional way.

Revision 1.23 / (download) - annotate - [select for diffs], Sun Apr 21 14:48:11 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_0_1
Changes since 1.22: +2 -1 lines
Diff to previous 1.22 (colored)

Implement <void> child of <funcprototype>.
Also treat <tag> just like <sgmltag> and <markup>.
Some small parts of this patch were sent in by
Stephen Gregoratto <dev at sgregoratto dot me>.

Revision 1.22 / (download) - annotate - [select for diffs], Tue Apr 16 21:21:27 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
CVS Tags: VERSION_1_0_0
Changes since 1.21: +2 -1 lines
Diff to previous 1.21 (colored)

translate <productname> to .Sy

Revision 1.21 / (download) - annotate - [select for diffs], Tue Apr 16 14:58:19 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.20: +5 -5 lines
Diff to previous 1.20 (colored)

preserve leading whitespace in no-fill mode

Revision 1.20 / (download) - annotate - [select for diffs], Mon Apr 15 19:15:19 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.19: +2 -1 lines
Diff to previous 1.19 (colored)

Minimal translation of <xref> to .Sx.
This might need refinement in the future, but that won't be easy because
the element is horribly underspecified and the usage is practice is very
inconsistent.

Revision 1.19 / (download) - annotate - [select for diffs], Mon Apr 15 00:34:15 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.18: +5 -1 lines
Diff to previous 1.18 (colored)

The <olink> element is woefully underspecified, so the various
attributes may be used quite differently in different documents,
but let's try a basic translation anyway.

Revision 1.18 / (download) - annotate - [select for diffs], Sun Apr 14 22:37:56 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.17: +4 -1 lines
Diff to previous 1.17 (colored)

Rudimentary implementation of <imagedata> by printing the filename.
Ignore the wrappers <caption>, <figure>, <imageobject>, <mediaobject>.

Revision 1.17 / (download) - annotate - [select for diffs], Sun Apr 14 21:11:04 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.16: +2 -2 lines
Diff to previous 1.16 (colored)

The is no perfect way to render <footnote> in mdoc(7).
For now, use .Bo/.Bc as a full block.

Revision 1.16 / (download) - annotate - [select for diffs], Sun Apr 14 20:13:25 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.15: +3 -1 lines
Diff to previous 1.15 (colored)

render <superscript> and <subscript> with \(ha and _

Revision 1.15 / (download) - annotate - [select for diffs], Sun Apr 14 18:07:35 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.14: +4 -8 lines
Diff to previous 1.14 (colored)

Minor improvements to the handling of some meta-information:
* Translate <simplesect> and <legalnotice> to .Ss or lower.
* Do not uppercase high-level <note> and similar elements.
* Handle <subtitle> like stand-alone <title>.
* Handle <editor> by the <author> handler function.
* Make <copyright> print "Copyright (C)".
* Ignore some transparent nodes.

Revision 1.14 / (download) - annotate - [select for diffs], Sun Apr 14 14:00:16 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.13: +1 -2 lines
Diff to previous 1.13 (colored)

Minor improvements for some inline elements:
* New aliases <keycap> and <property>.
* Make <application> an alias for <command>.
* Ignore <keycode> and <returnvalue>.

Revision 1.13 / (download) - annotate - [select for diffs], Sat Apr 13 15:54:45 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.12: +6 -2 lines
Diff to previous 1.12 (colored)

rudimentary implementation of <systemitem>

Revision 1.12 / (download) - annotate - [select for diffs], Sat Apr 13 13:06:35 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.11: +17 -1 lines
Diff to previous 1.11 (colored)

Improve the proplogue:
* Use <pubdate> or <date> for .Dd.
* Clean up the way how <title> from <bookinfo> is used for .Nd.
* Treat <articleinfo> just like <bookinfo>.

Revision 1.11 / (download) - annotate - [select for diffs], Fri Apr 12 19:14:50 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.10: +15 -3 lines
Diff to previous 1.10 (colored)

Implement lint and tree dump output modes.
Thanks to the previously committed node property infrastructure
in node.c, this needs only 110 lines of code (including the license
and the documentation).

Revision 1.10 / (download) - annotate - [select for diffs], Fri Apr 12 16:40:53 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.9: +150 -1 lines
Diff to previous 1.9 (colored)

Infrastructure to access node properties
that can be used by both the parser and the formatter.
Use it to decide whether a text node needs .Pf before a macro,
whether the first word of a text node needs to be split off after
a macro, and whether a macro node can suppress the SPACE flag.

Revision 1.9 / (download) - annotate - [select for diffs], Fri Apr 12 04:39:24 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.8: +15 -1 lines
Diff to previous 1.8 (colored)

New function pnode_alloc() to reduce code duplication.
No functional change.

Revision 1.8 / (download) - annotate - [select for diffs], Thu Apr 11 04:23:22 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.7: +2 -2 lines
Diff to previous 1.7 (colored)

Introduce FMT_* formatter flags to control what can be added to the
current macro line.  Move trailing punctuation handling to the text
formatter, allowing elimination of the function macro_closepunct()
and of the "real" and "bsz" members from struct node.
Substantial functional improvements, yet minus 25 lines of code.

Revision 1.7 / (download) - annotate - [select for diffs], Wed Apr 10 14:22:37 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.6: +41 -41 lines
Diff to previous 1.6 (colored)

Consitently use for function arguments:
struct parse *p, struct format *f, struct pnode *n, struct pattr *a

Consistently use struct pnode *nc, *nn, *np
for child, next, and previous nodes, respectively.

I admit this makes commit history a bit harder to inspect,
but i think seeing at once what variables mean is worth it.

Revision 1.6 / (download) - annotate - [select for diffs], Tue Apr 9 01:39:09 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.5: +2 -1 lines
Diff to previous 1.5 (colored)

implement file inclusion via <xi:include>

Revision 1.5 / (download) - annotate - [select for diffs], Mon Apr 8 14:37:31 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.4: +5 -1 lines
Diff to previous 1.4 (colored)

Handle DOCTYPE declarations containing ENTITY definitions.
Also make <sbr> self-closing even without a trailing slash.

Revision 1.4 / (download) - annotate - [select for diffs], Sun Apr 7 17:00:56 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.3: +5 -2 lines
Diff to previous 1.3 (colored)

better handling of <link> and <ulink> elements
including endterm=, linkend=, url=, and xlink:href= attributes

Revision 1.3 / (download) - annotate - [select for diffs], Wed Apr 3 11:46:09 2019 UTC (4 years, 11 months ago) by schwarze
Branch: MAIN
Changes since 1.2: +2 -1 lines
Diff to previous 1.2 (colored)

Prints tables containing only one column as .Bl -bullet -compact.
The number of columns is taken from the "cols" attribute.

No neat to treat <informaltable> separately from <table>;
the only difference is whether or not it has a title.

Treat <table> as transparent and handle <tgroup> instead.
The advantages are that <title> gets a generic handler
which also works in other contexts
and that other children of <table> are now covered as well.

Revision 1.2 / (download) - annotate - [select for diffs], Thu Mar 28 12:21:10 2019 UTC (5 years ago) by schwarze
Branch: MAIN
Changes since 1.1: +3 -3 lines
Diff to previous 1.1 (colored)

The expat library aborts parsing as soon as it encounters invalid
input, and the basic design of the library practically precludes
fixing it.  However, whether the input is well-formed XML or not
is totally irrelevant, and in fact, i have seen real-world documents
from X.org that expat rejects as not well-formed.  Kristaps reports
the same from OpenGL.

We really want to parse *ANYTHING* whatsoever without ever throwing
a fatal error - after all, the point is to convert legacy documents
to a better format, and nitpicking about the syntax merely alienates
users (including myself).

Consequently, ditch expat and write a parser from scratch, optimized
for robustness on invalid input.

Oh, and by the way, it only requires 200 lines of code,
compared to 15,000 lines in expat - an economy of 98.5%
at the sime time as being much more useful in practice.

Revision 1.1 / (download) - annotate - [select for diffs], Tue Mar 26 18:32:07 2019 UTC (5 years ago) by schwarze
Branch: MAIN

The program docbook2mdoc(1) has become large enough that splitting
it into a number of logical components makes sense: node tree,
parser, formatter, each with interface and implementation, and the
main program.  That way, it becomes easier to see what interacts
with what, and what is independent of what.

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