* mdocml version 1.11.5 available
@ 2011-07-24 19:18 Kristaps Dzonsons
0 siblings, 0 replies; only message in thread
From: Kristaps Dzonsons @ 2011-07-24 19:18 UTC (permalink / raw)
To: discuss
[-- Attachment #1: Type: text/plain, Size: 650 bytes --]
Hello,
I'm pleased to announce mdocml 1.11.5, now at http://mdocml.bsd.lv/.
This release features full eqn parsing (as of the Second Edition Eqn
User's Guide, 1978). The mandocdb (nee makewhatis) utility is also
significantly improved and brought in line with other makewhatis
invocations.
This is also the first release distributed with a win32 binary!
For a full list of changes, see the attached ChangeLog. An abbreviated
list of changes is on the NEWS section of the web-site.
As usual, sources are at http://mdocml.bsd.lv/snapshots/mdocml.tar.gz.
Binaries are at http://mdocml.bsd.lv/binaries/mdocml-win32.zip.
Thanks,
Kristaps
[-- Attachment #2: ChangeLog --]
[-- Type: text/plain, Size: 10774 bytes --]
2011-07-24 15:08 kristaps
* index.sgml: Slip in a typo.
2011-07-24 15:03 kristaps
* Makefile, index.sgml: We're officially no longer UNIX-specific;
make this clear.
2011-07-24 14:15 kristaps
* Makefile, compat.c, compat_getsubopt.c, compat_strlcat.c,
compat_strlcpy.c, config.h.post, man_hash.c, man_validate.c,
mandoc.c, mdoc_hash.c, mdoc_validate.c, out.c, preconv.c,
test-getsubopt.c, test-strptime.c: Scary-looking but otherwise
harmless changes allow me to build for Windows. That is to say,
with mingw32. This amounts to the following:
(1) break compat.c into compat_strlcpy.c and compat_strlcat.c
(2) add compat_getsubopt.c (from OpenBSD) and test-getsubopt.c
(3) add test-strptime.c for HAVE_STRPTIME
(4) add ifdef bits here and there, where necessary
(5) remove some harmless unportable stuff (u_char, localtime_r)
I've added the appropriate mdocml.zip target to the Makefile,
too.
2011-07-24 06:09 kristaps
* Makefile, eqn_html.c, eqn_term.c, index.sgml: Tuned the initial
eqn output, making it completely simple. This completes a full
initial eqn system, so I'm tagging a release on it.
2011-07-23 18:57 kristaps
* Makefile, eqn_html.c, eqn_term.c, html.h, man_html.c,
mdoc_html.c: Flip on equation printing for -T[x]html.
2011-07-23 15:04 kristaps
* eqn.7: Clarify what eqn actually is.
2011-07-23 14:44 kristaps
* eqn.7, eqn.c, mandoc.h: Note GNU extensions in eqn.7. Also add
`col' and `pile', which are mentioned briefly in the eqn User's
Manual, but otherwise are unspecified.
2011-07-23 14:41 kristaps
* eqn.7, eqn.c, index.sgml, libroff.h, mandoc.h, read.c, roff.c:
Add support for tdefine and ndefine. Consolidate some error
messages. Add somem more version notes (getting there). Have
the equation nanme be captured.
2011-07-23 09:31 kristaps
* eqn.c: Raise a warning when text follows the `EN'.
2011-07-23 08:10 kristaps
* eqn.7, eqn.c, mandoc.h: Add `fat' font. This pretty much brings
us in line with the second edition of eqn.
2011-07-23 08:08 kristaps
* eqn.7, eqn.c: Ignore `back', `fwd', `up', `down', `mark', and
`lineup'.
2011-07-23 08:01 kristaps
* eqn.7, eqn.c, eqn_term.c, mandoc.h, tree.c: Add matrix support.
Also remove "above" notion, as all elements in a list are
delimited by their "aboveness" and it's superfluous.
2011-07-23 05:47 kristaps
* eqn.7, eqn.c, index.sgml: The circumflex is also a special space
character. Note this and clean up some documentation in eqn.7.
Also add some version notes, although I'm not ready for a release
yet.
2011-07-22 10:59 kristaps
* eqn.7, eqn.c: Check for and throw away `gfont' eqn macros.
2011-07-22 10:55 kristaps
* eqn.7, eqn.c, libroff.h, mandoc.h, read.c: Add support for
`gsize' eqn token (introduced in second-edition troff).
2011-07-22 10:26 kristaps
* eqn.7, eqn.c: Add all rendered symbols used by eqn. I use the
Second-Edition User's Manual (1978) for this, so it should catch
most of them. They just map into the mandoc_char escaped
characters.
2011-07-22 10:15 kristaps
* chars.c, chars.in, mandoc_char.7: Add support for 1/2, 1/4, and
3/4 (needed by eqn).
2011-07-22 09:48 kristaps
* eqn.7: Clearer documentation of grammar in eqn.7 and addition of
Greek symbols.
2011-07-22 09:40 kristaps
* eqn.c: Support translating Greek characters in eqn.
2011-07-22 08:55 kristaps
* eqn.7, eqn.c: Fix left/right nesting in eqn.
2011-07-22 06:50 kristaps
* Makefile, eqn_term.c, man_term.c, mdoc_term.c, term.h: Add
character output (-Tpdf, -Tps, -Tascii) for equations. This is
the minimum: unseparated terms.
2011-07-22 06:36 kristaps
* eqn.c: Protect macro expansion.
2011-07-22 06:22 kristaps
* eqn.c: Use a macro instead of doing a string-fragment compare. I
just get worried that I'm going to write the wrong size on both
sides of the equality (I've already done it a few times). This
cleans up the code readability a bit.
2011-07-22 05:57 kristaps
* eqn.c, mandoc.h, tree.c: Give lists their own eqn function.
2011-07-21 20:16 kristaps
* eqn.c: Accomodate for hard-spaces with tildes. For now, consider
them regular spaces. Also allow for tabs. Finally, have the
parser correctly handle open and close brackets smooshed against
other terms. All of these handle "details" noted in the CACM
paper.
2011-07-21 19:42 kristaps
* eqn.c: Fix eqn handling of PILE clauses (multiple ABOVE
statements may be specified for each PILE).
2011-07-21 19:30 kristaps
* eqn.7, eqn.c, libroff.h, mandoc.c, mandoc.h, read.c, tree.c:
Complete eqn.7 parsing. Features all productions from the
original 1975 CACM paper in an LR(1) parse (1 -> eqn_rewind()).
Right now the code is a little jungly, but will clear up as I
consolidate parse components. The AST structure will also be
cleaned up, as right now it's pretty ad hoc (this won't change
the parse itself). I added the mandoc_strndup() function will
here.
2011-07-21 11:21 kristaps
* chars.c, eqn.7, eqn.c, libmandoc.h, mandoc.c, mandoc.h, roff.c,
tree.c: Support `size' constructs in eqn.7. Generalise
mandoc_strontou to this effect.
2011-07-21 10:13 kristaps
* eqn.7, eqn.c, mandoc.h, tree.c: Full support for eqn positionals
(above, over, sup, sub, etc.).
2011-07-21 09:37 kristaps
* eqn.7, eqn.c, mandoc.h, tree.c: Add eqn subexpression fonts.
2011-07-21 09:18 kristaps
* eqn.7, eqn.c, mandoc.h, tree.c: Add support for markers. These
decorate the last box: see eqn.7.
2011-07-21 08:34 kristaps
* eqn.7: Document `{, }' subexpressions in eqn.7.
2011-07-21 08:30 kristaps
* eqn.c, mandoc.h, read.c, tree.c: Support nested `{, }'
subexpressions in eqn. Document in code.
2011-07-21 07:57 kristaps
* eqn.7, eqn.c: Make `undef' not expand its argument before
undefining it. Document this and have the same behaviour apply
to `set' and `define'.
2011-07-21 07:34 kristaps
* eqn.7, eqn.c, man_html.c, man_term.c, mandoc.h, mdoc_html.c,
mdoc_term.c, tree.c: Flip eqn into using parsed nodes. I've
temporarily disabled printing these in the front-ends except for
-Ttree, which will display the parsed tree.
While here, fix that quoted strings aren't scanned for
replacement parts.
2011-07-21 06:24 kristaps
* eqn.7, eqn.c, libroff.h, man.c, mandoc.h, mdoc.c, roff.c: Finish
the eqn syntactic parser. This correctly parses terms and does
the proper `define' dance, which amounts to pure word-replace
(you can, say, define `foo' as `define' then define `define' as
something else). eqn.c is now ready for some semantic parsing of
`box' and `eqn' productions as defined by the grammar.
2011-07-18 10:30 kristaps
* mandoc.h, read.c: Forgot to add these bits to the last commit.
2011-07-18 09:47 kristaps
* eqn.7: Note that equation definitions are nestable.
2011-07-18 09:35 kristaps
* eqn.c: Definitions in eqn.7 are actually recursive. Do this and
add crude protection that we don't nest back to ourselves.
2011-07-18 06:23 kristaps
* mdoc.7: Clarify up `Rv' and `Ex' documentation.
2011-07-18 03:48 kristaps
* libman.h, libmdoc.h: Follow-up: forgot to remove useless regset
structs.
2011-07-18 03:46 kristaps
* Makefile, libman.h, libmandoc.h, libmdoc.h, man.c, mdoc.c,
mdoc_validate.c, read.c, roff.c: Make `struct roff' be passed
into libmdoc and libman upon creation. This is required for
supporting in-line equations. While here, push registers
properly into roff and add an set/get/mod interface.
2011-07-17 11:43 kristaps
* tbl_html.c, tbl_term.c: Fix copyright email.
2011-07-17 11:24 kristaps
* out.c, out.h: Remove unused function.
2011-07-17 10:15 kristaps
* eqn.c: Fix lost allocation.
2011-07-17 10:11 kristaps
* Makefile, eqn.c: Remember to NULL-ify new keys/vals.
2011-07-17 10:08 kristaps
* eqn.7, eqn.c, mandoc.h, read.c: Provide implementations of
`define', `set', and `unset'. Tie them into the stream of data.
Document these appropriate, bringing in the grammar as defined by
the original eqn manual (Kernighan/Richie).
2011-07-17 08:52 kristaps
* eqn.c, mandoc.h, read.c: Warn if equation `define' key is quoted
(groff-ism).
2011-07-17 08:13 kristaps
* eqn.c, libroff.h, roff.c: Add initial `define' support for
eqn(7). This works by iterating over a simple list. It's a
slow, auditable early implementation. Data is read (the reading
function will be reused) then parsed, then the line re-run if
remaining stuff exists. Note this function isn't the same as
mandoc_getarg(), as eqn(7) uses a different system for reading
quoted strings. This doesn't actually use the defines.
2011-07-17 07:14 kristaps
* libmandoc.h: Remove prototype since moved into mandoc.h.
2011-07-15 16:40 schwarze
* mdoc.7: improve documentation of .Bl -column .It Ta using
feedback from kristaps@, ok jmc@
2011-07-15 13:59 kristaps
* mandocdb.8, mandocdb.c: Big step forward in bringing mandocdb in
line with most makewhatis-type systems.
2011-07-15 06:15 kristaps
* mandocdb.8, mandocdb.c: First step of making mandocdb a true
makewhatis/mandb replacement: accept a set of directories on the
command line ("manpaths") that are recursed for files. The
databases are created in each manpath root. This temporarily
removes OP_UPDATE and OP_DELETE functionality, which will be
added back in.
2011-07-15 06:14 kristaps
* mandoc.h: Expose mandoc_strdup() to the outside world.
2011-07-15 05:06 kristaps
* mandocdb.c: Move parts of mandocdb that "do stuff" to the
databases into their own functions. This will make it easier to
call repeatedly (for different directoreis) as must be done with
the new interfaces being developed.
2011-07-14 13:32 kristaps
* makewhatis.1, makewhatis.c: Apparently these weren't removed
properly...
2011-07-14 10:36 schwarze
* Makefile, index.sgml, mandocdb.1, mandocdb.8, mandocdb.c: move
mandocdb(1) to mandocdb(8) "please make this change" kristaps@
2011-07-14 06:57 kristaps
* Makefile, index.sgml, mandocdb.1, mandocdb.c: Rename makewhatis
[back] into mandocdb. This is to maintain consistency with
OpenBSD, which is sandboxing the code for merge. It makes sense
because it doesn't really make a `makewhatis' file in the
traditional sense, so it may be confusing.
2011-07-12 17:32 kristaps
* eqn.c, libroff.h, roff.c: Have equation be allocated with mparse.
Will be needed for logging of messages.
2011-07-12 11:26 kristaps
* makewhatis.c: Re-ordered logic in makewhatis to iterate over the
index file only once. This is much more efficient.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2011-07-24 19:18 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-07-24 19:18 mdocml version 1.11.5 available Kristaps Dzonsons
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).