Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
XSLT Python Shell Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
This is a project to make it possible to use LyX , a WYSIWYM  editor based on LaTeX, to edit Internet-Drafts (and, if the RFC-Editor ever wanted to, RFCs). It works by converting LyX documents to xml2rfc's XML schema, then applying xml2rfc and/or the Greenbytes XSL template. Currently the project is quite functional; several Internet-Drafts have been authored with LyX. Lyx2rfc consists of an XSLT 2.0 template to convert LyX XHTML output to the xml2rfc schema, at which point the xml2rfc tool is run to typeset in any of the normal I-D/RFC formats (text, HTML, and PDF). The lyx2rfc script automates all of this work and integrates with LyX by a) telling LyX about RFC formats, b) telling LyX how to convert between LyX and RFC formats (this is as simple as appending a few lines to ~/.lyx/preferences). In order to use this one must add some custom inset definitions from the custom_insets file to one's LyX document. These custom insets are used to handle metadata needed by xml2rfc but not provided by LyX: draftname, intended status, and so on, as well as author metadata, and xml2rfc processing instructions. See the user guide for more information: lyx2rfc-user-guide (in this same directory). The user guide is itself written in LyX and rendered with xml2rfc as a private document (i.e., not as an Internet-Draft, to avoid the I-D boilerplate). Also provided is a dummy Internet-Draft: test-i-d. INSTALL ------- See the User Guide. Basically: install LyX, docbook-sgml, and Saxon packages, run LyX, Tools->Reconfigure, append format and conversion specifications to ~/.lyx/preferences, restart LyX, and you're ready to edit. TODO ---- - Add iref support? It'd be pretty easy, but I've never seen an Internet-Draft or RFC with an index! - Rewrite lyx2rfc in Python so it works on Windows too - Make lyx2rfc copy DTDs to the LyX temporary working directory - Provide a mechanism for updating ~/.lyx/preferences to define RFC formats and conversions - Absorb Yaron's packaging of lyx2rfc - Add support for figures with graphic and text variants? - Add support for automatic SVG<->ASCII art? (and image carmelization?) - Add support for using bibtex instead of / in addition to bibxml?? This would require first providing a bibxml->bibtex conversion, which would be most easily done through bibutils and some XSL to convert bibxml to mods. Next we'd have to provide a way to sort references into references sections, since LyX only supports a single references section (or multiple ones, but not with different titles). The advantage of this would be that we'd be using more native LyX support and fewer custom insets, but the disadvantage is clear: it'd be a lot more work to add references to a document (or more work to keep the bibtex DBs in sync with the bibxml DBs)! BUGS: - Empty lines in code listings (used for ASCII figures) must have at least one space character, else the LyX export to XHTML function fails miserably. - LyX does not pass through any table column widths. Besides, LyX lets the user set column widths only in centimeters, while xml2rfc allows only percentages. Since the XSLT won't see any column width, there's nothing we can do. Still, we could add a custom inset by which to specify column widths in percentage and render that into xml2rfc's schema.  http://www.lyx.org/  What You See Is What You Mean.