AsciiDoc Home Page ================== .{date}: AsciiDoc {revision} Released ************************************************************************ Two new features have been included in this release: - A much requested HTML table of contents generation feature has been added thanks to Troy Hanson who contributed this feature based on a JavaScript by Mihai Bazon. Take a look at the link:manpage.html[online Man Page] for example. - A link:music-filter.html[music filter] which translates music in http://lilypond.org/[LilyPond] or http://abcnotation.org.uk/[ABC] notation to Western classical notation in the form of a trimmed PNG image which is inserted into AsciiDoc output documents. Read the link:CHANGELOG.html[CHANGELOG] for a full description of additions and changes. mailto:srackham@methods.co.nz['Stuart Rackham'] ************************************************************************ Introduction ------------ AsciiDoc is a text document format for writing short documents, articles, books and UNIX man pages. AsciiDoc files can be translated to HTML and DocBook markups using the asciidoc(1) command. AsciiDoc is highly configurable: both the AsciiDoc source file syntax and the backend output markups (which can be almost any type of SGML/XML markup) can be customized and extended by the user. TIP: The pages you are reading were were written using AsciiDoc, to view the corresponding AsciiDoc source click on the *Page Source* menu item in the left hand margin. Overview and Examples --------------------- You write an AsciiDoc document the same way you would write a normal text document, there are no markup tags or weird format notations. AsciiDoc files are designed to be viewed, edited and printed directly or translated to other presentation formats using the asciidoc(1) command. The asciidoc(1) command translates AsciiDoc files to HTML, XHTML and DocBook markups. DocBook can be post-processed to presentation formats such as HTML, PDF, roff, and Postscript using readily available Open Source tools. Example Articles ~~~~~~~~~~~~~~~~ - This version of the link:asciidoc.css-embedded.html[AsciiDoc User Guide] was generated by AsciiDoc from link:asciidoc.txt[this AsciiDoc file]. - Here's the link:asciidoc.html[same document] created by first generating DocBook markup using AsciiDoc and then converting the DocBook markup to HTML using 'DocBook XSL Stylesheets'. - The User Guide again, this time a link:chunked/index.html[chunked version]. - This link:article.txt[AsciiDoc article template] produced this link:article.html[HTML file] and this link:article.pdf[PDF file] via DocBook markup generated by AsciiDoc. - This link:asciidoc.pdf[PDF formatted User Guide] was generated from asciidoc(1) DocBook output using `xsltproc(1)`, DocBook XSL Stylesheets and FOP. - Here's a Windows link:asciidoc.chm[HTML Help version] of the User Guide. Example Books ~~~~~~~~~~~~~ AsciiDoc markup supports all the standard DocBook frontmatter and backmatter sections (dedication, preface, bibliography, glossary, index, colophon) plus footnotes and index entries. Book:: This link:book.txt[AsciiDoc book's] DocBook output produced link:book.html[this HTML file] using the 'DocBook XSL Stylesheets'. Multi-part book:: This link:book-multi.txt[multi-part AsciiDoc book's] DocBook output produced link:book-multi.html[this HTML file] using the 'DocBook XSL Stylesheets'. Example UNIX Man Pages ~~~~~~~~~~~~~~~~~~~~~~ HTML formatted AsciiDoc man pages link:asciidoc.1.css-embedded.html[with stylesheets] and link:asciidoc.1.html[without stylesheets] were generated by AsciiDoc from link:asciidoc.1.txt[this file]. This link:asciidoc.1[roff formatted man page] was generated from asciidoc(1) DocBook output using `xsltproc(1)` and DocBook XSL Stylesheets. Example Web Site ~~~~~~~~~~~~~~~~ The link:README-website.html[AsciiDoc website] is included in the AsciiDoc distribution (in `./examples/website/`) as example website built using AsciiDoc. See `./examples/website/README-website.txt`. Music Filter ~~~~~~~~~~~~ A link:music-filter.html[music filter] is included in the distribution `./filters/` directory. It translates music in http://lilypond.org/[LilyPond] or http://abcnotation.org.uk/[ABC] notation to standard classical notation Source Code Highlight Filter ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ A link:source-highlight-filter.html[source code highlight filter] is included in the distribution `./filters/` directory. Mathematical Formulae ~~~~~~~~~~~~~~~~~~~~~ You can include mathematical formulae in your AsciiDoc documents using ASCIIMathML, here's an link:asciimath.html[example document containing ASCIIMathML formula]. [[X1]] LaTeX Backend ------------- An experimental LaTeX backend has been written for AsciiDoc by Benjamin Klum. Benjamin has done a superhuman job (I admit it, I didn't think this was doable due to AsciiDoc's SGML/XML bias). Here's link:latex-backend.html[Benjamin's documentation]. Projects using AsciiDoc ----------------------- Here are some projects I know of, if you know of more drop me a line and I'll add them to the list. - The Linux kernel http://www.kernel.org/pub/software/scm/git/docs/git.html[git source code management system]. - The http://www.netpromi.com/files/kirbybaserubymanual.html[KirbyBase for Ruby] database management system manual. - The http://www.selenic.com/mercurial/[Mercurial distributed SCM] uses asciidoc for its man pages. - Pascal Rapaz has written a Python script to automate AsciiDoc website generation. You can find it at http://www.rapazp.ch/opensource/tools/asciidoc.html[].