LaTeX constructions converted by vulcanize

Vulcanize performs the following transformations on LaTeX documents:
  1. It removes comments.
  2. It inserts paragraph break tags where appropriate.
  3. It translates enumerated and itemized lists to ordered and unordered lists, respectively. It translates description environments to description lists.
  4. It translates quotation and quote environments to blockquotes.
  5. It translates verbatim and verse environments to preformatted text blocks, and partially converts tabbing environments to preformatted text, although it doesn't convert the tabulation characters themselves.
  6. It converts ", &, <, and >, and various LaTeX escapes like \%. It converts \ldots. It converts ~ to a breakable space, but this will be fixed when mosaic for X supports non-breakable spaces.
  7. It translates accented characters such as Åöé when possible.
  8. It converts \\ to <br>, which is usually, though not always correct.
  9. It converts some instances of \verb.
  10. It converts \em, \bf, \it, and \tt, and the \begin...\end versions of these, and discards \/. It translates \sc text to capitalized text.
  11. It discards \noindent.
  12. It converts \section, \subsection, and \subsection tags to headers.
  13. It replaces \label-\ref pairs with anchors and links, and \index tags with links. It replaces \footnote tags with links to the footnote texts, which it appends at the bottom of the document.
  14. It appends title and header fields to the beginning, and your address to the end.
Some basic and important things that vulcanize will never be able to convert:
  1. Centered, justified, or ragged-left environments.
  2. Anything to do with font changes.
  3. Any kind of mathematical typesetting.
  4. Any kind of complicated formatting, such as \parshape, \marginpar, or \twocolumn.
  5. Any user-defined macros.
  6. Anything interesting or complicated.
Return to vulcanize manifesto.

vulcanize source code


M-J. Dominus, mjd@saul.cis.upenn.edu