() l...@gnu.org (Ludovic Courtès) () Mon, 13 Aug 2012 14:48:17 +0200 > It would be cool if Texinfo were able to produce SXML, a format > directly translatable to/from XML, directly.
Honestly, with Guile 2, translating from XML to SXML boils down to calling ‘xml->sxml’, which is easy enough. I didn't want to overstate the case, but what you say is true enough. If the XML backend didn’t already exist, I would suggest using a custom sexp-based format instead, though. That would be easier than SXML for elisp, which doesn’t have tools like sxml-match. What is ‘sxml-match’ and how would a renderer use it? Anyway, some custom is required; SXML alone is insufficient. I think full custom is not indicated, however; SXML is fine for some parts. Anyone interested in looking over a full-custom sexp-based document extraction / interpolation system (that feeds makeinfo), please see: http://www.gnuvola.org/software/guile-baux/ To play, install Guile (1.8.7 seems ok) and do: git clone http://www.gnuvola.org/software/guile-baux.git cd guile-baux make then look at doc/snippets, which is a "texinfo snippet archive". Its format is undocumented, but you can get a rough idea by looking at the documentation for module ‘(guile-baux ts-base)’, which is the one that actually slides the sexps to/from disk. Next, modify the comment preceding some module's exported procedure and invoke make again, to trace the change propagation (not only to snippets but also beyond, to guile-baux.info). To get back on topic, the points i wish to demonstrate are: (a) indexing requires integers; (b) full-custom requires more code than some-custom; (c) interpolation and rendering have similar data access patterns and thus similar data format requirements (IMHO, one is a special case of the other, but i'm not sure which is which!). -- Thien-Thi Nguyen ..................................... GPG key: 4C807502 . NB: ttn at glug dot org is not me . . (and has not been since 2007 or so) . . ACCEPT NO SUBSTITUTES . ........... please send technical questions to mailing lists ...........
pgpCDLbiNqmew.pgp
Description: PGP signature