groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Groff] XML and groff as frontend


From: Larry Kollar
Subject: Re: [Groff] XML and groff as frontend
Date: Sun, 23 Oct 2005 18:30:28 -0400


You use a totally different tool (Vim) to help another tool that's
supposedly made to help you with XML (FrameMaker).

Yes, but in this case I'm using vim (or rather, piping blocks of
text into shell scripts from vim) to throw down the essential
markup: I can do something like "8!!mks" to: wrap 8 lines of
text in <section></section>, wrap the first line in <label></label>,
and wrap the other lines in <p></p>. Dealing with character-
level markup isn't nearly as automatic, although Vim's XML
plugin makes it no more difficult than doing the job in Frame.

XML was never intended as an input language for human use but as a
*human readable* machine-level data representation. On the other hand,
troff, TeX and the macro packages built upon them are low/middle level
languages that a human is expected to write and understand.

I find the present day fascination with HTML/XML as another
manifestation of the proverbial "he who only knows to use a hammer,
thinks that every problem is a nail". A good dose of SGML hand-coding
should sober up anyone any day.

As I understand it, XML is simply SGML minus tag minimization
plus Unicode. The first SGML spec was released around 1980,
and the tag minimization features were there to make it easier
to hand-code. I saw an example that looked like this:

   <sect>
   Frobnicating the Widget
   <p>Blah chatter wibble...

The DTD, in this case, was designed so that the first element
inside <sect> is <head>, which is followed by <p> (and other
elements). Knowing this, the SGML parser could infer that
anything between the <sect> and <p> tags is a <head> element
and therefore didn't have to be marked as such. Other shortcuts
included </> to close the last open tag.

Ideally, people using XML won't have to work directly with
markup... thus, tag minimization wasn't considered important.

But I agree with Alejandro that *roff is a nearly ideal markup
language for hand-coding (I consider *TeX to be too verbose
as well). The short commands don't get in your way and let
you add markup while you're typing with little or no distraction.

--
Larry Kollar     k  o  l  l  a  r  @  a  l  l  t  e  l  .  n  e  t
Unix Text Processing: "UTP Revival"
http://home.alltel.net/kollar/utp/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]