[NTG-context] How could a typesetting system be today?
Henning Hraban Ramm
hraban at fiee.net
Fri Jun 13 19:26:33 CEST 2008
Am 2008-06-12 um 20:26 schrieb Maurí cio:
> The reason for a standard tag language is that the main engine
> should be able to do some operations on data, like breaking it in
> pieces like words, paragraphs or staffs on music scores, sometimes
> without fully understanding what exactly those are.
> Possible outcomes: with a proper script language (Lua?),
> things like tables, multi-column text, and even a lot of crazy
> ideas could be really easy to write. Plug-ins results would be
> predictable, since they know nothing about the world except what
> the main engine has informed them.
As far as I can judge, music typesetting has completely different
rules than text typesetting.
Ok, you would "just" use another plugin.
But then the plugins need a way to interact: captions in graphics
(like in MetaPost today), lyrics in music etc.
I myself wouldn't probably able to handle a MetaPost based system (or
something similar) - even if I "speak" a bit of PostScript, I just
don't think of graphics as formulae: To create e.g. an eye-shape, I
can place two circles in Illustrator (or any other GUI program) and
make an intersection. But I couldn't do the same programmatically,
even if I approximately know what to do in this case.
(You could answer to my mail on command lines, I should please try to
become mathematically literate.)
However, you need different parsers for different types of content -
and at least the LilyPond folks would strongly suggest that some Lisp
dialect is the right language for anything that needs parsing. I guess
you know the quote that everyone who writes a parser will end re-
creating a buggy subset of Lisp. (I don't speak Lisp. I don't speak
TeX-the-language or Lua as well. But the latter seems easy.)
I guess that's a inconvenience with TeX/MetaPost/LilyPond: they use
similar, but different tagging, and those don't mix very well, esp.
LilyPond with its Scheme snippets (I don't appreciate the use of
single ' for strings and # for constants...). (Similar to HTML/PHP/
Of course you could use the same kind of tagging for all the different
types of content - I guess you will end with something like
OpenDocument (OOo.XML), that uses SVG for the graphics.
Oh, and don't forget MathML (and the other XML dialects like PhysML
and ChemML). Hm, perhaps we should embed MusicXML instead of LilyPond...
You see: There is your unified system. XML rulez - for better or for
worse. It's really no fun to write XML by hand.
Perhaps you should try to help enhancing OpenOffice's typesetting? #
Or Scribus? I heard Scribus has TeX boxes of late: A GUI DTP
application where some boxes get rendered by LaTeX (meant for
formulae, of course).
AFAIK Scribus' file format is also XML-based. And maybe they even
support plugins for more different boxes...
Greetlings from Lake Constance!
https://www.cacert.org (I'm an assurer)
More information about the ntg-context