tech@mandoc.bsd.lv
 help / color / mirror / Atom feed
From: Kristaps Dzonsons <kristaps@bsd.lv>
To: tech@mdocml.bsd.lv
Subject: mandoc(3) re-write experiment time
Date: Wed, 15 Aug 2012 17:28:51 +0200	[thread overview]
Message-ID: <502BC033.5070205@bsd.lv> (raw)

[-- Attachment #1: Type: text/plain, Size: 1404 bytes --]

Hello folks,

Enclosed is a tarball of a bare-bones mandoc(3) re-write addressing some 
long-standing issues.  DON'T PANIC!!11!!  This is just an experiment in 
design.  In short, I wanted to significantly increase roff(7) cutting 
power while redressing

  1. the illusion that roff(7) and mdoc(7)/man(7) parsing can be 
separated without severe roff(7) limitations; and

  2. the unnecessary (?) separation of mdoc(7) and man(7) ASTs, when 
man(7) could be fit into a single AST.

Some minor points are support for wchar_t, gzip'd files, recursive (and 
not reentrant) parsing, unified table routines (espie@'s ohash), and 
neatly parsed line arguments for macro handlers.

The README file lays out the file structure, general methodology, and 
implemented macros (only roff(7) right now).

If (and this is a huge, monstrous, overarching IF) this ends up being 
palatable, I'd have it produce an AST such that the front-ends could 
stay more-or-less as they are.  In other words, while I can envision a 
core re-write, the very concept of re-writing -Tascii drives me to a 
choking despair.  Somewhere in Germany, schwarze@ is filled with dread 
when I write the words "-Tascii rewrite". ;)

Anyway, over the next few weeks I'll bring in some mdoc(7) and man(7) 
support, both of which will output to a unified AST.  I'll post the 
resulting tarball here when I've done so.

Thoughts?

Best,

Kristaps

[-- Attachment #2: mdocml2.tar.gz --]
[-- Type: application/x-gzip, Size: 19042 bytes --]

                 reply	other threads:[~2012-08-15 15:28 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=502BC033.5070205@bsd.lv \
    --to=kristaps@bsd.lv \
    --cc=tech@mdocml.bsd.lv \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).