From 652a90f0a8613ee3bc4112a69137730b5abd9938 Mon Sep 17 00:00:00 2001 From: Chris Johns Date: Fri, 2 Feb 2018 10:59:21 +1100 Subject: sb: Back port changes to support mailing list posting. Close #3287 --- .../sb/asciidoc/examples/website/ASCIIMathML.js | 938 --- .../sb/asciidoc/examples/website/CHANGELOG.txt | 3128 ---------- .../sb/asciidoc/examples/website/INSTALL.txt | 227 - .../sb/asciidoc/examples/website/LaTeXMathML.js | 1223 ---- .../asciidoc/examples/website/README-website.txt | 29 - .../sb/asciidoc/examples/website/README.txt | 35 - .../sb/asciidoc/examples/website/a2x.1.txt | 358 -- .../examples/website/asciidoc-docbook-xsl.txt | 65 - .../examples/website/asciidoc-graphviz-sample.txt | 170 - .../sb/asciidoc/examples/website/asciidoc.css | 525 -- .../sb/asciidoc/examples/website/asciidoc.js | 189 - .../sb/asciidoc/examples/website/asciidocapi.txt | 189 - .../sb/asciidoc/examples/website/asciimathml.txt | 61 - .../sb/asciidoc/examples/website/build-website.sh | 25 - .../sb/asciidoc/examples/website/customers.csv | 18 - .../sb/asciidoc/examples/website/epub-notes.txt | 210 - .../sb/asciidoc/examples/website/faq.txt | 1358 ----- .../examples/website/images/highlighter.png | Bin 128142 -> 0 bytes .../asciidoc/examples/website/images/icons/README | 5 - .../examples/website/images/icons/callouts/1.png | Bin 329 -> 0 bytes .../examples/website/images/icons/callouts/10.png | Bin 361 -> 0 bytes .../examples/website/images/icons/callouts/11.png | Bin 565 -> 0 bytes .../examples/website/images/icons/callouts/12.png | Bin 617 -> 0 bytes .../examples/website/images/icons/callouts/13.png | Bin 623 -> 0 bytes .../examples/website/images/icons/callouts/14.png | Bin 411 -> 0 bytes .../examples/website/images/icons/callouts/15.png | Bin 640 -> 0 bytes .../examples/website/images/icons/callouts/2.png | Bin 353 -> 0 bytes .../examples/website/images/icons/callouts/3.png | Bin 350 -> 0 bytes .../examples/website/images/icons/callouts/4.png | Bin 345 -> 0 bytes .../examples/website/images/icons/callouts/5.png | Bin 348 -> 0 bytes .../examples/website/images/icons/callouts/6.png | Bin 355 -> 0 bytes .../examples/website/images/icons/callouts/7.png | Bin 344 -> 0 bytes .../examples/website/images/icons/callouts/8.png | Bin 357 -> 0 bytes .../examples/website/images/icons/callouts/9.png | Bin 357 -> 0 bytes .../examples/website/images/icons/caution.png | Bin 2734 -> 0 bytes .../examples/website/images/icons/example.png | Bin 2599 -> 0 bytes .../examples/website/images/icons/home.png | Bin 1340 -> 0 bytes .../examples/website/images/icons/important.png | Bin 2980 -> 0 bytes .../examples/website/images/icons/next.png | Bin 1302 -> 0 bytes .../examples/website/images/icons/note.png | Bin 2494 -> 0 bytes .../examples/website/images/icons/prev.png | Bin 1348 -> 0 bytes .../asciidoc/examples/website/images/icons/tip.png | Bin 2718 -> 0 bytes .../asciidoc/examples/website/images/icons/up.png | Bin 1320 -> 0 bytes .../examples/website/images/icons/warning.png | Bin 3214 -> 0 bytes .../asciidoc/examples/website/images/smallnew.png | Bin 292 -> 0 bytes .../sb/asciidoc/examples/website/images/tiger.png | Bin 6515 -> 0 bytes .../sb/asciidoc/examples/website/index.txt | 510 -- .../sb/asciidoc/examples/website/latex-backend.txt | 192 - .../sb/asciidoc/examples/website/latex-bugs.txt | 134 - .../sb/asciidoc/examples/website/latex-filter.txt | 196 - .../sb/asciidoc/examples/website/latexmathml.txt | 41 - .../sb/asciidoc/examples/website/layout1.conf | 153 - .../sb/asciidoc/examples/website/layout1.css | 65 - .../sb/asciidoc/examples/website/layout2.conf | 153 - .../sb/asciidoc/examples/website/layout2.css | 83 - .../sb/asciidoc/examples/website/main.aap | 159 - .../sb/asciidoc/examples/website/manpage.txt | 197 - .../sb/asciidoc/examples/website/music-filter.txt | 148 - .../sb/asciidoc/examples/website/newlists.txt | 40 - .../sb/asciidoc/examples/website/newtables.txt | 743 --- .../sb/asciidoc/examples/website/plugins.txt | 91 - .../website/publishing-ebooks-with-asciidoc.txt | 398 -- .../sb/asciidoc/examples/website/slidy-example.txt | 167 - .../sb/asciidoc/examples/website/slidy.txt | 113 - .../examples/website/source-highlight-filter.txt | 270 - .../sb/asciidoc/examples/website/support.txt | 5 - .../sb/asciidoc/examples/website/testasciidoc.txt | 231 - .../sb/asciidoc/examples/website/userguide.txt | 6038 -------------------- .../sb/asciidoc/examples/website/version83.txt | 37 - .../asciidoc/examples/website/xhtml11-quirks.css | 43 - 70 files changed, 18960 deletions(-) delete mode 100644 source-builder/sb/asciidoc/examples/website/ASCIIMathML.js delete mode 100644 source-builder/sb/asciidoc/examples/website/CHANGELOG.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/INSTALL.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/LaTeXMathML.js delete mode 100644 source-builder/sb/asciidoc/examples/website/README-website.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/README.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/a2x.1.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/asciidoc-docbook-xsl.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/asciidoc-graphviz-sample.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/asciidoc.css delete mode 100644 source-builder/sb/asciidoc/examples/website/asciidoc.js delete mode 100644 source-builder/sb/asciidoc/examples/website/asciidocapi.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/asciimathml.txt delete mode 100755 source-builder/sb/asciidoc/examples/website/build-website.sh delete mode 100644 source-builder/sb/asciidoc/examples/website/customers.csv delete mode 100644 source-builder/sb/asciidoc/examples/website/epub-notes.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/faq.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/images/highlighter.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/README delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/1.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/10.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/11.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/12.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/13.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/14.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/15.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/2.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/3.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/4.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/5.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/6.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/7.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/8.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/callouts/9.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/caution.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/example.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/home.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/important.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/next.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/note.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/prev.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/tip.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/up.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/icons/warning.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/smallnew.png delete mode 100644 source-builder/sb/asciidoc/examples/website/images/tiger.png delete mode 100644 source-builder/sb/asciidoc/examples/website/index.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/latex-backend.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/latex-bugs.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/latex-filter.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/latexmathml.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/layout1.conf delete mode 100644 source-builder/sb/asciidoc/examples/website/layout1.css delete mode 100644 source-builder/sb/asciidoc/examples/website/layout2.conf delete mode 100644 source-builder/sb/asciidoc/examples/website/layout2.css delete mode 100644 source-builder/sb/asciidoc/examples/website/main.aap delete mode 100644 source-builder/sb/asciidoc/examples/website/manpage.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/music-filter.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/newlists.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/newtables.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/plugins.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/publishing-ebooks-with-asciidoc.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/slidy-example.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/slidy.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/source-highlight-filter.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/support.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/testasciidoc.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/userguide.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/version83.txt delete mode 100644 source-builder/sb/asciidoc/examples/website/xhtml11-quirks.css (limited to 'source-builder/sb/asciidoc/examples/website') diff --git a/source-builder/sb/asciidoc/examples/website/ASCIIMathML.js b/source-builder/sb/asciidoc/examples/website/ASCIIMathML.js deleted file mode 100644 index 489b312..0000000 --- a/source-builder/sb/asciidoc/examples/website/ASCIIMathML.js +++ /dev/null @@ -1,938 +0,0 @@ -/* -ASCIIMathML.js -============== -This file contains JavaScript functions to convert ASCII math notation -to Presentation MathML. The conversion is done while the (X)HTML page -loads, and should work with Firefox/Mozilla/Netscape 7+ and Internet -Explorer 6+MathPlayer (http://www.dessci.com/en/products/mathplayer/). -Just add the next line to your (X)HTML page with this file in the same folder: -This is a convenient and inexpensive solution for authoring MathML. - -Version 1.4.7 Dec 15, 2005, (c) Peter Jipsen http://www.chapman.edu/~jipsen -Latest version at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML.js -For changes see http://www.chapman.edu/~jipsen/mathml/asciimathchanges.txt -If you use it on a webpage, please send the URL to jipsen@chapman.edu - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or (at -your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License (at http://www.gnu.org/copyleft/gpl.html) -for more details. -*/ - -var checkForMathML = true; // check if browser can display MathML -var notifyIfNoMathML = true; // display note if no MathML capability -var alertIfNoMathML = false; // show alert box if no MathML capability -var mathcolor = ""; // change it to "" (to inherit) or any other color -var mathfontfamily = "serif"; // change to "" to inherit (works in IE) - // or another family (e.g. "arial") -var displaystyle = true; // puts limits above and below large operators -var showasciiformulaonhover = true; // helps students learn ASCIIMath -var decimalsign = "."; // change to "," if you like, beware of `(1,2)`! -var AMdelimiter1 = "`", AMescape1 = "\\\\`"; // can use other characters -var AMdelimiter2 = "$", AMescape2 = "\\\\\\$", AMdelimiter2regexp = "\\$"; -var doubleblankmathdelimiter = false; // if true, x+1 is equal to `x+1` - // for IE this works only in -//var separatetokens;// has been removed (email me if this is a problem) -var isIE = document.createElementNS==null; - -if (document.getElementById==null) - alert("This webpage requires a recent browser such as\ -\nMozilla/Netscape 7+ or Internet Explorer 6+MathPlayer") - -// all further global variables start with "AM" - -function AMcreateElementXHTML(t) { - if (isIE) return document.createElement(t); - else return document.createElementNS("http://www.w3.org/1999/xhtml",t); -} - -function AMnoMathMLNote() { - var nd = AMcreateElementXHTML("h3"); - nd.setAttribute("align","center") - nd.appendChild(AMcreateElementXHTML("p")); - nd.appendChild(document.createTextNode("To view the ")); - var an = AMcreateElementXHTML("a"); - an.appendChild(document.createTextNode("ASCIIMathML")); - an.setAttribute("href","http://www.chapman.edu/~jipsen/asciimath.html"); - nd.appendChild(an); - nd.appendChild(document.createTextNode(" notation use Internet Explorer 6+")); - an = AMcreateElementXHTML("a"); - an.appendChild(document.createTextNode("MathPlayer")); - an.setAttribute("href","http://www.dessci.com/en/products/mathplayer/download.htm"); - nd.appendChild(an); - nd.appendChild(document.createTextNode(" or Netscape/Mozilla/Firefox")); - nd.appendChild(AMcreateElementXHTML("p")); - return nd; -} - -function AMisMathMLavailable() { - if (navigator.appName.slice(0,8)=="Netscape") - if (navigator.appVersion.slice(0,1)>="5") return null; - else return AMnoMathMLNote(); - else if (navigator.appName.slice(0,9)=="Microsoft") - try { - var ActiveX = new ActiveXObject("MathPlayer.Factory.1"); - return null; - } catch (e) { - return AMnoMathMLNote(); - } - else return AMnoMathMLNote(); -} - -// character lists for Mozilla/Netscape fonts -var AMcal = [0xEF35,0x212C,0xEF36,0xEF37,0x2130,0x2131,0xEF38,0x210B,0x2110,0xEF39,0xEF3A,0x2112,0x2133,0xEF3B,0xEF3C,0xEF3D,0xEF3E,0x211B,0xEF3F,0xEF40,0xEF41,0xEF42,0xEF43,0xEF44,0xEF45,0xEF46]; -var AMfrk = [0xEF5D,0xEF5E,0x212D,0xEF5F,0xEF60,0xEF61,0xEF62,0x210C,0x2111,0xEF63,0xEF64,0xEF65,0xEF66,0xEF67,0xEF68,0xEF69,0xEF6A,0x211C,0xEF6B,0xEF6C,0xEF6D,0xEF6E,0xEF6F,0xEF70,0xEF71,0x2128]; -var AMbbb = [0xEF8C,0xEF8D,0x2102,0xEF8E,0xEF8F,0xEF90,0xEF91,0x210D,0xEF92,0xEF93,0xEF94,0xEF95,0xEF96,0x2115,0xEF97,0x2119,0x211A,0x211D,0xEF98,0xEF99,0xEF9A,0xEF9B,0xEF9C,0xEF9D,0xEF9E,0x2124]; - -var CONST = 0, UNARY = 1, BINARY = 2, INFIX = 3, LEFTBRACKET = 4, - RIGHTBRACKET = 5, SPACE = 6, UNDEROVER = 7, DEFINITION = 8, - LEFTRIGHT = 9, TEXT = 10; // token types - -var AMsqrt = {input:"sqrt", tag:"msqrt", output:"sqrt", tex:null, ttype:UNARY}, - AMroot = {input:"root", tag:"mroot", output:"root", tex:null, ttype:BINARY}, - AMfrac = {input:"frac", tag:"mfrac", output:"/", tex:null, ttype:BINARY}, - AMdiv = {input:"/", tag:"mfrac", output:"/", tex:null, ttype:INFIX}, - AMover = {input:"stackrel", tag:"mover", output:"stackrel", tex:null, ttype:BINARY}, - AMsub = {input:"_", tag:"msub", output:"_", tex:null, ttype:INFIX}, - AMsup = {input:"^", tag:"msup", output:"^", tex:null, ttype:INFIX}, - AMtext = {input:"text", tag:"mtext", output:"text", tex:null, ttype:TEXT}, - AMmbox = {input:"mbox", tag:"mtext", output:"mbox", tex:null, ttype:TEXT}, - AMquote = {input:"\"", tag:"mtext", output:"mbox", tex:null, ttype:TEXT}; - -var AMsymbols = [ -//some greek symbols -{input:"alpha", tag:"mi", output:"\u03B1", tex:null, ttype:CONST}, -{input:"beta", tag:"mi", output:"\u03B2", tex:null, ttype:CONST}, -{input:"chi", tag:"mi", output:"\u03C7", tex:null, ttype:CONST}, -{input:"delta", tag:"mi", output:"\u03B4", tex:null, ttype:CONST}, -{input:"Delta", tag:"mo", output:"\u0394", tex:null, ttype:CONST}, -{input:"epsi", tag:"mi", output:"\u03B5", tex:"epsilon", ttype:CONST}, -{input:"varepsilon", tag:"mi", output:"\u025B", tex:null, ttype:CONST}, -{input:"eta", tag:"mi", output:"\u03B7", tex:null, ttype:CONST}, -{input:"gamma", tag:"mi", output:"\u03B3", tex:null, ttype:CONST}, -{input:"Gamma", tag:"mo", output:"\u0393", tex:null, ttype:CONST}, -{input:"iota", tag:"mi", output:"\u03B9", tex:null, ttype:CONST}, -{input:"kappa", tag:"mi", output:"\u03BA", tex:null, ttype:CONST}, -{input:"lambda", tag:"mi", output:"\u03BB", tex:null, ttype:CONST}, -{input:"Lambda", tag:"mo", output:"\u039B", tex:null, ttype:CONST}, -{input:"mu", tag:"mi", output:"\u03BC", tex:null, ttype:CONST}, -{input:"nu", tag:"mi", output:"\u03BD", tex:null, ttype:CONST}, -{input:"omega", tag:"mi", output:"\u03C9", tex:null, ttype:CONST}, -{input:"Omega", tag:"mo", output:"\u03A9", tex:null, ttype:CONST}, -{input:"phi", tag:"mi", output:"\u03C6", tex:null, ttype:CONST}, -{input:"varphi", tag:"mi", output:"\u03D5", tex:null, ttype:CONST}, -{input:"Phi", tag:"mo", output:"\u03A6", tex:null, ttype:CONST}, -{input:"pi", tag:"mi", output:"\u03C0", tex:null, ttype:CONST}, -{input:"Pi", tag:"mo", output:"\u03A0", tex:null, ttype:CONST}, -{input:"psi", tag:"mi", output:"\u03C8", tex:null, ttype:CONST}, -{input:"Psi", tag:"mi", output:"\u03A8", tex:null, ttype:CONST}, -{input:"rho", tag:"mi", output:"\u03C1", tex:null, ttype:CONST}, -{input:"sigma", tag:"mi", output:"\u03C3", tex:null, ttype:CONST}, -{input:"Sigma", tag:"mo", output:"\u03A3", tex:null, ttype:CONST}, -{input:"tau", tag:"mi", output:"\u03C4", tex:null, ttype:CONST}, -{input:"theta", tag:"mi", output:"\u03B8", tex:null, ttype:CONST}, -{input:"vartheta", tag:"mi", output:"\u03D1", tex:null, ttype:CONST}, -{input:"Theta", tag:"mo", output:"\u0398", tex:null, ttype:CONST}, -{input:"upsilon", tag:"mi", output:"\u03C5", tex:null, ttype:CONST}, -{input:"xi", tag:"mi", output:"\u03BE", tex:null, ttype:CONST}, -{input:"Xi", tag:"mo", output:"\u039E", tex:null, ttype:CONST}, -{input:"zeta", tag:"mi", output:"\u03B6", tex:null, ttype:CONST}, - -//binary operation symbols -{input:"*", tag:"mo", output:"\u22C5", tex:"cdot", ttype:CONST}, -{input:"**", tag:"mo", output:"\u22C6", tex:"star", ttype:CONST}, -{input:"//", tag:"mo", output:"/", tex:null, ttype:CONST}, -{input:"\\\\", tag:"mo", output:"\\", tex:"backslash", ttype:CONST}, -{input:"setminus", tag:"mo", output:"\\", tex:null, ttype:CONST}, -{input:"xx", tag:"mo", output:"\u00D7", tex:"times", ttype:CONST}, -{input:"-:", tag:"mo", output:"\u00F7", tex:"divide", ttype:CONST}, -{input:"@", tag:"mo", output:"\u2218", tex:"circ", ttype:CONST}, -{input:"o+", tag:"mo", output:"\u2295", tex:"oplus", ttype:CONST}, -{input:"ox", tag:"mo", output:"\u2297", tex:"otimes", ttype:CONST}, -{input:"o.", tag:"mo", output:"\u2299", tex:"odot", ttype:CONST}, -{input:"sum", tag:"mo", output:"\u2211", tex:null, ttype:UNDEROVER}, -{input:"prod", tag:"mo", output:"\u220F", tex:null, ttype:UNDEROVER}, -{input:"^^", tag:"mo", output:"\u2227", tex:"wedge", ttype:CONST}, -{input:"^^^", tag:"mo", output:"\u22C0", tex:"bigwedge", ttype:UNDEROVER}, -{input:"vv", tag:"mo", output:"\u2228", tex:"vee", ttype:CONST}, -{input:"vvv", tag:"mo", output:"\u22C1", tex:"bigvee", ttype:UNDEROVER}, -{input:"nn", tag:"mo", output:"\u2229", tex:"cap", ttype:CONST}, -{input:"nnn", tag:"mo", output:"\u22C2", tex:"bigcap", ttype:UNDEROVER}, -{input:"uu", tag:"mo", output:"\u222A", tex:"cup", ttype:CONST}, -{input:"uuu", tag:"mo", output:"\u22C3", tex:"bigcup", ttype:UNDEROVER}, - -//binary relation symbols -{input:"!=", tag:"mo", output:"\u2260", tex:"ne", ttype:CONST}, -{input:":=", tag:"mo", output:":=", tex:null, ttype:CONST}, -{input:"lt", tag:"mo", output:"<", tex:null, ttype:CONST}, -{input:"<=", tag:"mo", output:"\u2264", tex:"le", ttype:CONST}, -{input:"lt=", tag:"mo", output:"\u2264", tex:"leq", ttype:CONST}, -{input:">=", tag:"mo", output:"\u2265", tex:"ge", ttype:CONST}, -{input:"geq", tag:"mo", output:"\u2265", tex:null, ttype:CONST}, -{input:"-<", tag:"mo", output:"\u227A", tex:"prec", ttype:CONST}, -{input:"-lt", tag:"mo", output:"\u227A", tex:null, ttype:CONST}, -{input:">-", tag:"mo", output:"\u227B", tex:"succ", ttype:CONST}, -{input:"-<=", tag:"mo", output:"\u2AAF", tex:"preceq", ttype:CONST}, -{input:">-=", tag:"mo", output:"\u2AB0", tex:"succeq", ttype:CONST}, -{input:"in", tag:"mo", output:"\u2208", tex:null, ttype:CONST}, -{input:"!in", tag:"mo", output:"\u2209", tex:"notin", ttype:CONST}, -{input:"sub", tag:"mo", output:"\u2282", tex:"subset", ttype:CONST}, -{input:"sup", tag:"mo", output:"\u2283", tex:"supset", ttype:CONST}, -{input:"sube", tag:"mo", output:"\u2286", tex:"subseteq", ttype:CONST}, -{input:"supe", tag:"mo", output:"\u2287", tex:"supseteq", ttype:CONST}, -{input:"-=", tag:"mo", output:"\u2261", tex:"equiv", ttype:CONST}, -{input:"~=", tag:"mo", output:"\u2245", tex:"cong", ttype:CONST}, -{input:"~~", tag:"mo", output:"\u2248", tex:"approx", ttype:CONST}, -{input:"prop", tag:"mo", output:"\u221D", tex:"propto", ttype:CONST}, - -//logical symbols -{input:"and", tag:"mtext", output:"and", tex:null, ttype:SPACE}, -{input:"or", tag:"mtext", output:"or", tex:null, ttype:SPACE}, -{input:"not", tag:"mo", output:"\u00AC", tex:"neg", ttype:CONST}, -{input:"=>", tag:"mo", output:"\u21D2", tex:"implies", ttype:CONST}, -{input:"if", tag:"mo", output:"if", tex:null, ttype:SPACE}, -{input:"<=>", tag:"mo", output:"\u21D4", tex:"iff", ttype:CONST}, -{input:"AA", tag:"mo", output:"\u2200", tex:"forall", ttype:CONST}, -{input:"EE", tag:"mo", output:"\u2203", tex:"exists", ttype:CONST}, -{input:"_|_", tag:"mo", output:"\u22A5", tex:"bot", ttype:CONST}, -{input:"TT", tag:"mo", output:"\u22A4", tex:"top", ttype:CONST}, -{input:"|--", tag:"mo", output:"\u22A2", tex:"vdash", ttype:CONST}, -{input:"|==", tag:"mo", output:"\u22A8", tex:"models", ttype:CONST}, - -//grouping brackets -{input:"(", tag:"mo", output:"(", tex:null, ttype:LEFTBRACKET}, -{input:")", tag:"mo", output:")", tex:null, ttype:RIGHTBRACKET}, -{input:"[", tag:"mo", output:"[", tex:null, ttype:LEFTBRACKET}, -{input:"]", tag:"mo", output:"]", tex:null, ttype:RIGHTBRACKET}, -{input:"{", tag:"mo", output:"{", tex:null, ttype:LEFTBRACKET}, -{input:"}", tag:"mo", output:"}", tex:null, ttype:RIGHTBRACKET}, -{input:"|", tag:"mo", output:"|", tex:null, ttype:LEFTRIGHT}, -//{input:"||", tag:"mo", output:"||", tex:null, ttype:LEFTRIGHT}, -{input:"(:", tag:"mo", output:"\u2329", tex:"langle", ttype:LEFTBRACKET}, -{input:":)", tag:"mo", output:"\u232A", tex:"rangle", ttype:RIGHTBRACKET}, -{input:"<<", tag:"mo", output:"\u2329", tex:null, ttype:LEFTBRACKET}, -{input:">>", tag:"mo", output:"\u232A", tex:null, ttype:RIGHTBRACKET}, -{input:"{:", tag:"mo", output:"{:", tex:null, ttype:LEFTBRACKET, invisible:true}, -{input:":}", tag:"mo", output:":}", tex:null, ttype:RIGHTBRACKET, invisible:true}, - -//miscellaneous symbols -{input:"int", tag:"mo", output:"\u222B", tex:null, ttype:CONST}, -{input:"dx", tag:"mi", output:"{:d x:}", tex:null, ttype:DEFINITION}, -{input:"dy", tag:"mi", output:"{:d y:}", tex:null, ttype:DEFINITION}, -{input:"dz", tag:"mi", output:"{:d z:}", tex:null, ttype:DEFINITION}, -{input:"dt", tag:"mi", output:"{:d t:}", tex:null, ttype:DEFINITION}, -{input:"oint", tag:"mo", output:"\u222E", tex:null, ttype:CONST}, -{input:"del", tag:"mo", output:"\u2202", tex:"partial", ttype:CONST}, -{input:"grad", tag:"mo", output:"\u2207", tex:"nabla", ttype:CONST}, -{input:"+-", tag:"mo", output:"\u00B1", tex:"pm", ttype:CONST}, -{input:"O/", tag:"mo", output:"\u2205", tex:"emptyset", ttype:CONST}, -{input:"oo", tag:"mo", output:"\u221E", tex:"infty", ttype:CONST}, -{input:"aleph", tag:"mo", output:"\u2135", tex:null, ttype:CONST}, -{input:"...", tag:"mo", output:"...", tex:"ldots", ttype:CONST}, -{input:":.", tag:"mo", output:"\u2234", tex:"therefore", ttype:CONST}, -{input:"/_", tag:"mo", output:"\u2220", tex:"angle", ttype:CONST}, -{input:"\\ ", tag:"mo", output:"\u00A0", tex:null, ttype:CONST}, -{input:"quad", tag:"mo", output:"\u00A0\u00A0", tex:null, ttype:CONST}, -{input:"qquad", tag:"mo", output:"\u00A0\u00A0\u00A0\u00A0", tex:null, ttype:CONST}, -{input:"cdots", tag:"mo", output:"\u22EF", tex:null, ttype:CONST}, -{input:"vdots", tag:"mo", output:"\u22EE", tex:null, ttype:CONST}, -{input:"ddots", tag:"mo", output:"\u22F1", tex:null, ttype:CONST}, -{input:"diamond", tag:"mo", output:"\u22C4", tex:null, ttype:CONST}, -{input:"square", tag:"mo", output:"\u25A1", tex:null, ttype:CONST}, -{input:"|__", tag:"mo", output:"\u230A", tex:"lfloor", ttype:CONST}, -{input:"__|", tag:"mo", output:"\u230B", tex:"rfloor", ttype:CONST}, -{input:"|~", tag:"mo", output:"\u2308", tex:"lceiling", ttype:CONST}, -{input:"~|", tag:"mo", output:"\u2309", tex:"rceiling", ttype:CONST}, -{input:"CC", tag:"mo", output:"\u2102", tex:null, ttype:CONST}, -{input:"NN", tag:"mo", output:"\u2115", tex:null, ttype:CONST}, -{input:"QQ", tag:"mo", output:"\u211A", tex:null, ttype:CONST}, -{input:"RR", tag:"mo", output:"\u211D", tex:null, ttype:CONST}, -{input:"ZZ", tag:"mo", output:"\u2124", tex:null, ttype:CONST}, -{input:"f", tag:"mi", output:"f", tex:null, ttype:UNARY, func:true}, -{input:"g", tag:"mi", output:"g", tex:null, ttype:UNARY, func:true}, - -//standard functions -{input:"lim", tag:"mo", output:"lim", tex:null, ttype:UNDEROVER}, -{input:"Lim", tag:"mo", output:"Lim", tex:null, ttype:UNDEROVER}, -{input:"sin", tag:"mo", output:"sin", tex:null, ttype:UNARY, func:true}, -{input:"cos", tag:"mo", output:"cos", tex:null, ttype:UNARY, func:true}, -{input:"tan", tag:"mo", output:"tan", tex:null, ttype:UNARY, func:true}, -{input:"sinh", tag:"mo", output:"sinh", tex:null, ttype:UNARY, func:true}, -{input:"cosh", tag:"mo", output:"cosh", tex:null, ttype:UNARY, func:true}, -{input:"tanh", tag:"mo", output:"tanh", tex:null, ttype:UNARY, func:true}, -{input:"cot", tag:"mo", output:"cot", tex:null, ttype:UNARY, func:true}, -{input:"sec", tag:"mo", output:"sec", tex:null, ttype:UNARY, func:true}, -{input:"csc", tag:"mo", output:"csc", tex:null, ttype:UNARY, func:true}, -{input:"log", tag:"mo", output:"log", tex:null, ttype:UNARY, func:true}, -{input:"ln", tag:"mo", output:"ln", tex:null, ttype:UNARY, func:true}, -{input:"det", tag:"mo", output:"det", tex:null, ttype:UNARY, func:true}, -{input:"dim", tag:"mo", output:"dim", tex:null, ttype:CONST}, -{input:"mod", tag:"mo", output:"mod", tex:null, ttype:CONST}, -{input:"gcd", tag:"mo", output:"gcd", tex:null, ttype:UNARY, func:true}, -{input:"lcm", tag:"mo", output:"lcm", tex:null, ttype:UNARY, func:true}, -{input:"lub", tag:"mo", output:"lub", tex:null, ttype:CONST}, -{input:"glb", tag:"mo", output:"glb", tex:null, ttype:CONST}, -{input:"min", tag:"mo", output:"min", tex:null, ttype:UNDEROVER}, -{input:"max", tag:"mo", output:"max", tex:null, ttype:UNDEROVER}, - -//arrows -{input:"uarr", tag:"mo", output:"\u2191", tex:"uparrow", ttype:CONST}, -{input:"darr", tag:"mo", output:"\u2193", tex:"downarrow", ttype:CONST}, -{input:"rarr", tag:"mo", output:"\u2192", tex:"rightarrow", ttype:CONST}, -{input:"->", tag:"mo", output:"\u2192", tex:"to", ttype:CONST}, -{input:"|->", tag:"mo", output:"\u21A6", tex:"mapsto", ttype:CONST}, -{input:"larr", tag:"mo", output:"\u2190", tex:"leftarrow", ttype:CONST}, -{input:"harr", tag:"mo", output:"\u2194", tex:"leftrightarrow", ttype:CONST}, -{input:"rArr", tag:"mo", output:"\u21D2", tex:"Rightarrow", ttype:CONST}, -{input:"lArr", tag:"mo", output:"\u21D0", tex:"Leftarrow", ttype:CONST}, -{input:"hArr", tag:"mo", output:"\u21D4", tex:"Leftrightarrow", ttype:CONST}, - -//commands with argument -AMsqrt, AMroot, AMfrac, AMdiv, AMover, AMsub, AMsup, -{input:"hat", tag:"mover", output:"\u005E", tex:null, ttype:UNARY, acc:true}, -{input:"bar", tag:"mover", output:"\u00AF", tex:"overline", ttype:UNARY, acc:true}, -{input:"vec", tag:"mover", output:"\u2192", tex:null, ttype:UNARY, acc:true}, -{input:"dot", tag:"mover", output:".", tex:null, ttype:UNARY, acc:true}, -{input:"ddot", tag:"mover", output:"..", tex:null, ttype:UNARY, acc:true}, -{input:"ul", tag:"munder", output:"\u0332", tex:"underline", ttype:UNARY, acc:true}, -AMtext, AMmbox, AMquote, -{input:"bb", tag:"mstyle", atname:"fontweight", atval:"bold", output:"bb", tex:null, ttype:UNARY}, -{input:"mathbf", tag:"mstyle", atname:"fontweight", atval:"bold", output:"mathbf", tex:null, ttype:UNARY}, -{input:"sf", tag:"mstyle", atname:"fontfamily", atval:"sans-serif", output:"sf", tex:null, ttype:UNARY}, -{input:"mathsf", tag:"mstyle", atname:"fontfamily", atval:"sans-serif", output:"mathsf", tex:null, ttype:UNARY}, -{input:"bbb", tag:"mstyle", atname:"mathvariant", atval:"double-struck", output:"bbb", tex:null, ttype:UNARY, codes:AMbbb}, -{input:"mathbb", tag:"mstyle", atname:"mathvariant", atval:"double-struck", output:"mathbb", tex:null, ttype:UNARY, codes:AMbbb}, -{input:"cc", tag:"mstyle", atname:"mathvariant", atval:"script", output:"cc", tex:null, ttype:UNARY, codes:AMcal}, -{input:"mathcal", tag:"mstyle", atname:"mathvariant", atval:"script", output:"mathcal", tex:null, ttype:UNARY, codes:AMcal}, -{input:"tt", tag:"mstyle", atname:"fontfamily", atval:"monospace", output:"tt", tex:null, ttype:UNARY}, -{input:"mathtt", tag:"mstyle", atname:"fontfamily", atval:"monospace", output:"mathtt", tex:null, ttype:UNARY}, -{input:"fr", tag:"mstyle", atname:"mathvariant", atval:"fraktur", output:"fr", tex:null, ttype:UNARY, codes:AMfrk}, -{input:"mathfrak", tag:"mstyle", atname:"mathvariant", atval:"fraktur", output:"mathfrak", tex:null, ttype:UNARY, codes:AMfrk} -]; - -function compareNames(s1,s2) { - if (s1.input > s2.input) return 1 - else return -1; -} - -var AMnames = []; //list of input symbols - -function AMinitSymbols() { - var texsymbols = [], i; - for (i=0; i=n where str appears or would be inserted -// assumes arr is sorted - if (n==0) { - var h,m; - n = -1; - h = arr.length; - while (n+1> 1; - if (arr[m]=str -} - -function AMgetSymbol(str) { -//return maximal initial substring of str that appears in names -//return null if there is none - var k = 0; //new pos - var j = 0; //old pos - var mk; //match pos - var st; - var tagst; - var match = ""; - var more = true; - for (var i=1; i<=str.length && more; i++) { - st = str.slice(0,i); //initial substring of length i - j = k; - k = AMposition(AMnames, st, j); - if (k=AMnames[k]; - } - AMpreviousSymbol=AMcurrentSymbol; - if (match!=""){ - AMcurrentSymbol=AMsymbols[mk].ttype; - return AMsymbols[mk]; - } -// if str[0] is a digit or - return maxsubstring of digits.digits - AMcurrentSymbol=CONST; - k = 1; - st = str.slice(0,1); - var integ = true; - while ("0"<=st && st<="9" && k<=str.length) { - st = str.slice(k,k+1); - k++; - } - if (st == decimalsign) { - st = str.slice(k,k+1); - if ("0"<=st && st<="9") { - integ = false; - k++; - while ("0"<=st && st<="9" && k<=str.length) { - st = str.slice(k,k+1); - k++; - } - } - } - if ((integ && k>1) || k>2) { - st = str.slice(0,k-1); - tagst = "mn"; - } else { - k = 2; - st = str.slice(0,1); //take 1 character - tagst = (("A">st || st>"Z") && ("a">st || st>"z")?"mo":"mi"); - } - if (st=="-" && AMpreviousSymbol==INFIX) { - AMcurrentSymbol = INFIX; //trick "/" into recognizing "-" on second parse - return {input:st, tag:tagst, output:st, ttype:UNARY, func:true}; - } - return {input:st, tag:tagst, output:st, ttype:CONST}; -} - -function AMremoveBrackets(node) { - var st; - if (node.nodeName=="mrow") { - st = node.firstChild.firstChild.nodeValue; - if (st=="(" || st=="[" || st=="{") node.removeChild(node.firstChild); - } - if (node.nodeName=="mrow") { - st = node.lastChild.firstChild.nodeValue; - if (st==")" || st=="]" || st=="}") node.removeChild(node.lastChild); - } -} - -/*Parsing ASCII math expressions with the following grammar -v ::= [A-Za-z] | greek letters | numbers | other constant symbols -u ::= sqrt | text | bb | other unary symbols for font commands -b ::= frac | root | stackrel binary symbols -l ::= ( | [ | { | (: | {: left brackets -r ::= ) | ] | } | :) | :} right brackets -S ::= v | lEr | uS | bSS Simple expression -I ::= S_S | S^S | S_S^S | S Intermediate expression -E ::= IE | I/I Expression -Each terminal symbol is translated into a corresponding mathml node.*/ - -var AMnestingDepth,AMpreviousSymbol,AMcurrentSymbol; - -function AMparseSexpr(str) { //parses str and returns [node,tailstr] - var symbol, node, result, i, st,// rightvert = false, - newFrag = document.createDocumentFragment(); - str = AMremoveCharsAndBlanks(str,0); - symbol = AMgetSymbol(str); //either a token or a bracket or empty - if (symbol == null || symbol.ttype == RIGHTBRACKET && AMnestingDepth > 0) { - return [null,str]; - } - if (symbol.ttype == DEFINITION) { - str = symbol.output+AMremoveCharsAndBlanks(str,symbol.input.length); - symbol = AMgetSymbol(str); - } - switch (symbol.ttype) { - case UNDEROVER: - case CONST: - str = AMremoveCharsAndBlanks(str,symbol.input.length); - return [AMcreateMmlNode(symbol.tag, //its a constant - document.createTextNode(symbol.output)),str]; - case LEFTBRACKET: //read (expr+) - AMnestingDepth++; - str = AMremoveCharsAndBlanks(str,symbol.input.length); - result = AMparseExpr(str,true); - AMnestingDepth--; - if (typeof symbol.invisible == "boolean" && symbol.invisible) - node = AMcreateMmlNode("mrow",result[0]); - else { - node = AMcreateMmlNode("mo",document.createTextNode(symbol.output)); - node = AMcreateMmlNode("mrow",node); - node.appendChild(result[0]); - } - return [node,result[1]]; - case TEXT: - if (symbol!=AMquote) str = AMremoveCharsAndBlanks(str,symbol.input.length); - if (str.charAt(0)=="{") i=str.indexOf("}"); - else if (str.charAt(0)=="(") i=str.indexOf(")"); - else if (str.charAt(0)=="[") i=str.indexOf("]"); - else if (symbol==AMquote) i=str.slice(1).indexOf("\"")+1; - else i = 0; - if (i==-1) i = str.length; - st = str.slice(1,i); - if (st.charAt(0) == " ") { - node = AMcreateElementMathML("mspace"); - node.setAttribute("width","1ex"); - newFrag.appendChild(node); - } - newFrag.appendChild( - AMcreateMmlNode(symbol.tag,document.createTextNode(st))); - if (st.charAt(st.length-1) == " ") { - node = AMcreateElementMathML("mspace"); - node.setAttribute("width","1ex"); - newFrag.appendChild(node); - } - str = AMremoveCharsAndBlanks(str,i+1); - return [AMcreateMmlNode("mrow",newFrag),str]; - case UNARY: - str = AMremoveCharsAndBlanks(str,symbol.input.length); - result = AMparseSexpr(str); - if (result[0]==null) return [AMcreateMmlNode(symbol.tag, - document.createTextNode(symbol.output)),str]; - if (typeof symbol.func == "boolean" && symbol.func) { // functions hack - st = str.charAt(0); - if (st=="^" || st=="_" || st=="/" || st=="|" || st==",") { - return [AMcreateMmlNode(symbol.tag, - document.createTextNode(symbol.output)),str]; - } else { - node = AMcreateMmlNode("mrow", - AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output))); - node.appendChild(result[0]); - return [node,result[1]]; - } - } - AMremoveBrackets(result[0]); - if (symbol.input == "sqrt") { // sqrt - return [AMcreateMmlNode(symbol.tag,result[0]),result[1]]; - } else if (typeof symbol.acc == "boolean" && symbol.acc) { // accent - node = AMcreateMmlNode(symbol.tag,result[0]); - node.appendChild(AMcreateMmlNode("mo",document.createTextNode(symbol.output))); - return [node,result[1]]; - } else { // font change command - if (!isIE && typeof symbol.codes != "undefined") { - for (i=0; i64 && st.charCodeAt(j)<91) newst = newst + - String.fromCharCode(symbol.codes[st.charCodeAt(j)-65]); - else newst = newst + st.charAt(j); - if (result[0].nodeName=="mi") - result[0]=AMcreateElementMathML("mo"). - appendChild(document.createTextNode(newst)); - else result[0].replaceChild(AMcreateElementMathML("mo"). - appendChild(document.createTextNode(newst)),result[0].childNodes[i]); - } - } - node = AMcreateMmlNode(symbol.tag,result[0]); - node.setAttribute(symbol.atname,symbol.atval); - return [node,result[1]]; - } - case BINARY: - str = AMremoveCharsAndBlanks(str,symbol.input.length); - result = AMparseSexpr(str); - if (result[0]==null) return [AMcreateMmlNode("mo", - document.createTextNode(symbol.input)),str]; - AMremoveBrackets(result[0]); - var result2 = AMparseSexpr(result[1]); - if (result2[0]==null) return [AMcreateMmlNode("mo", - document.createTextNode(symbol.input)),str]; - AMremoveBrackets(result2[0]); - if (symbol.input=="root" || symbol.input=="stackrel") - newFrag.appendChild(result2[0]); - newFrag.appendChild(result[0]); - if (symbol.input=="frac") newFrag.appendChild(result2[0]); - return [AMcreateMmlNode(symbol.tag,newFrag),result2[1]]; - case INFIX: - str = AMremoveCharsAndBlanks(str,symbol.input.length); - return [AMcreateMmlNode("mo",document.createTextNode(symbol.output)),str]; - case SPACE: - str = AMremoveCharsAndBlanks(str,symbol.input.length); - node = AMcreateElementMathML("mspace"); - node.setAttribute("width","1ex"); - newFrag.appendChild(node); - newFrag.appendChild( - AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output))); - node = AMcreateElementMathML("mspace"); - node.setAttribute("width","1ex"); - newFrag.appendChild(node); - return [AMcreateMmlNode("mrow",newFrag),str]; - case LEFTRIGHT: -// if (rightvert) return [null,str]; else rightvert = true; - AMnestingDepth++; - str = AMremoveCharsAndBlanks(str,symbol.input.length); - result = AMparseExpr(str,false); - AMnestingDepth--; - var st = ""; - if (result[0].lastChild!=null) - st = result[0].lastChild.firstChild.nodeValue; - if (st == "|") { // its an absolute value subterm - node = AMcreateMmlNode("mo",document.createTextNode(symbol.output)); - node = AMcreateMmlNode("mrow",node); - node.appendChild(result[0]); - return [node,result[1]]; - } else { // the "|" is a \mid - node = AMcreateMmlNode("mo",document.createTextNode(symbol.output)); - node = AMcreateMmlNode("mrow",node); - return [node,str]; - } - default: -//alert("default"); - str = AMremoveCharsAndBlanks(str,symbol.input.length); - return [AMcreateMmlNode(symbol.tag, //its a constant - document.createTextNode(symbol.output)),str]; - } -} - -function AMparseIexpr(str) { - var symbol, sym1, sym2, node, result, underover; - str = AMremoveCharsAndBlanks(str,0); - sym1 = AMgetSymbol(str); - result = AMparseSexpr(str); - node = result[0]; - str = result[1]; - symbol = AMgetSymbol(str); - if (symbol.ttype == INFIX && symbol.input != "/") { - str = AMremoveCharsAndBlanks(str,symbol.input.length); -// if (symbol.input == "/") result = AMparseIexpr(str); else ... - result = AMparseSexpr(str); - if (result[0] == null) // show box in place of missing argument - result[0] = AMcreateMmlNode("mo",document.createTextNode("\u25A1")); - else AMremoveBrackets(result[0]); - str = result[1]; -// if (symbol.input == "/") AMremoveBrackets(node); - if (symbol.input == "_") { - sym2 = AMgetSymbol(str); - underover = (sym1.ttype == UNDEROVER); - if (sym2.input == "^") { - str = AMremoveCharsAndBlanks(str,sym2.input.length); - var res2 = AMparseSexpr(str); - AMremoveBrackets(res2[0]); - str = res2[1]; - node = AMcreateMmlNode((underover?"munderover":"msubsup"),node); - node.appendChild(result[0]); - node.appendChild(res2[0]); - node = AMcreateMmlNode("mrow",node); // so sum does not stretch - } else { - node = AMcreateMmlNode((underover?"munder":"msub"),node); - node.appendChild(result[0]); - } - } else { - node = AMcreateMmlNode(symbol.tag,node); - node.appendChild(result[0]); - } - } - return [node,str]; -} - -function AMparseExpr(str,rightbracket) { - var symbol, node, result, i, nodeList = [], - newFrag = document.createDocumentFragment(); - do { - str = AMremoveCharsAndBlanks(str,0); - result = AMparseIexpr(str); - node = result[0]; - str = result[1]; - symbol = AMgetSymbol(str); - if (symbol.ttype == INFIX && symbol.input == "/") { - str = AMremoveCharsAndBlanks(str,symbol.input.length); - result = AMparseIexpr(str); - if (result[0] == null) // show box in place of missing argument - result[0] = AMcreateMmlNode("mo",document.createTextNode("\u25A1")); - else AMremoveBrackets(result[0]); - str = result[1]; - AMremoveBrackets(node); - node = AMcreateMmlNode(symbol.tag,node); - node.appendChild(result[0]); - newFrag.appendChild(node); - symbol = AMgetSymbol(str); - } - else if (node!=undefined) newFrag.appendChild(node); - } while ((symbol.ttype != RIGHTBRACKET && - (symbol.ttype != LEFTRIGHT || rightbracket) - || AMnestingDepth == 0) && symbol!=null && symbol.output!=""); - if (symbol.ttype == RIGHTBRACKET || symbol.ttype == LEFTRIGHT) { -// if (AMnestingDepth > 0) AMnestingDepth--; - var len = newFrag.childNodes.length; - if (len>0 && newFrag.childNodes[len-1].nodeName == "mrow" && len>1 && - newFrag.childNodes[len-2].nodeName == "mo" && - newFrag.childNodes[len-2].firstChild.nodeValue == ",") { //matrix - var right = newFrag.childNodes[len-1].lastChild.firstChild.nodeValue; - if (right==")" || right=="]") { - var left = newFrag.childNodes[len-1].firstChild.firstChild.nodeValue; - if (left=="(" && right==")" && symbol.output != "}" || - left=="[" && right=="]") { - var pos = []; // positions of commas - var matrix = true; - var m = newFrag.childNodes.length; - for (i=0; matrix && i1) matrix = pos[i].length == pos[i-2].length; - } - if (matrix) { - var row, frag, n, k, table = document.createDocumentFragment(); - for (i=0; i(-,-,...,-,-) - n = node.childNodes.length; - k = 0; - node.removeChild(node.firstChild); //remove ( - for (j=1; j2) { - newFrag.removeChild(newFrag.firstChild); //remove ) - newFrag.removeChild(newFrag.firstChild); //remove , - } - table.appendChild(AMcreateMmlNode("mtr",row)); - } - node = AMcreateMmlNode("mtable",table); - if (typeof symbol.invisible == "boolean" && symbol.invisible) node.setAttribute("columnalign","left"); - newFrag.replaceChild(node,newFrag.firstChild); - } - } - } - } - str = AMremoveCharsAndBlanks(str,symbol.input.length); - if (typeof symbol.invisible != "boolean" || !symbol.invisible) { - node = AMcreateMmlNode("mo",document.createTextNode(symbol.output)); - newFrag.appendChild(node); - } - } - return [newFrag,str]; -} - -function AMparseMath(str) { - var result, node = AMcreateElementMathML("mstyle"); - if (mathcolor != "") node.setAttribute("mathcolor",mathcolor); - if (displaystyle) node.setAttribute("displaystyle","true"); - if (mathfontfamily != "") node.setAttribute("fontfamily",mathfontfamily); - AMnestingDepth = 0; - node.appendChild(AMparseExpr(str.replace(/^\s+/g,""),false)[0]); - node = AMcreateMmlNode("math",node); - if (showasciiformulaonhover) //fixed by djhsu so newline - node.setAttribute("title",str.replace(/\s+/g," "));//does not show in Gecko - if (mathfontfamily != "" && (isIE || mathfontfamily != "serif")) { - var fnode = AMcreateElementXHTML("font"); - fnode.setAttribute("face",mathfontfamily); - fnode.appendChild(node); - return fnode; - } - return node; -} - -function AMstrarr2docFrag(arr, linebreaks) { - var newFrag=document.createDocumentFragment(); - var expr = false; - for (var i=0; i1 || mtch) { - if (checkForMathML) { - checkForMathML = false; - var nd = AMisMathMLavailable(); - AMnoMathML = nd != null; - if (AMnoMathML && notifyIfNoMathML) - if (alertIfNoMathML) - alert("To view the ASCIIMathML notation use Internet Explorer 6 +\nMathPlayer (free from www.dessci.com)\n\ - or Firefox/Mozilla/Netscape"); - else AMbody.insertBefore(nd,AMbody.childNodes[0]); - } - if (!AMnoMathML) { - frg = AMstrarr2docFrag(arr,n.nodeType==8); - var len = frg.childNodes.length; - n.parentNode.replaceChild(frg,n); - return len-1; - } else return 0; - } - } - } else return 0; - } else if (n.nodeName!="math") { - for (i=0; i"); - document.write(""); -} - -// GO1.1 Generic onload by Brothercake -// http://www.brothercake.com/ -//onload function (replaces the onload="translate()" in the tag) -function generic() -{ - translate(); -}; -//setup onload function -if(typeof window.addEventListener != 'undefined') -{ - //.. gecko, safari, konqueror and standard - window.addEventListener('load', generic, false); -} -else if(typeof document.addEventListener != 'undefined') -{ - //.. opera 7 - document.addEventListener('load', generic, false); -} -else if(typeof window.attachEvent != 'undefined') -{ - //.. win/ie - window.attachEvent('onload', generic); -} -//** remove this condition to degrade older browsers -else -{ - //.. mac/ie5 and anything else that gets this far - //if there's an existing onload function - if(typeof window.onload == 'function') - { - //store it - var existing = onload; - //add new onload handler - window.onload = function() - { - //call existing onload function - existing(); - //call generic onload function - generic(); - }; - } - else - { - //setup onload function - window.onload = generic; - } -} diff --git a/source-builder/sb/asciidoc/examples/website/CHANGELOG.txt b/source-builder/sb/asciidoc/examples/website/CHANGELOG.txt deleted file mode 100644 index 5b01600..0000000 --- a/source-builder/sb/asciidoc/examples/website/CHANGELOG.txt +++ /dev/null @@ -1,3128 +0,0 @@ -AsciiDoc ChangeLog -================== - -:website: http://www.methods.co.nz/asciidoc/ - - -Version 8.6.8 (2012-07-17) --------------------------- -.Release highlights -Added full complement of styles to 'Open Blocks' and 'Normal -Paragraphs' -- those with a minimalist bent could construct virtually -any document using just Title, Normal Paragraph and Open Block -syntaxes. - -.Other additions and changes -- Increased default maximum include depth from 5 to 10. -- Emit warning if maximum include depth is exceeded. -- Suppress repeated console messages. -- Music filter: removed '--beams=None' option from abc2ly invocation - because it is broken on LilyPond 2.14 (Ubuntu 12.04). -- Replaced obsolete '' tag with '' in HTML backends. -- Allow configuration attribute entries to create a new section - (previously you could only modify existing sections). See: - https://groups.google.com/group/asciidoc/browse_thread/thread/7be28e9714f249c7[discussion - list]. -- Documented `{wj}` (word-joiner) attribute and updated FAQ. See: - https://groups.google.com/group/asciidoc/browse_thread/thread/961a957ab5872ebf[discussion - list]. -- FAQ: Added 'How can I place a footnote immediately following quoted - text?' See - https://groups.google.com/group/asciidoc/browse_thread/thread/961a957ab5872ebf[discussion - list]. -- Added Greek language configuration file. Contributed by Michael - Dourmousoglou. See - https://groups.google.com/group/asciidoc/browse_thread/thread/9e79d8494ef8d870[discussion - list]. -- FAQ: Added 'Using roles to select fonts for PDF'. Submitted by Lex - Trotman and based on solution by Antonio Borneo. See: - https://groups.google.com/group/asciidoc/browse_frm/thread/64b071bb21de9cf0[discussion - list]. -- Apply same monospaced font size to all monospaced text. -- Changed '0' number padding to spaces in numbered GNU - source-highlight outputs. -- Allow 'highlight' source highlighter to use 'python' for Python - `{language}` name. r1142: Update the AsciiDoc 'source' filter to - allow the use of the 'highlight' source code highlighter. See - https://groups.google.com/group/asciidoc/browse_frm/thread/e045c9986c71d72a[discussion - list]. -+ -NOTE: The 'pygments' attribute has been deprecated in favor of the new -'source-highlighter' attribute. - -- Vim syntax highlighter: Don't confuse trailing open block delimiter - with section underline. -- Added 'skip' option to paragraphs (c.f. Delimited Block 'skip' - option). - -.Bug fixes -- *FIXED*: latex, music and graphviz filters: When the filter output - image is data-uri encoded write it to the indir (instead of the - outdir) so that encoder can find it. See - https://groups.google.com/group/asciidoc/browse_thread/thread/f5174f450a61f14b[discussion - list]. -- *FIXED*: Escape the ']' character inside inline macros. See - https://groups.google.com/group/asciidoc/browse_thread/thread/db3b734a6931cb74[discussion - list]. -- *FIXED*: source highlighter filter: Pass 'role' attribute to HTML - backends. -- *FIXED*: source highlight filter: docbook backend: 'role' attribute - was not passed to listings without a title. Patch submitted by Lex - Trotman. See - https://groups.google.com/group/asciidoc/browse_thread/thread/13c9ee97930342b3[discussion - list]. -- *FIXED*: music2png.py: 'FOPException: Raster ByteInterleavedRaster' - error (FOP 1.0, ImageMagick 6.6.9-7). - - - -Version 8.6.7 (2012-03-17) --------------------------- -.Release highlights -No major enhancements but quite a few bug fixes which, among other -things, fixes Jython compatibility and improves Windows compatibility. - -.All additions and changes -- Vim syntax highlighter: highlight entity refs in macro arguments. -- Added files with `.asciidoc` extension to Vim file type detection. - http://groups.google.com/group/asciidoc/browse_thread/thread/a9762e21ec0cc244/5d3a4ebf20e6847e[Patch] - submitted by Dag Wiers. -- Added 'replacement3' substitution to enable - http://groups.google.com/group/asciidoc/browse_thread/thread/843d7d3d671006fb/25628e14c829db3f[ODT - whitespace processing]. -- Added 'unbreakable' option to XHTML and HTML 5 backends. -- Implemented toc::[] block macro and 'toc-placement' attribute for - HTML backends to allow the Table of Contents placement to be set - manually by the author. -- Added FAQs: 'How can I control page breaks when printing HTML - outputs?' and 'Is it possible to reposition the Table of Contents - in HTML outputs?'. -- Added `--backend` and `--backend-opts` options to the 'a2x' command - to allow 'a2x' to use backend plugin code extensions. - http://groups.google.com/group/asciidoc/browse_thread/thread/b8e93740b7cd0e1d/b5e0b83fe37ae31a[Patch] - submitted by Lex Trotman. -- Added - http://groups.google.com/group/asciidoc/browse_thread/thread/3d06b0105dfbb780/8c60eb7a62f522e4[args - block attribute] to source highlight blocks to allow arbitrary - parameters to be passed to the source highlighters. -- If the 'ascii-ids' attribute is defined then non-ascii characters in - auto-generated IDs - http://groups.google.com/group/asciidoc/browse_thread/thread/33e99b78e2472122[are - replaced] by their nearest ascii equivalents (to work around DocBook - processor limitations). -- Added global 'blockname' attribute which is dynamically updated to - identify the current block. See - http://groups.google.com/group/asciidoc/browse_thread/thread/8200e29815c40f72[discussion - list]. -- 'xhtml11', 'html5' backends: Include book part TOC entries for - multi-part books. Patch submitted by Loïc Paillotin. -- Removed code filter example from the AsciiDoc User Guide so that - backends implemented as external plugins can compile the manual. See - http://groups.google.com/group/asciidoc/browse_thread/thread/849e5ea91f43adf2[discussion - list]. -- If the delimited block 'skip' option is set then do not consume - block title and attributes. This makes it possible for the comment - delimited blocks to use an attribute list (previously the comment - delimited block was hardwired to skip preceding attributes and - titles). See - http://groups.google.com/group/asciidoc/browse_thread/thread/e92a75abcc382701[discussion - list]. -- Added `backend-confdir` intrinsic attribute. - -.Bug fixes -- *FIXED*: slidy backend: broken 'stylesheet' attribute. - http://groups.google.com/group/asciidoc/browse_thread/thread/58d0843ae4345afd[Patch] - submitted by Micheal Hackett. -- *FIXED*: Restored - http://groups.google.com/group/asciidoc/browse_thread/thread/b0e69e393b6f9f20/47a2c7586f9e40c6?lnk=gst&q=themes+tarball#47a2c7586f9e40c6[missing - themes] to zip file distribution archive. -- *FIXED*: Grammatical error in error messages. - http://groups.google.com/group/asciidoc/browse_thread/thread/b9d705c6b6b39f59/1e120483dafca109[Patch] - submitted by Dag Wieers. -- *FIXED*: Use configured normal substitution in preference to the - default one. -- *FIXED*: The 'eval' block macro would execute multiple times if it - evaluated to 'None'. -- *FIXED*: Duplicated entries in TOC of large document. - http://groups.google.com/group/asciidoc/browse_thread/thread/103445ab9d95cb0c[Patch] - submitted by Sebastien Helleu. -- *FIXED*: Python 2.4 backward - http://code.google.com/p/asciidoc/issues/detail?id=9[incompatibility]. -- *FIXED*: 8.6.6 regression broke Jython compatibility. See - http://groups.google.com/group/asciidoc/browse_thread/thread/4608b77ec289f6c4[discussion - list]. -- *FIXED*: Leaky file handles in a2x and music and latex filters which - created incompatibility problems for Jython. -- *FIXED*: All Python filters are executed with the same Python - interpreter that executes the asciidoc parent (previously filters - were hardwired to execute the 'python' interpreter). This prevents - http://groups.google.com/group/asciidoc/browse_thread/thread/14e8fcb289a135b/3af3b4e57b827c78?lnk=gst&q=archlinux#3af3b4e57b827c78[Python - mix-ups]. -- *FIXED*: Microsoft Windows shelled command-line truncation that - caused shelled commands to fail e.g. the 'data-uri' attribute - failure. - - -Version 8.6.6 (2011-09-04) --------------------------- -.Release highlights -- The AsciiDoc plugin architecture has been enhanced, unified and - extended: - * Plugin commands have been added to the asciidoc(1) `--backend` - option. - * An asciidoc(1) `--theme` option has been implemented to specify a - theme and to manage theme plugins. - * A plugin 'build' command (for creating plugins) added. - * 'build', 'install', 'list' and 'remove' plugin commands are all - recognized by asciidoc(1) `--backend`, `--filter` and `--theme` - options. -- A security update by Kenny MacDermid removes the use of `eval()` on - untrusted input (to disallow code malicious execution). - -.All additions and changes -- 'xhtml11', 'html5': Made verse and quote block text darker to print - legibly in Google Chrome browser. -- Added plugin 'build' command for plugin file creation. -- Merged `--help plugins` back to `--help manpage` so it matches the - asciidoc(1) manpage. -- The `--filter` command-line option can specify the name of filters - that will be unconditionally loaded. -- If a filter directory contains a file named `__noautoload__` then - the filter is not automatically loaded (you can used the `--filter` - command-line option to override this behavior). -- tests: Add Italian language tests. Patch submitted by Simon - Ruderich. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/5e2e6f4dd740d51a -- tests: Add tests for localized man pages. Patch submitted by Simon - Ruderich. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/5e2e6f4dd740d51a -- If the section name is prefixed with a '+' character then the - section contents is appended to the contents of an already existing - same-named section (the default behavior is to replace the the - section). -- If a configuration file section named 'docinfo' is loaded then it - will be included in the document header. Typically the 'docinfo' - section name will be prefixed with a '+' character so that it is - appended to (rather than replace) other 'docinfo' sections. -- Added `{sp}` intrinsic attribute for single space character. See - http://groups.google.com/group/asciidoc/browse_thread/thread/a839aa01db0765d2 -- Fixed TOC and footnotes generator. Patch submitted by Will. See - http://groups.google.com/group/asciidoc/browse_thread/thread/734ac5afed736987 -- The `asciidoc-confdir` attribute is set to the asciidoc executable - directory if it contains global configuration files i.e. a local - asciidoc installation. -- asciidoc now throws an error instead of just a warning of the - backend configuration file is not found. -- latex filter: write MD5 file after successful PNG file generation. - Always delete temp files irrespective of outcome. -- Added truecolor option to LaTeX filter. Patch submitted by Michel - Krämer. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/6436788a10561851 -- Unit test for table column specifiers with merged cells. Patch - submitted by Simon Ruderich. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/c9238380a1f2507a -- Added verbose message for `ifeval::[]` macro evaluation. -- Added test case for `ifeval::[]` evaluation. -- Security update to remove the use of `eval()` on untrusted input (to - disallow code malicious execution). Patch submitted by Kenny - MacDermid. -- Changed web site layout from table to CSS based. See - http://groups.google.com/group/asciidoc/browse_thread/thread/ec8e8481eb0e27b0/d1c035092b5bb7a4?lnk=gst&q=caption+option#d1c035092b5bb7a4 -- a2x: Pass `--format` option value to asciidoc as 'a2x-format' - attribute. Patch submitted by Lex Trotman - (http://groups.google.com/group/asciidoc/browse_thread/thread/3e177b84bc133ca9/659796dfadad30ea?lnk=gst&q=a2x+format#659796dfadad30ea). -- Added two FAQs submitted by Lex Trotman. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/16d3fb9672a408e7 -- html5,xhtml11: Implemented themes directory structure. -- html5,xhtml11: Implemented asciidoc `--theme` management option - (install, list, build and remove commands). -- html5,xhtml11: A theme can now optionally include a JavaScript file - `.js` -- html5,xhtml11: If the 'data-uri' attribute is defined then icons - from the theme icons directory (if they exist) will be embedded in - the generated document. -- Added optional 'warnings' argument to include macros. -- The asciidoc `--verbose` option now prints file inclusion messages. -- xhtml11, html5: Remove necessity for separate manpage CSS files. -- Added 'css-signature' attribute to tests. -- Add 'css-signature' attribute to set a CSS signature for the - document. Patch submitted by Peg Russell, see: - http://groups.google.com/group/asciidoc/browse_thread/thread/bacbf8aeb8ad6a3a -- White background for toc2 TOC viewport so that horizontally scrolled - content does not obscure the the TOC. Patch submitted by Lionel - Orry, see: http://code.google.com/p/asciidoc/issues/detail?id=8 - -.Bug fixes -- *FIXED*: Plugin install command: Delete backend directory is install - fails. -- *FIXED*: Plugin install command: Fixed bug extracting binary files - on Windows (reported by Jean-Michel Inglebert). -- *FIXED*: tests: Skip blank sections in testasciidoc.conf test - configuration file instead of throwing an exception (reported by - Jean-Michel Inglebert). -- *FIXED*: If a plugin Zip file does not contain file permissions - (probably because it was created under Windows) then install it - using the default permissions. -- *FIXED*: Fixed missing quote in preceding LaTeX filter patch. Fix - submitted by Simon Ruderich. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/6436788a10561851 -- *FIXED*: Some path attributes were processed as escaped Python - strings which could result in corrupted path names with backslash - separated Windows path names. Reported by Will. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/e8f3938bcb4c8bb4/44d13113a35738ef -- *FIXED*: Vertically spanned table cells resulted in incorrect column - styles being applied to some cells. Reported by Will: - http://groups.google.com/group/asciidoc/browse_thread/thread/c9238380a1f2507a/9afc4559d51e1dbd -- *FIXED*: LaTeX backend: fixed bad escapes. Patch submitted by Mark - McCurry: - http://groups.google.com/group/asciidoc/browse_thread/thread/8c111f1046b33691/158a944cf4d5ff0d?lnk=gst&q=latex+escapes#158a944cf4d5ff0d -- *FIXED*: When using slidy backend, display of characters with - accents is wrong because of 'meta http-equiv' line missing. Reported - by Fabrice Flore-Thebault. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/eaf25f21d1da180a - - -Version 8.6.5 (2011-05-20) --------------------------- -.Release highlights -- The addition of an 'html5' backend to generate HTML 5 output. Apart - from the inclusion of 'audio' and 'video' block macros the 'html5' - backend is functionally identical to the 'xhtml11' backend. - -- A new 'flask' theme for 'xhtml11' and 'html5' backends inspired by - the http://flask.pocoo.org/docs/[Flask website] styling (see 'toc2' - example in the next item below). - -- The new 'toc2' attribute generates a table of contents in - the left hand margin ('xhtml11' and 'html5' backends). - link:article-html5-toc2.html[This example] was generated using - the following command: - - asciidoc -b html5 -a icons -a toc2 -a theme=flask article.txt - -- `a2x(1)` now has a flexible mechanism for copying arbitrary - resource files to HTML based outputs -- this is very handy for - generating EPUB files with embedded fonts and other resources. - - * The `a2x(1)` `--resource` option can be used to inject any file - into EPUB output documents e.g. CSS resources such as fonts and - background images. - * Explicitly specified resources are added to the EPUB OPF manifest - automatically. - * You can explicitly specify file extension MIME types. - * The enhanced resource processing works around a couple of DocBook - XSL bugs (see link:epub-notes.html[EPUB Notes]). - -.All additions and changes -- A new 'flask' theme for 'xhtml11' and 'html5' backends. A shameless - knock-off of the http://flask.pocoo.org/docs/[Flask website] - styling. -- Added HTML 5 article with 'toc2' table of contents to the example on - the AsciiDoc website home page. -- Added 'filters' and 'topics' help topics. Fixed documentation - errors in help text. Patch submitted by Lionel Orry, see: - http://groups.google.com/group/asciidoc/browse_thread/thread/9da9d48a6461ff14 -- Pass parent configuration files, command-line attributes and header - attributes to table asciidoc filters. Based on patch submitted by - Simon Ruderich, see: - http://groups.google.com/group/asciidoc/browse_thread/thread/5c792cbb395b753b -- Allow a 'title' attribute entry in the document header so that HTML - backends can set the 'title' element separately from the displayed - document title (the 'doctitle' attribute). -- Pass 'lang' attribute to 'asciidoc' table style filter. Patch - submitted by Simon Ruderich, see: - http://groups.google.com/group/asciidoc/browse_thread/thread/e2100b7cb29283ce -- xhtml11,html5: Added 'toc2' attribute which generates a scrollable - table of contents in the left hand margin. Based on customized CSS - written by Suraj Kurapati, see - http://groups.google.com/group/asciidoc/browse_thread/thread/c5e30ee5555877f5 -- Added 'asciidoc-confdir' intrinsic attribute which expands to the - global conf directory. -- Documented that you can specify multiple CSS files with the a2x(1) - `--stylesheet` command option. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/baf3218551d05a05 -- Improved xhtml11 backend's table of contents generation latency. - Patch submitted by Hongli Lai. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/5a7fe64fbfd65ad -- Added html5 backend. -- For consistency converted all DOS formatted configuration and text - files to UNIX format. -- html4: Added ability to use 'role' attribute with most block - elements. Patch contributed by Simon Ruderich. See - http://groups.google.com/group/asciidoc/browse_thread/thread/5620ba634fdb030a -- Added Dutch language configuration file and accompanying test file - (contributed by Dag Wieers, see - http://groups.google.com/group/asciidoc/browse_thread/thread/f969b9ce987d7f5d). -- Configuration files are loaded in two passes when the -e - command-line option is used (the same behavior as when the -e option - is not used). Patch submitted by haad. See - http://groups.google.com/group/asciidoc/browse_thread/thread/cd0f47495fd04181 - and - http://code.google.com/p/asciidoc/issues/detail?id=6&q=label%3APriority-Medium -- Documented how to include embedded fonts in an EPUB document. -- a2x: Added `.=` resource specifier syntax. -- a2x: Enable admonition icons in example EPUBs. -- a2x: allow environment variables and tilde home directories in - resource manifest files. -- a2x: don't process non-existent resource directories. -- a2x: assume resource option is a directory if the name ends with a - directory separator. -- a2x: Added a new syntax to the `--resource` option specifier which - allows the destination path to be specified. -- a2x: Copy resources referenced in the OPF and resources referenced - by the generated HTML (in theory DocBook XSL should ensure they are - identical but this is not always the case e.g. - http://sourceforge.net/tracker/?func=detail&atid=373747&aid=2854075&group_id=21935). -- Drop border from callout list image links. -- html4: Moved manpage NAME section out of header so that the name - section is rendered when the asciidoc(1) `--no-header-footer` option - is specified (so that manpages processed blogpost include the NAME - section). -- Vim syntax highlighter: TODO markers now appear in list items and - literal paragraphs and blocks. -- Constrained quotes can now be bounded on the left by a } character. - See: - http://groups.google.com/group/asciidoc/browse_thread/thread/b24cc3362f35b801 -- Added text-decoration roles (underline, overline, line-through, - blink) for xhtml11 and html5 outputs. - -.Bug fixes -- *FIXED*: epubcheck 1.1 previously issued a warning for files not - registered in the manifest (epubcheck 1.0.5 did not). This resulted - in a problem compiling the adventures-of-sherlock-holmes.txt example - (the `underline.png` resource was not in the manifest). - - -Version 8.6.4 (2011-02-20) --------------------------- -.Additions and changes -- Added text foreground and background color along with text size CSS - styles for XHTML outputs, see {website}userguide.html#X96[]. -- Vim syntax highlighter: highlight macros that start with an - attribute reference (a common idiom). -- Vim syntax highlighter: highlight attribute references in macro - attribute lists. -- Attribute entries can be used to set configuration markup templates. -- Double-width East Asian characters in titles now correctly match the - title underline widths. Submitted by Changjian Gao (see - http://groups.google.com/group/asciidoc/browse_thread/thread/77f28b0dfe60d262). -- Implemented {website}manpage.html[asciidoc(1)] filter commands, see: - http://groups.google.com/group/asciidoc/browse_thread/thread/40c64cd33ee1905c -- User's home directory now calculated in a platform independent - manner. -- Added double-quote characters to French language file. Patch - contributed Yves-Alexis Perez, see: - http://groups.google.com/group/asciidoc/browse_thread/thread/e15282f072413940 -- Vim Syntax highlighter: Highlight closing OpenBlocks which - immediately follow a literal paragraph. -- Changed UNIX `/dev/null` to OS independent `os.devnull` in filters - code. Suggested by Henrik Maier: - http://groups.google.com/group/asciidoc/browse_thread/thread/5ac8e8ea895147e9 -- Vim syntax highlighter: Single and double quoted text now highlights - correctly when preceded by an attributes list. -- Added Ukrainian language file (`lang-uk.conf`). Added double-quote - characters to Russian language file.conf). Patches contributed by - Lavruschenko Oleksandr, see - http://groups.google.com/group/asciidoc/browse_thread/thread/e15282f072413940 -- Single and double quote characters are now set using the `{lsquo}`, - `{rsquo}`, `{ldquo}` and `{rdquo}` attributes. This makes is easy to - customise language specific quotes. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/e15282f072413940 -- Implemented 'conf-files' attribute to allow configuration files to - be specified in the source document. Suggested by Lex Trotman, see: - http://groups.google.com/group/asciidoc/browse_thread/thread/b11066a828ab45b9 - -.Bug fixes -- *FIXED*: Auto-generated section title ids are now Unicode aware. -- *FIXED*: Setting 'quotes' configuration entries using document - attribute entries failed if the attribute entry was not in the - document header. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/a1dd0562dee8b939 -- *FIXED*: If the input and output file names were different then the - output file name was incorrectly used to synthesize 'docinfo' file - names. Reported by Christian Zuckschwerdt. -- *FIXED*: An error can occur when more than one consecutive quotes - are defined as a blank string. Reported by Peggy Russell. -- *FIXED*: Encoding error in automatically generated author initials. - Patch submitted by Xin Wang. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/f44615dca0b834e9 - - -Version 8.6.3 (2010-11-14) --------------------------- -.Additions and changes -- Added and 'unbreakable' option to bulleted and numbered lists - (thanks to Henrik Maier for this patch). -- Added `ifeval::[]` system macro (thanks to Henrik Maier for - suggesting this feature). -- The image 'scale' attribute sets the DocBook 'imagedata' element - 'scale' attribute. Patch submitted by Henrik Maier. -- DocBook 'preface', 'colophon' and 'dedication' style section titles - now work. Based on patch submitted by Henrik Maier. -- 'a2x': Do not inject xsltproc parameters if they were specified on - the command-line (parameter double-ups generate xsltproc 'Global - parameter already defined' errors). -- 'a2x': Refactored xsltproc parameter injection. -- 'a2x': articles chunked at section level by default. -- 'attributes', 'titles' and 'specialcharacters' sections are now read - from the local `asciidoc.conf` file before the header is parsed. - This fixes a regression problem. See - http://groups.google.com/group/asciidoc/browse_thread/thread/1b3f88f1f8118ab3 -- Document header attributes take precedence over configuration file - attributes. -- Refactored 'music', 'graphviz' and 'latex' filter configurations. -- Refactored source filter configuration and added literal paragraph - source style. -- Separated paragraph styles from paragraph syntax -- any style can be - applied to any syntax. -- Added 'listing' and 'quote' paragraph styles. -- Renamed paragraph 'default' style to 'normal'. -- Updated `--help` option text. -- 'a2x': The `asciidoc_opts`, `dblatex_opts`, `fop_opts` and - `xsltproc_opts` command-line options can be specified multiple - times. This makes embedding multiple 'a2x' options in document - headers easier to manage and less error prone. -- Added ASCIIMathML and LaTeXMathML support to slidy backend. -- Pass the 'encoding' attribute to the Pygments source highlight - filter command. -- 'a2x': HTML Help `.hhk` file named after AsciiDoc source file. -- 'a2x': Added `--xsl-file` option to allow custom XSL stylesheets to - be specified. -- Make builds the man pages. Patch submitted by Sebastian Pipping. See - http://groups.google.com/group/asciidoc/browse_thread/thread/c21c2902c29bae64 - -.Bug fixes -- *FIXED*: Sometimes double backquotes were misinterpreted as inline - literal macros. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/f510ea82a88aaee8 -- *FIXED*: Regression in 8.6.2: command-line attributes were not - available to the global asciidoc.conf. -- *FIXED*: Postponed document title substitutions until backend conf - files have been loaded (8.6.2 regression). See - http://groups.google.com/group/asciidoc/browse_thread/thread/42b63ce90c2563b8 -- *FIXED*: The XSL Stylesheets customizations were preventing chapter - and section level TOCs from being generated when using XSL - Stylesheets via 'a2x'. See - http://groups.google.com/group/asciidoc/browse_thread/thread/42b63ce90c2563b8 -- *FIXED*: ``UnicodeDecodeError: \'ascii' codec can't decode byte'' - error. This error is due to a limitation in the Python HTMLParser - module, see: http://bugs.python.org/issue3932 -- *FIXED*: Broken `--no-conf` option (8.6.2 regression). -- *FIXED*: Regression in 8.6.2: configuration attribute entries set in - the document header may cause a 'FAILED: incomplete configuration - files' error. -- *FIXED*: 'html4': corrected self closed meta tags. -- *FIXED*: 'a2x' regression in 8.6.2: HTML Help `.hhp` file name had - reverted to default name instead of the AsciiDoc source file name. - See: - http://groups.google.com/group/asciidoc/browse_thread/thread/dedc961b23e9ac56 -- *FIXED*: Attributes in man page title caused it to be dropped - resulting in invalid DocBook output. -- *FIXED*: `make uninstall` now deletes the `asciidoc.1` and `a2x.1` - man pages. - - -Version 8.6.2 (2010-10-03) --------------------------- -.Additions and changes -- 'docbook45': Enclosed bibliographic lists in a 'bibliodiv' -- you - can now include block titles with bibliographic lists. -- Added optional 'keywords', 'description' and 'title' document header - meta-data attributes to HTML backends for SEO. -- AttributeEntry values can span multiple lines with a ' +' line - continuation. -- Added 'slidy' backend (based on Phillip Lord's slidy backend - https://phillordbio-asciidoc-fixes.googlecode.com/hg/). -- Implemented 'OpenBlock' 'partintro' style for book part - introductions. -- Comment lines substitute special characters only. -- Backend specific global configuration files (all except - `asciidoc.conf`) are loaded *after* the header has been parsed -- - virtually any attribute can now be specified in the document header. -- 'xhtml11': Volnitsky theme: allow bulleted lists to have intervening - children. -- 'xhtml11': refactored CSS font-family rules to start of file. -- 'xhtml11': list bullets colored gray. -- 'ifdef' and 'ifndef' system block macros accept multiple attribute - names: multiple names separated by commas are 'ored'; multiple - attribute names separated by pluses are 'anded'. -- 'xhtml11': Volnitsky theme: set max-width on labeled lists. -- Vim syntax highlighter: Entities inside quoted text are now - highlighted. -- Added 'role' and 'id' attributes to HTML outputs generated by - 'OpenBlocks'. -- Allow floating titles to generate 'h1' (level 0) titles in HTML - outputs. -- Added a 'start' attribute to numbered lists to set the start number. - See: - http://groups.google.com/group/asciidoc/browse_thread/thread/c14a4c3b1e4f6dc5 -- Added two more docinfo attributes 'docinfo1' and 'docinfo2' to allow - and control inclusion of a shared docinfo file. See - http://groups.google.com/group/asciidoc/browse_thread/thread/c948697943432e24 -- Vim syntax highlighter highlights multi-name conditional attributes. -- LaTeX backend patch submitted by Andreas Hermann Braml (see - http://groups.google.com/group/asciidoc/browse_thread/thread/1c415fc4540ce5e5). -- Implemented 'backend aliases'; renamed `docbook.conf` to - `docbook45.conf` and aliased 'docbook45' backend to 'docbook'; - aliased 'xhtml11' to 'html'. - -.Bug fixes -- *FIXED*: Filter commands located in filter directories local to the - source document that where not in the search 'PATH' where not found. -- *FIXED*: Volnitsky theme: Verseblock font set normal instead of - monospaced. -- *FIXED*: 'xhtml11': Callout icons were not rendered as Data URIs - when 'icons' and 'data-uri' attributes were specified. -- *FIXED*: Long standing bug: nested include macros did not restore - the parent document 'infile' and 'indir' attributes. See: - http://groups.google.com/group/asciidoc/browse_thread/thread/8712a95e95a292a7 -- *FIXED*: 'html4': set preamble ID anchor. -- *FIXED*: 'xhtml11': dropped unusable 'id' and 'role' attributes from - preamble template. -- *FIXED*: Bug in multi-name conditional attributes e.g. `{x,y#}` - fails if x or y is undefined. -- *FIXED*: latex filter not being installed by Makefile. Thanks to - Grant Edwards for this patch. See - http://groups.google.com/group/asciidoc/browse_thread/thread/c4427a3902d130a8 -- *FIXED*: 'a2x': Long-standing bug in a2x which always passes - `--string-param navig.graphics 0` to 'xsltproc', regardless of - whether icons are enabled or not. Reported by Michael Wild: - http://groups.google.com/group/asciidoc/browse_thread/thread/59a610068e4acb58 - - -Version 8.6.1 (2010-08-22) --------------------------- -.Additions and changes -- 'a2x': `--resource-dir` option renamed to `--resource`. -- 'a2x': `--resource` option accepts both file and directory names. -- 'a2x': Added `-m,--resource-manifest` option. -- Added Vim syntax highlighting for quote attribute lists. -- Load 'asciidoc.conf' from all configuration directories before any - other configuration files. This ensures that attributes used for - conditional inclusion are set before backend configuration files are - processed. Previously if you wanted to control global conf file - inclusion your only choice was to modify the global 'asciidoc.conf' - file. -- AsciiDoc 'Quote element' attributes have been simplified and - generalized -- positional color and size attributes and named 'role' - attribute have been replaced by a single positional attribute. - -.Bug fixes -- *FIXED*: 'testasciidoc.py': `BACKEND` command argument was being - ignored. -- *FIXED*: Broken 'docinfo' file functionality in 'html4' and - 'xhtml11' backends (previously the docinfo file was included in - the 'body' instead of the 'header'). - -Regression issues -~~~~~~~~~~~~~~~~~ -This release breaks compatibility with quoted element positional color -and size attributes (HTML backends). To revert to the deprecated quote -behavior define the 'deprecated-quotes' attribute in the global -`asciidoc.conf` file or on the command-line. For a more detailed -explanation of the rationale behind this change see -http://groups.google.com/group/asciidoc/browse_thread/thread/b22603bfb879418c. - - -Version 8.6.0 (2010-08-16) --------------------------- -.Additions and changes -- The AsciiDoc distribution can now be built ``out of the box'' - from the distribution tarball or the Mercurial repository - (provided you have the requisite build applications installed). -- The global configuration files directory is ignored by both - 'asciidoc' and 'a2x' if AsciiDoc configuration files are installed - in the same directory as the asciidoc executable. This change - allows both a system wide copy and multiple local copies of AsciiDoc - to coexist on the same host PC. -- CSS 'quirks' mode is no longer the default 'xhtml11' output - (http://groups.google.com/group/asciidoc/browse_thread/thread/1c02d27d49221aa2). -- Relaxed anchor ID name syntax - (http://groups.google.com/group/asciidoc/browse_thread/thread/5f3e825c74ed30c). -- Added document files: `doc/epub-notes.txt`, - `doc/publishing-ebooks-with-asciidoc.txt`. -- 'a2x': If all other resource locations are exhausted then recursively - search directories named 'images' and 'stylesheets' in the - 'asciidoc' configuration files directory. -- 'a2x': options can also be set in the AsciiDoc source file. If the - source file contains a line beginning with '// a2x:' then the - remainder of the line will be treated as a2x command-line options. -- Added dblatex table-width processing instruction -- tables generated - by dblatex now observe the AsciiDoc table width as a percentage - (thanks to Gustav Broberg for suggesting this enhancement). -- 'a2x': Don't exit if the `--epubcheck` option is set and 'epubcheck' - is missing, issue warning and continue. -- Added a global 'plaintext' attribute for dealing with large amounts - of imported text. -- The author name format has been relaxed, if the the author does not - match the formal specification then it is assigned to the - 'firstname' attribute (previously asciidoc exited with an error - message). -- FAQ and documentation updates. -- Refactored chunked.xsl and epub.xsl files. -- Exchanged article.epub for more relevant book.epub on website. -- Put asciidoc.epub User Guide on website. -- 'a2x': Chunking EPUB and HTML outputs set to a per chapter basis and - the first chapter is separate from preceding contents. -- Changed dates format in example article and books to suppress EPUB - validation error. -- Added 'style' and 'role' CSS classes to xhtml11 section templates. -- Added the 'role' element to xhtml11 backend block templates. -- Suppressed md5 module deprecation warning from music and Graphviz filters. -- Pygments (http://pygments.org/) option added to source code - highlight filter. Based on Pygments source code filter written by - David Hajage - (http://groups.google.com/group/asciidoc/browse_thread/thread/d8d042f5a3021369/8934ebbb8cb7144b). -- xhtml11: Added a new theme (volnitsky). Written and contributed by - Leonid V. Volnitsky. -- xhtml11: Set body element class name to document type. -- Added refentryinfo element and contents (including revdate) to man - page DocBook output. Man pages are now dated using the revdate - attribute value if it has been defined. Based on patch supplied by - Rainer Muller - http://groups.google.com/group/asciidoc/browse_frm/thread/319e5cd94493e330/3fcb83fab067af42. -- Added `{template:...}` system attribute. -- Table of contents attribute 'toc' can now be specified in the - document header. -- Reimplemented music and latex filter -m option functionality when - the input is stdin using MD5 checksums. -- Added 'latex' filter. -- Added auto file name generation to image generating filters - (latex,music, graphviz). -- Added `counter2` and `set2` system attributes (to implement image - auto file name generation). -- Undefined attribute in filter command generates error but does not - exit. -- Attribute substitution proceeds from start line to end line - (previously was in reverse order which was really confusing). -- Tidied up music filter code: - * Format option is optional and default to 'abc' unless Lilypond - notation detected. - * The -m option does not apply to stdin input. -- Added paragraph styles to music and graphviz filters. -- Documented dynamic template names. 753: Graphviz filter can now - generate SVG format images. Patch submitted by Elmo Todurov, see: - http://groups.google.com/group/asciidoc/browse_frm/thread/fe9b33d8f5f1e0af - The xhtml11 SVG Graphviz template marked EXPERIMENTAL. No SVG - support for other backends. -- AsciiDoc template names can now contain embedded attribute - references. -- Added 'legalnotice' tag to `doc/article-docinfo.xml` example. -- xhtml11 backend: Callouts and callout lists display callout icons - when the 'icons' attribute is defined. See - http://groups.google.com/group/asciidoc/browse_frm/thread/8eda3ea812968854 -- Document attribute names are case insensitive everywhere, this makes using -attribute entries more consistent e.g. previously :VERS: had to be refered to -with {vers} ({VERS} did not work). -- Hungarian translation of footer-text (submitted by Miklos Vajna). - See - http://groups.google.com/group/asciidoc/browse_frm/thread/7174cb7598993c72# -- asciidocapi.py 0.1.2: Can now load AsciiDoc script named asciidoc. - See - http://groups.google.com/group/asciidoc/browse_frm/thread/66e7b59d12cd2f91 - Based on patch submitted by Phillip Lord. -- German translation of footer-text (submitted by Simon Ruderich). See - http://groups.google.com/group/asciidoc/browse_frm/thread/7174cb7598993c72 -- Pushed HTML footer text into language conf files with the - introduction of a [footer-text] configuration file template section. - See - http://groups.google.com/group/asciidoc/browse_frm/thread/7174cb7598993c72 - -.Bug fixes -- *FIXED*: Sometimes multiple double quoted text elements in the same - paragraph were mistakenly seen as starting with an inline literal. - See - http://groups.google.com/group/asciidoc/browse_frm/thread/219c86ae25b79a21 -- *FIXED*: 'localtime' and 'doctime' attributes calculated incorrect - daylight saving / non daylight saving timezones and consequently so - did HTML footers. Patch submitted by Slawomir Testowy. See - http://groups.google.com/group/asciidoc/browse_frm/thread/af652507caf6cec9 -- *FIXED*: Missing selector for 'List of examples' title in DocBook - CSS file. Patch submitted by Laurent Laville. See - http://groups.google.com/group/asciidoc/browse_frm/thread/3f96900f7fbf5620 -- *FIXED*: Broken accents in lang-hu.conf. See: - http://groups.google.com/group/asciidoc/browse_frm/thread/7174cb7598993c72 -- *FIXED*: DocBook XSL generated HTML callout lists are properly - aligned. Submitted by Lionel Orry. See - http://groups.google.com/group/asciidoc/browse_frm/thread/2ff802547b6a75ea -- *FIXED*: Filter execution now occurs prior to filter markup template - substitution to ensure image data URI encoding happens after image - generation (see - http://groups.google.com/group/asciidoc/browse_thread/thread/14e8fcb289a135b). -- *FIXED*: The section numbers no longer increment when the 'numbered' - attribute is undefined (see - http://groups.google.com/group/asciidoc/browse_thread/thread/faa36e9e5c7da019/d24cab3fe363e58d). - - -Version 8.5.3 (2010-01-18) --------------------------- -.Additions and changes -- a2x: Added a2x configuration file options ASCIIDOC_OPTS, - DBLATEX_OPTS, FOP_OPTS, XSLTPROC_OPTS (appended to same-named - command-line options). See - http://groups.google.com/group/asciidoc/browse_frm/thread/ac4b9bfa2116db28 -- Dropped `.hgignore` from the repository. See - http://groups.google.com/group/asciidoc/browse_frm/thread/c17abd175778f5ea -- Don't pass verbose options to asciidoc table filter so that - asciidocapi messages are not discarded. See: - http://groups.google.com/group/asciidoc/browse_frm/thread/c17abd175778f5ea -- Added `./tests/data/lang-pt-BR-test.txt` file to the repository. -- xhtml11: Verse block and verse paragraph content enveloped in a - 'pre' tag (instead of a 'div') so it renders better in text-only - browsers. See: - http://groups.google.com/group/asciidoc/browse_frm/thread/1b6b66adb24e710 -- User Guide: Clarified Passthrough Blocks (suggested by Simon - Ruderich). -- FAQ: 'How can I include lines of dashes inside a listing block?' -- FAQ errata and updates (submitted by Simon Ruderich). -- User Guide errata. -- Simplified 'asciidoc-toc' processing instruction and included lists - of figures, tables, examples and equations in books (i.e. revert to - pre-8.5.0 behavior). -- Attempted to have dblatex recognise the 'asciidoc-toc' processing - instruction but couldn't get it to work. -- Added 'notitle' attribute to allow the document title to be hidden. - - -.Bug fixes -- *FIXED*: Regression: system attribute escaping did not work. -- *FIXED*: Website: broken image links in chunked User Guide. - - -Version 8.5.2 (2009-12-07) --------------------------- -.Additions and changes -- Updated example article and book documents with the recommended - explicit section name syntax (see the 'Special section titles - vs. explicit template names' sidebar in the AsciiDoc 'User Guide'). -- Added Italian language configuration file (contributed by Fabio - Inguaggiato). -- Added 'header' table style. See: - http://groups.google.com/group/asciidoc/browse_frm/thread/a23fea28394c8ca9 -- Pass 'icons', 'data-uri', 'imagesdir', 'iconsdir' attributes to - 'asciidoc' table style filter so that images are rendered in table - cells. -- Pass 'trace' and 'verbose' attributes to 'asciidoc' table style - filter so diagnostic information is printed from table cell source. -- The 'eval' system attribute can be nested inside other system - attributes. -- HTML outputs: Table and figure caption punctuation set to more usual - syntax. -- docbook backend: footnotes can now contain embedded images. See - http://groups.google.com/group/asciidoc/browse_frm/thread/50b28f6941de111a -- CSS tweaks so that tables processed by DocBook XSL Stylesheets have - the default asciidoc xhtml11 backend styling. See - http://groups.google.com/group/asciidoc/browse_frm/thread/dfe5204d5b2c9685 -- Block titles take precedence over section titles to avoid titled - delimited blocks being mistaken for two line section titles (see - http://groups.google.com/group/asciidoc/browse_frm/thread/f0b6f9989f828c3). -- Section title trace displays level and title text. -- FAQ additions. -- Added `{zwsp}` (zero width space) attribute. -- Undefined paragraph styles are reported (previously threw a runtime - error). -- Eliminated empty preamble generation. -- Floating titles now processed in all contexts. -- Implemented auto-lettered appendix names and updated example - documents. -- Section numbering can be disabled in HTML outputs with a - ':numbered!:' AttributeEntry. -- xhtml11: Nicer default quote block styling. -- Exclude floating titles from xhtml11 table of contents. Patch - submitted by Mark Burton (see - http://groups.google.com/group/asciidoc/browse_frm/thread/14aefc1cb6bd85f5). -- Enhanced `doc/article-docinfo.xml` example docinfo file. -- Vim syntax highlighter improvements. - -.Bug fixes -- *FIXED*: Absolute 'imagesdir' and 'iconsdir' attribute path names - do not work with the xhtml11 data-uri encoding. See - http://groups.google.com/group/asciidoc/browse_frm/thread/cb8b7694bbc82a6 -- *FIXED*: Regression issue with inline data-uri images. See - http://groups.google.com/group/asciidoc/browse_frm/thread/cb8b7694bbc82a6 -- *FIXED*: An unexpected error occurred when processing a table - containing CSV data if the 'cols' attribute was not explicitly - specified. See - http://groups.google.com/group/asciidoc/browse_frm/thread/4b0f364b477ec165 - - -Version 8.5.1 (2009-10-31) --------------------------- -.Additions and changes -- If an AsciiDoc document file begins with a UTF-8 BOM (byte order - mark) then it is passed transparently through to the output file. - The BOM is stripped from included files. See - http://groups.google.com/group/asciidoc/browse_frm/thread/e5e61823ff4203cd -- Added AsciiDoc 'role' attribute to quoted text. Sets 'class' - attribute in HTML outputs; 'role' attribute in DocBook outputs. See: - http://groups.google.com/group/asciidoc/browse_frm/thread/2aa3e5711d243045 -- Conditional attribute syntax extended: they now accept multiple ORed - or ANDed attribute names. -- The 'xhtml11' backend dynamically processes footnotes using - JavaScript. -- Tidied up and namespaced 'xhtml11' JavaScript. -- Superceded `javascripts/toc.js` with `javascripts/asciidoc-xhtml11.js`. -- Added 'disable-javascript' attribute ('xhtml11' backend). -- Styled HTML footnotes. -- Added links to HTML footnote refs. -- Added title attribute to inline image macros to display popup - ``tooltip'' (HTML outputs only). -- Single-quoted attribute values are substituted in block macros (just - like the AttributeList element). -- For consistency changed underscores to dashes in attribute names. - Public attributes with underscores retained for compatibility. -- Added Brazilian Portuguese language configuration file (contributed - by Thiago Farina). -- Added 'leveloffset' attribute to make it easier to combine - documents. - -.Bug fixes -- *FIXED:* a2x: `--dblatex-opts` is now processed last so - `asciidoc-dblatex.xsl` params can be overridden. Patch submitted by - Mark Fernandes (see - http://groups.google.com/group/asciidoc/browse_frm/thread/5215c99dcc865e7d). -- *FIXED:* An error occurred if a directory in current path with same - name as executable. - -Regression issues -~~~~~~~~~~~~~~~~~ -There's been quite a bit of tiding up to the xhtml11 JavaScript. The -most obvious change is that the toc.js script has been superceded by -asciidoc-xhtml11.js so if you're linking you'll need get a copy of -the new file from the distribution javascripts directory. - -If you use customised xhtml11 configuration file `[header]` and -`[footer]` sections and you want them to use the new footnotes feature -then you've got a bit more work to do: - -. The onload event expression changed. -. The new `
...
` div envelopes document - content. -. You need to add `
...
` div to the - `[footnotes]` section for footnotes to work. -. Drop the `ifdef::toc[]` macro that surround JavaScript inclusion. - -Take a look at the [header] and [footer] changes in the xhtml11.conf -diff to see what's going on: -http://hg.sharesource.org/asciidoc/diff/55a5999bfd04/xhtml11.conf - - -Version 8.5.0 (2009-10-04) --------------------------- -.Additions and changes -- Implemented a 'float' attribute for tables and block images (HTML - outputs only). -- Added `unfloat::[]` block macro to cancel floating. -- Added table 'align' attribute to (HTML outputs only). -- The image 'align' attribute now works with HTML backends. -- Renamed table cell 'align' attribute to 'halign' so it doesn't clash - with the new table 'align' attribute. -- Added 'breakable' and 'unbreakable' options to AsciiDoc example and - block image elements. -- `[miscellaneous]` section entries now update properly when set from - a document 'AttributeEntry'. -- `[miscellaneous]` section `pagewidth` entry accepts fractional - values. -- Fractional column widths are now calculated correctly when using - fractional 'pageunits' (DocBook tables). -- Use DocBook XSL table width processing instructions. -- asciidoc 'KeyboardInterrupt' exits with error code 1. -- Added 'set' system attribute to allow attributes to be set from - configuration file templates. -- Allow constrained quotes to be bounded on the left by a colons and - semicolons, see - http://groups.google.com/group/asciidoc/browse_frm/thread/b276a927fdc87995 -- Titled listing and literal blocks (DocBook outputs) no longer default - to examples. See - http://groups.google.com/group/asciidoc/browse_frm/thread/f4df7c9eec01a9bd -- Updated language file table, figure and example captions to - accommodate new auto-numbering in html4 and xhtml11 backends. -- Titled source highlight filter listings generated by docbook backend - are now rendered as examples. See - http://groups.google.com/group/asciidoc/browse_frm/thread/f4df7c9eec01a9bd -- Implemented 'counter' system attribute. -- Use 'counter' system attributes to number titled tables and block - images in HTML backends. -- Added program name suffix to console messages. -- Added substitution to the 'AttributeEntry' passthrough syntax, this - replaces the now unnecessary 'attributeentry-subs' attribute. -- Allow passthrough inline macro syntax to be used in - 'AttributeEntrys'. -- Reinstated 8.4.4 default 'lang' attribute behavior. See - http://groups.google.com/group/asciidoc/browse_frm/thread/d29924043e21cb6a. -- Added 'max-width' attribute to the 'xhtml11' backend to set maximum - display width. See - http://groups.google.com/group/asciidoc/browse_frm/thread/74d9a542b79ccd50. -- Added 'a2x.py', a rewritten and much enhanced version of the old - 'a2x' bash script. -- The new 'a2x' can output EPUB formatted documents. -- Added `--safe` option and deprecated `--unsafe` option. Patch - submitted by Todd Zullinger. See - http://groups.google.com/group/asciidoc/browse_frm/thread/ea3a8ea399ae5d2a - and - http://groups.google.com/group/asciidoc/browse_frm/thread/69b3183fdab7c6a5 -- Added 'CHECK' and 'TEST' todo highlight words to Vim syntax - highlighter. -- Line breaks, page breaks, and horizontal rulers are now processed by - dblatex, thanks to a patch submitted by Mark Fernandes - (http://groups.google.com/group/asciidoc/browse_frm/thread/a254cf949ea7c6c5). -- Allow footnote macros hard up against the preceding word so the - rendered footnote mark can be placed against the noted text without - an intervening space (patch submitted by Stas Bushuev, - http://groups.google.com/group/asciidoc/browse_frm/thread/e1dcb7ee0efc17b5). -- Normalized path in `safe_filename` function (submitted by Todd - Zullinger, - http://groups.google.com/group/asciidoc/browse_frm/thread/69b3183fdab7c6a5). -- The Asciidoc 'numbered' and 'toc' attributes cause DocBook outputs - to include `asciidoc-numbered` and `asciidoc-toc` processing - instructions, these are used by DocBook XSL to include section - numbering and table of contents (like Asciidoc HTML backends). For - backward compatibility both 'numbered' and 'toc' attributes are - defined by default when the 'docbook' backend is used. See - http://groups.google.com/group/asciidoc/browse_frm/thread/1badad21ff9447ac. -- 'data-uri' attribute is now evaluated dynamically and can be set in - document body (previously could only be set from command-line). -- Added 'sys3' and 'eval3' system attributes to passthrough generated - output, this fixes the data-uri inline image problem: - http://groups.google.com/group/asciidoc/browse_frm/thread/a42db6bc54c2c537. -- Missing language file generates a warning instead of an error. -- Updated Spanish language file (updates contributed by Gustavo Andrés - Gómez Farhat). - -.Bug fixes -- *FIXED:* Options in an 'AttributeList' option attribute are merged - with (rather than replace) configuration file options. -- *FIXED:* Comment blocks and comment block macros no longer consume - preceding block titles and attribute lists. -- *FIXED:* `examples/website/layout1.conf` and - `examples/website/layout2.conf` TOC problem. Submitted by Mark - (burtoogle). See - http://groups.google.com/group/asciidoc/browse_frm/thread/b9c63be67dd1d11c -- *FIXED:* Only the first occurrence of passthrough macro was - substituted. Patch submitted by Peter Johnson. See - http://groups.google.com/group/asciidoc/browse_frm/thread/1269dc2feb1a482c -- *FIXED:* asciidoc now runs on Jython 2.5.0. -- *FIXED:* Wordpress margins and pads in a number of block - elements - (http://groups.google.com/group/asciidoc/browse_frm/thread/36ff073c79cbc20a). - -Regression issues -~~~~~~~~~~~~~~~~~ -- Tables generated by 'dblatex' occupy 100% of the available space - regardless of the 'width' attribute setting. To restore width - behavior change the 'pageunits' miscellaneous parameter to 'pt'. You - can do this from the command-line with the `-a pageunits=pt` option. - See {website}userguide.html#X89[DocBook table widths]. - - -Version 8.4.5 (2009-05-24) --------------------------- -.Additions and changes -- Added manpage 'Name' and 'Synopsis' section title customization to languages - configuration files. -- Synopsis manpage section no longer mandatory. -- Section markup templates can be specified by setting the title's - first positional attribute or 'template' attribute. -- The article and book document header can now include a revision - remark. -- A 'role' attribute can now be applied to block elements. This adds - the 'role' attribute to DocBook elements. Patch submitted by - http://groups.google.com/group/asciidoc/browse_thread/thread/62278a054188a038[Noah - Slater]). -- Renamed 'revision' and 'date' attributes to more sensible and consistent - 'revnumber' and 'revdate' (old names deprecated but still - recognized). -- Moved backend specific attributes to Appendix H in User Guide. -- Renamed and generalized the docbook backend revision history - inclusion mechanism to 'docinfo' to reflect the use of all article - or book information elements. The old revision history names still - work but have been deprecated. -- Refactored docbook.conf headers. -- Moved line break replacement from `[replacements]` to - `[replacements2]` so the replacement occurs after the mailto macro. - This fixes bug - http://groups.google.com/group/asciidoc/browse_thread/thread/4bdcdfb0af773e2 -- The typewriter to punctuation apostrophe replacement can be escaped - with a backslash. -- Graphviz filter outputs images to 'imagesdir' if it is defined. -- Made the block image macro generic so that it can be used for filter - outputs. As a result Music and Graphviz filters: - * Have been greatly simplified. - * Honor the 'data-uri' attribute. - * 'html4' outputs no longer generate W3C validation warning. -- The 'iconsdir' attribute no longer requires a trailing directory - separator character. -- Removed borders around linked html4 images. -- Added 'html4' specific HTML output for music filter. -- 'a2x': Added `--unsafe` option (shortcut for - `--asciidoc-opts=--unsafe`). -- 'a2x': The FOP executable can now be named `fop` (this is the - default name in some distributions). -- Attributes are now substituted in the system macro attribute list. -- If the output is set to stdout (i.e. no output directory is defined) - then Music and Graphviz filters will output included images to the - source file directory. -- Added 'name' directive to 'testasciidoc'. -- Added lots of 'testasciidoc' new tests. -- Moved language specific configuration parameters into `lang-en.conf` - file. -- 'lang' attribute entry can be specified in the AsciiDoc source file - (preceding the header). -- Removed cruft from A-A-P scripts and documented them. -- Added German language config file (`lang-de.conf`) contributed by - Michael Wild. -- Added French language config file (`lang-fr.conf`) contributed by - Yves-Alexis Perez. -- Added Russian language config file (`lang-ru.conf`) contributed by - Artem Zolochevskiy. -- Added Hungarian language config file (`lang-hu.conf`) contributed by - Miklos Vajna. - -.Bug fixes -- *FIXED:* Multiple manpage names are now handled correctly when - generating DocBook output, each name now generates a separate - DocBook `` element. See - http://groups.google.com/group/asciidoc/browse_thread/thread/c93bb4db025225d8 -- *FIXED:* A problem that caused AttributeEntries preceding the header - to be overwritten when the language conf file loaded. -- *FIXED:* Possible inline macro name ambiguity e.g. link matches olink. -- *FIXED:* The documented macro definition deletion behavior had been - broken for a long time. -- *FIXED:* Email addresses not recognized when followed by a period - character. -- *FIXED:* Hyphens in mailto macros can delimit nested addresses e.g. - \bloggs@mail was processed inside - \mailto:joe-bloggs@mail-server.com[Mail]. -- *FIXED:* User name in FTP URI generated incorrect FTP link. See - http://groups.google.com/group/asciidoc/browse_thread/thread/1d796a9c9ddb2855 -- *FIXED:* Source highlighter now works with Wordpress backend (see - http://groups.google.com/group/asciidoc/browse_thread/thread/6d8c716748b109e3). - -[[X2]] -Regression issues -~~~~~~~~~~~~~~~~~ -. A colon following the date in the AsciiDoc header is treated as a - revision remark delimiter -- this could be an issue if you have used - a colon in the header date. - - -Version 8.4.4 (2009-04-26) --------------------------- -.Additions and changes -- Added table column and row spanning. -- Table styles can now be applied per cell. -- Vertical cell alignment can be applied to columns and individual - cells. -- Added table 'align' attribute to set horizontal alignment for entire - table. -- Included Geoff Eddy's update of the experimental LaTeX backend. -- A new attribute named 'trace' controls the output of diagnostic - information. If the 'trace' attribute is defined then - element-by-element diagnostic messages detailing output markup - generation are printed to stderr. -- Added 'literal' paragraph style (allows 'literal' style to be - applied to normal paragraphs). -- Deleted unused `replacements2` from `xhtml11.conf`. -- Added `replacements2` to default substitutions. -- 'testasciidoc.py': messages to 'stdout', only diffs to 'stderr'. -- Added transparency to `smallnew.png` image. - -.Bug fixes -- All combinations of leading comments and attribute entries at the - start of a document are now skipped correctly. -- *FIXED:* `./configure` doesn't support `--docdir` as expected (patch - submitted by Artem Zolochevskiy) -- *FIXED:* Constrained quotes were incorrectly matched across line - boundaries e.g. the string `+\nabc+` incorrectly matched a monospace - quote. - - -Version 8.4.3 (2009-04-13) --------------------------- -.Additions and changes -- DocBook outputs default to DocBook version 4.5 doctype (previously - 4.2). -- Configuration file `[specialsections]` definitions can be undefined - by setting their configuration entry values blank. -- The Makefile 'install' target depends on the 'all' target to ensure - pre-install patches are applied. -- 'testasciidoc.py' now emits user friendly messages if: - . the configuration file is missing. - . an illegal backend is specified. - . an illegal test number is specified. - -.Bug fixes -- Fixed - http://groups.google.com/group/asciidoc/browse_thread/thread/fd27add515597c06[missing - template section] error. -- The 'testasciidoc.py' `--force` option no longer deletes test data - files that were not specified. -- Dropped second quotes substitution in table cells -- it had - effectively disabled quote escaping in table cells. - - -Version 8.4.2 (2009-03-19) --------------------------- -.Additions and changes -- Added {website}testasciidoc.html[testasciidoc], a tool to verify - AsciiDoc conformance. -- A warning is issued if nested inline passthroughs are encountered. -- 'asciidocapi': setting an attribute value to `None` will undefine - (delete) the attribute (this in addition to the `name!` attribute - name format that the `asciidoc(1)` command uses). - -.Bug fixes - - -Version 8.4.1 (2009-03-10) --------------------------- -.Additions and changes -- AsciiDoc now has a {website}asciidocapi.html[Python API]. The - following minimal example compiles `mydoc.txt` to `mydoc.html`: -+ -[source,python] -------------------------------------------------------------------------------- -from asciidocapi import AsciiDocAPI asciidoc = AsciiDocAPI() -asciidoc.execute('mydoc.txt') -------------------------------------------------------------------------------- - -- Backtick quoting for monospaced text is now implemented as an - 'inline literal' passthrough. This makes more sense since monospace - text is usually intended to be rendered literally. See - <> below for the impact this may have on - existing documents. Here are some examples that would previously - have had to be escaped: - - The `++i` and `++j` auto-increments. - Paths `~/.vim` and `~/docs`. - The `__init__` method. - The `{id}` attribute. - -- Added `--doctest` option to `asciidoc(1)` command. -- Added an optional second argument to 'BlockId' element, this sets - the `{reftext}` attribute which in turn is used to set the `xreflabel` - attribute in DocBook elements. -- Added lists to `--help` syntax summary. -- `{infile}` and `{indir}` attributes reflect the current input file - (previously always referred to the root document). -- `{docfile}` (new) and `{docdir}` (previously deprecated) attributes - refer to the root document specified on the `asciidoc(1)` - command-line. -- Vim syntax highlighter improvements. -- Syntax summary command (`asciidoc -h syntax`) additions. -- Admonition icons now have transparent backgrounds. -- Changed yellow W3C badges to blue ones in page footers. - -.Bug fixes -- Dropped `asciidoc(1)` broken undocumented `--profile` option. -- Em dash replacement now recognized at start of block. - -Regression issues -~~~~~~~~~~~~~~~~~ -Replacing backtick quoting with the 'inline literal' passthrough -raises two regression scenarios for existing documents: - -1. You have escaped the expansion of enclosed inline elements, for - example: `\{id}`. You would need to delete the backslashes: `{id}` - (if you don't the backslashes will be printed). Mostly it's just a - case of interactively finding and replacing of all occurrences of - `\. - -2. There are enclosed inline elements, for example: `some *bold* - monospaced`. You would need to switch to plus character monospace - quoting: `+some *bold* monospaced+` (if you don't the enclosed - elements won't be expanded). - -If your existing documents include these cases and you don't want to -upgrade then use the `-a no-inline-literal` command-line option, -alternatively put this in `~/.asciidoc/asciidoc.conf`: - - [attributes] - no-inline-literal= - - -Version 8.3.5 (2009-02-02) --------------------------- -.Additions and changes -- Cached compiled regular expression delimiters (speed up 'User - Manual' compilation by 250%). -- Created distinct list definitions for each numbered list style to - allow nesting of all styles. -- Roman numbers in numbered lists are followed by a closing - parenthesis instead of a period to eliminate 'i', 'v', 'x' item - ambiguity with respect to alpha numbered list items. -- Added `**`, `***`, `****`, `*****` - bulleted lists. -- Added `...`, `....`, `.....` implicit numbered - lists. -- Added `:::`, `::::` labeled lists. -- Updated User Guide for new list syntaxes. -- Optimized paragraph and list termination detection with separate - precompiled regular expressions for performance and to prevent - reaching Python 100 named group limit. -- Updated Vim syntax highlighter for new list syntaxes. -- Allow `template::[]` macros in conf file entries sections (not just - in template sections). -- Dropped unused `[listdef-numbered2]` conf file sections. -- Renamed 'ListBlock' to more appropriate 'OpenBlock'. -- Implemented single-line versions of `ifdef::[]` and `ifndef::[]` - macros. -- 'html4' backend styling: - * Underlined admonition captions. - * Added side border to Example Blocks. -- 'xhtml11' backend styling: - * Dropped right hand margin from all but quote and verse blocks. - * html4 backend: corrected over-sized width of caption in admonition - block. - -.Bug fixes -- Fixed broken numbered list nesting. - -Compatibility issues -~~~~~~~~~~~~~~~~~~~~ -The roman numbered list parenthesis syntax is incompatible with the -potentially ambiguous roman period syntax introduced in 8.3.2. - - -Version 8.3.4 (2009-01-20) --------------------------- -.Additions and changes -- Implemented a title 'float' style. A floating title (or bridgehead) - is rendered just like a normal section but is not formally - associated with a text body and is not part of the regular section - hierarchy so the normal ordering rules do not apply. -- Implemented inline comment macro so comment lines can now appear - inside block elements. -- Comment lines are sent to the output if the 'showcomments' attribute - is defined (comment blocks are never sent to the output). -- Single quoting attribute values in 'AttributeList' elements causes - them to be substituted like normal inline text (without single - quoting only attribute substitution is performed). -- Rewrote list item processing (was very crufty). List continuation - and list blocks now work as expected. Updated and clarified list - documentation in User Guide. -- The 'revision' attribute now recognizes the RCS $Id$ marker format. -- An RCS $Id$ marker formatted revision line in the header does not - need to be preceded by an author line. -- If an RCS $Id$ formatted revision is specified and the author name - has not already been set then the author name in the $Id$ marker - will be used. -- Updated Gouichi Iisaka's Graphviz filter to version 1.1.3. -- Added 'autowidth' table attribute option for (X)HTML outputs. -- DocBook backend now puts 'orgname' optional attribute in DocBook - header. -- Deprecated undocumented 'companyname' attribute in favor of - DocBook's 'corpname'. -- Removed explicit closing backslash from HTML4 self-closing tags to - comply with WC3 recommendation. - -.Bug fixes -- Fixed 8.3.3 regression whereby adjacent lists with the same syntax - but different list styles were incorrectly treated as a single list. - - -Version 8.3.3 (2009-01-02) --------------------------- -This release supersedes 8.3.2. - -.Bug fixes -- The broken and confusing numeration and numeration2 numbered list - attributes have been dropped, use the style attribute instead. - - -Version 8.3.2 (2009-01-01) --------------------------- -.Additions and changes -- Added Gouichi Iisaka's Graphviz filter to distribution. -- The 'SidebarBlock' element can now be rendered with an 'abstract' - style. -- Reorganized filters into a separate subdirectory for each filter. -- Updated `Makefile.in` and `MANIFEST` files to reflect new filters - organization. -- Added 'listing' style to 'LiteralBlock' element so listings with - nested listing blocks can be rendered as a listing block. -- Changed example 'code' filter to use preferred 'ListingBlock' syntax - (the old `~` delimited filter syntax is no longer used). -- Implemented 'enumeration' and 'enumeration2' numbered list - attributes for specifying the list numbering style ('arabic', - 'loweralpha', 'upperalpha', 'lowerroman' and 'upperroman'). -- AsciiDoc now recognizes 'upperalpha', 'lowerroman' and 'upperroman' - numbers in `listdef-numbered2` numbered lists and sets the number - style based on the style of the first numbered list item - (alternative to setting 'enumeration2' attribute). -- Updated `formatlistpat` definition in `.vimrc` example in User - Guide. -- You can now backslash escape system block macros. -- Added 'Pychart' FAQ. -- Drop paragraph 'text' and list 'text', 'index' and 'label' match - groups from attributes -- they are included in the element's text - and we don't want them processed a second time as attributes. -- Changed comment line block macro to a passthrough block macro to - ensure no substitutions. -- A 'subslist' no longer has to be appended to a 'PassthroughBlock' - macro definition, if omitted no substitutions are performed. -- Code tidy up: replaced deprecated `<>` operator with `!=`. -- Removed unused linuxdoc code. -- Code tidy ups: dropped old types module reference; replaced - `has_key()` with preferred `in` operator. - -.Bug fixes -- Old syntax source highlight filter regression: special characters - where not escaped in DocBook outputs. - - -Version 8.3.1 (2008-12-14) --------------------------- -.Additions and changes -- Replaced the `install.sh` script with Ben Walton's updated autoconf - scripts -- see {website}INSTALL.html[INSTALL] for details. -- Added a generalized 'AttributeEntry' syntax to allow arbitrary - configuration file entries to be set from within an AsciiDoc - document (suggested by Henrik Maier). -- Listing delimited blocks in DocBook outputs now support IDs; IDs of - titled Listing and Literal delimited blocks have been moved to the - enclosing DocBook example tag (thanks to Vijay Kumar for this - patch). -- Replaced vertical typewriter apostrophe with punctuation apostrophe - (thanks to Noah Slater). - -.Bug fixes -- Regression: Excluding double-quotes from unquoted attribute values - resulted in backward incompatibility, double-quotes in unquoted - attribute values has been reinstated. -- Regression: Text like `&...;` was sometimes mistaken for an entity - reference -- tightened up entity reference matching. - - -Version 8.3.0 (2008-11-29) --------------------------- -.Additions and changes -- {website}newtables.html[AsciiDoc new tables] is a complete redesign - of the tables syntax and generation. The new syntax and features are - a huge improvement over the old tables. The old tables syntax has - been deprecated but is currently still processed. -- {website}newlists.html[Lists can now be styled] like other block - elements. This allows a single list syntax for 'glossary', 'qanda' - (Question and Answer) and 'bibliography' lists instead of having to - remember a different syntax for each type. -- Inline passthroughs macros have been improved and block passthrough - macros added. Attribute substitution can be optionally specified - when the macro is called. -- The passthrough block has a fully transparent passthrough delimited - block block style called 'pass'. -- The 'asciimath' and 'latexmath' - {website}userguide.html#X77[passthrough macros] along with - 'asciimath' and 'latexmath' {website}userguide.html#X76[passthrough - blocks] provide a (backend dependent) mechanism for rendering - mathematical formulas. There are {website}latexmath.pdf[LaTeX Math], - {website}asciimathml.html[AsciiMathML] and - {website}latexmathml.html[LaTeXMathML] examples on the AsciiDoc - website. -- Reimplemented and cleaned up filter processing based on a patch - submitted by Kelly Anderson. Uses the newer subprocess module - instead of the deprecated popen2 module. Now works in Win32 command - shell. -- Addition FAQs, more documentation updates. -- Arbitrary HTML/XML entities can be entered in AsciiDoc source. -- Did away with the need for the `shaded-literallayout.patch` (thanks - to Henrik Maier for this patch). -- Implemented 'page break' block macro. -- Added 'line breaks' and 'ruler' processing instructions to DocBook - outputs (thanks to Henrik Maier for this patch). -- Added 'deg' (degree) and 'wj' (word joiner) entity attributes - (thanks to Henrik Maier). -- Tweaked DocBook 'indexterm2' macro to avoid white space preceding - the term when used in table cells (thanks to Henrik Maier for this - patch). -- Title elements now process the 'options' attribute like other block - elements. -- Added `single quoted' element. -- Spaces on both sides of a -- em-dash are translated to thin space - characters. -- Improved detection and reporting of malformed attribute lists. -- The list 'compact' style is now a list option. -- Added 'strong' labeled list option which makes the labels bold (HTML - outputs only). -- Dropped unsupported 'linuxdoc' backend. -- Dropped deprecated 'xhtml-deprecated' (version 6) backend. -- Added 'breakable' and 'unbreakable' attribute options to tables to - control table breaking across page boundaries (DocBook XSL/FO - outputs). By and in collaboration with Henrik Maier. -- Added 'pgwide' attribute option to tables to table, block image, - horizontal labeled lists. Specifies that the element should be - rendered across the full text width of the page irrespective of the - current indentation (DocBook XSL/FO outputs). Thanks to Henrik Maier - for this patch. -- Vim syntax highlighter: spaces before/after bullets no longer - highlighted (which is ugly if using a theme that highlights with - underlines). Thanks to Donald Chai for this patch. -- Added `a2x(1)` `--fop` option. -- Added `a2x(1)` `--no-xmllint` option. -- Highlighted labelled list terms with the navy color in XHTML - outputs. -- Use `w3m(1)` as default `a2x(1)` text format generator (fallback to - `lynx(1)`). -- Changed callout formats in html4 and xhtml11 outputs to angle - brackets to match source highlighter rendering. -- Macros now inject user defined `-option` attributes into - markup. -- Added IRC URLs to AsciiDoc inline macros. -- Added `depth` attribute to `include::[]` system macro. -- Added 'footnoteref' inline macro. -- Added 'stylesheet' XHTML attribute to specify additional custom CSS - stylesheet. -- If a paragraph style is specified it will be added to the XHTML - 'class' attribute and DocBook 'role' attribute. -- Replacements can be set in a document using the reserved - AttributeEntry name 'replacement'. -- The prefix for auto-generated section name IDs can be set with the - 'idprefix' attribute. - -.Bug fixes -- Escaped quote skipped over leading and trailing quote instead of - just the leading quote. -- Fixed bug that was causing false negative safe mode warnings (patch - submitted by Julien Palmas). -- Placed priority of AttributeEntry, AttributeList and BlockTitle - above Title. This ensures an AttributeEntry, AttributeList or - BlockTitle followed by a same length leading ListingBlock delimiter - is not mistaken for a two-line title. -- Vim syntax highlighter: fixed multi-line quoted text. -- Contstrained quote termination after non-space character enforced. -- Vim syntax highlighter: unterminated quoted text is no longer - highlighted. -- Vim syntax highlighter: passthroughs now exactly match AsciiDoc - semantics. -- Vim syntax highlighter: escaped quoted text, attribute references - and inline macros are not highlighted. -- Vim syntax highlighter: TODO's highlighted in CommentBlocks (thanks - to Scott Wall); non-greedy pass:[$$...$$]. -- Vim syntax highlighter: Comment lines mistaken for vertical list - labels (thanks to Scott Wall). -- Vim syntax highlighter: Single unmatched $$ mistakenly highlighted - remaining text (patch contributed by Scott Wall). -- Callouts now work in source highlighted listing generated by - dblatex. -- Fixed exception that occured if undefined attribute was present in - filter command. -- AttributeList block can now follow a paragraph without intervening - blank line. -- The include macro tabsize attribute is no longer propagated to - nested includes. - -.Omissions -The following features were implemented but then but removed from this -release: - -- 'pi', 'cdata' and 'comment' passthrough macros and passthrough block - styles (creeping featurism, use 'pass' macros instead). -- Generic 'tag' inline macro (creeping featurism, use 'pass' macros - instead). - - -[[X1]] -Compatibility issues -~~~~~~~~~~~~~~~~~~~~ -Version 8.3.0 has a number of backward incompatibilities with respect -to the previous 8.2.7 release: - -- The old table syntax is still processed but a 'DEPRECATED' warning - is issued. -- Entity references have to be escaped with a backslash. -- You have to explicitly precede horizontal style labeled lists with - the `[horizontal]` style attribute -- by default all labeled lists - are rendered vertically. -- The list 'compact' style has been dropped and is now a list option - (use `options="compact"` in attribute lists). -- AsciiDoc version 6 sytnax no longer supported. -- Linuxdoc been removed from the distribution. -- The unsupported experimental 'latex' backend has not been tested on - this release. -- The introduction of single-quote quoting requires that double-quote - quoting is escaped with two backslashes. - - -Version 8.2.7 (2008-07-04) --------------------------- -.Additions and changes -- Added `dvi`, `ps` and `tex` output format options to a2x(1). -- Added `--dblatex` option to a2x(1) so `dblatex(1)` can be used to - generate PDFs. -- Added custom `dblatex(1)` configuration files (in distribution - `./dblatex` directory) that are used by a2x(1). -- `dblatex(1)` is now used to generate the distributed PDF version of - the AsciiDoc User Guide. -- If you don't need a customized the link caption you can enter the - 'http', 'https', 'ftp', 'file' URLs and email addresses without any - special macro syntax -- you get the links by just cutting and - pasting URLs and emails addresses. This also makes it easier to open - links directly form AsciiDoc source ( most editors allow you to open - URLs directly). The Vim syntax highlighter has been updated to - reflect these changes. -- Highlighted source code paragraphs have been implemented -- it's a - much more convenient way to enter short code examples (see - http://www.methods.co.nz/asciidoc/source-highlight-filter.html[the - online docs]). -- The source highlighter and music filter syntax has changed -- they - now used the ListingBlock syntax customized with 'source' and - 'music' style attribute values. This follows the Paragraph styling - convention introduced by the source paragraph (previous item) and is - easier to read. The old syntax still works but has been deprecated. -- QuoteBlocks now have a 'verse' style -- you no longer have to nest a - 'verse' LiteralBlock inside a QuoteBlock for verses. The 'verse' - style on the LiteralBlock has been deprecated (still works though) - and the 'style' attribute is positional attribute 1, pushing - 'attribution' and 'citetitle' attributes to the right (you'll need - to insert a 'quote' attribute into your existing QuoteBlocks). -- It is no up to the DocBook processor to highlight source code syntax - in `` elements rather than GNU Highlighter -- this - is the correct way to handle it, plus `dblatex(1)` makes a much - better job. -- 'scaledwidth' and 'align' attributes have been added to the 'image' - macro. They apply to DocBook outputs (specifically for PDF - documents). 'scaledwidth' sets the image size as a percent of the - available page width; 'align' applies 'left', 'center' or 'right' - horizontal image justification. -- Added a2x(1) `--fop-opts=FOP_OPTS` option (patch submitted by Miklos - Vajna). -- Added a2x(1) `--dblatex-opts=DBLATEX_OPTS` option. -- Added Mikhail Yakshin's FOP 0.95 patch which fixes a long-standing - `fo.xsl` problem and allows PDF's to be generated with FOP 0.95 - (previously had to use FOP 0.20.5). -- The User Guide has been updated and outdated FOP configuration and - installation sections removed. - -.Bug fixes -- Fixed `stylesheets/xhtml11-manpage.css` not being included when - 'linkcss' attribute was used. -- Configuration file `*-style` attributes are now dumped correctly. -- Fixed 'FAILED: malformed section entry' LaTeX backend error. - -See the also the https://sharesource.org/hg/asciidoc/[AsciiDoc -repository changelog]. - - -Version 8.2.6 (2008-04-29) --------------------------- -.Additions and changes -- Enhancements to the Vim AsciiDoc syntax highlighter, for example, - quoted text is now highlighted in titles and macro captions. -- If you define the `data-uri` intrinsic attribute images referenced - by 'image' macros will be embedded in XHTML using the - http://en.wikipedia.org/wiki/Data:_URI_scheme[data: URI scheme]. - *NOTE*: Microsoft browser support for the 'data: URI scheme' is - currently limited to MSIE 8 beta 1. -- Added `toc-title` attribute to allow custom table of contents - titles. -- Added references to Alex Efros's AsciiDoc Cheatsheet to AsciiDoc - website. -- `asciidoc(1)` and `a2x(1)` man pages formatted to conform to - `man-pages(7)` recommendations. -- Old code-filter syntax (pre-8.1.0) is no longer recognized so that - malformed two-line level 2 titles are no longer confused with - 'code-filter' block delimiters. -- Added -> <- => <= arrow replacements from the Arrows block of - Unicode. -- Added DocBook refentry lang attribute -- patch contributed by - VMiklos. -- AttributeEntry names can now be numeric (``named macro targets''). -- Hide Table of Contents title if Table of Contents empty -- patch - contributed by Alex Efros. -- Various XHTML CSS tweaks. -- Code cleanup: - * Replaced `realpath()` with Python 2.2 `os.path.realpath()` library - function. - * Replaced old string library functions with string methods. - * Use file generators instead of `readlines()`. - * Renamed entities that shadowed builtins. - * Standardized string quoting. - * Dropped `readlines()` function. - -.Bug fixes -- Fixed broken CSS for decimal ordered lists nested in alpha ordered - list, thanks to Alex Efros. -- A missing closing block delimiter now reports the opening delimiter - line number instead of the end of file line number. -- Fixed an error generated by the asciidoc `-e` option when there are - no block definitions -- patch contributed by Alejandro Mery. -- Handle both `\r\n` (as well as `\n`) line separators that may be - returned by `{sys}` attribute evaluation. -- Numbered attribute names no longer interfere with positional - attribute list values. - - -Version 8.2.5 (2007-11-18) --------------------------- -.Additions and changes - -.Bug fixes -- Fixed exception thrown by illegal command-line arguments. -- Rolled back the 'with' warning bug fix introduced in 8.2.4 -- it was - incompatible with Python <2.5. - - -Version 8.2.4 (2007-11-10) --------------------------- -.Additions and changes -- You can now use the `lang` attribute to set the DocBook language - attribute. -- Attribute values can now contain attribute references. -- If the `lang` attribute is defined then configuration files named - like `lang-.conf` will be loaded automatically. -- The help file name `help-.conf` is based on the AsciiDoc - `lang` attribute, defaults to `help.conf` (English). -- Admonition, figure and table captions have been factored into a - predefined set of `caption_*` attributes. They only apply to - directly generated (X)HTML outputs (DocBook stylesheets generate - their own language specific captions based on the `lang` attribute). -- Dropped platform dependent `doc/asciidoc.chm` file from - distribution documentation formats. - -.Bug fixes -- The spurious warning 'with will become a reserved keyword - in Python 2.6' has been suppressed. - - -Version 8.2.3 (2007-09-12) --------------------------- -.Additions and changes -- Added VMiklos's 'permalink' patch for auto-generated section IDs - (enabled by default by the `sectids` attribute). -- Added http://www.methods.co.nz/asciidoc/faq.html[FAQ] to website. -- Changed format of \{localdate} attribute to ISO 8601 (`%Y-%m-%d`). -- Added `abc2ly --beams=None` option to make `music2png.py` conform to - ABC's notion of beams. -- XHTML level 2 section headings are now styled with an underlining - border. -- XHTML links to AsciiDoc title elements are now implemented with - title ID attributes (previously separate `` element targets were - generated. -- Multi-word first, middle and last names can be entered in the header - author line using the underscore as a word separator. -- The nested inline macros restriction has now been lifted, for - example you can now include links and inline images inside - footnotes. -- Help topic names can be shortened (so long as they are not - ambiguous). For example `asciidoc -hm` will print the AsciiDoc man - page. -- Added `{two_colons}` and `{two_semicolons}` attributes for - escaping labeled list ambiguity. -- If quirks mode is disabled the XHTML Mime Type is set to the - recommended `application/xhtml+xml` (rather than `text/html`). - -.Bug fixes -- Author information is now correctly set when using attribute entries - in the header instead of an author line (previously the 'author' - attribute was not being calculated correctly and there were - attribute substitution problems). - - -Version 8.2.2 (2007-07-22) --------------------------- -.Additions and changes -- http://www.maths.nottingham.ac.uk/personal/drw/lm.html[LaTeXMathML] - capability has been added for users who are more familiar with or - prefer LaTeX math formulas to the - http://www.methods.co.nz/asciidoc/asciimathml.html[ASCIIMathML] - notation (thanks to Arthur Sakellariou for the patch). -- The 'source highlight' and 'code' filters now process embedded - callouts. -- Added an `--attribute=ATTRIBUTE` option to `a2x(1)` for passing - attribute values to asciidoc(1) (a shortcut for `--asciidoc-opts="-a - ATTRIBUTE"`). -- Image block and inline macros prepend optional `{imagesdir}` - attribute to image link targets. - - -.Bug fixes -- Fixed an assertion error that occurred when a configuration file - containing an `include::[]` macro was loaded using the - `--conf-file` option and the configuration file name did not - include an explicit directory path -- patch submitted by Dmitry - Potapov. -- Asciidoc titles are only converted to lower case if all characters - are upper case otherwise case is left unchanged -- patch submitted - by Dmitry Potapov. -- Added a missing check that input is not stdin before loading - configuration files from the document directory -- patch submitted - by Dmitry Potapov. -- Attribute list items must evaluate to strings, numbers or None - (previously it was possible to evaluate to other object types which - resulted in surprising attribute values). -- If an AsciiDoc document has no title an empty XHTML 1.1 'title' - element is created -- previously the 'title' element was dropped - which resulted in invalid XHTML 1.1. -- The Vim syntax file no longer highlights escaped callouts. -- The Vim syntax highlighter now correctly highlights Double-dollar - passthroughs when they enclose dollar delimited ASCIIMathML and - LaTeXMathML formulas. - - -Version 8.2.1 (2007-04-06) --------------------------- -.Additions and changes -- A number of improvements have been made to the Vim syntax - highlighter, for example the word C++ is no longer mistaken for the - start of an unconstrained monospace quote. -- Labeled list definitions have been tightened -- a list label can no - longer containing trailing spaces. The following example is no - longer recognized as a valid list label: - - Lorum ipsum :: -+ -This change implements the originally intended behavior (as per the -AsciiDoc documentation and examples) so there should be very few -compatibility issues. - -.Bug fixes - - -Version 8.2.0 (2007-04-04) --------------------------- -.Additions and changes -- A Vim syntax file is now included in the AsciiDoc distribution - (inspired by Felix Obenhuber's `asciidoc.vim` script). You can find - it (along with a Vim filetype detection script in the distribution - `./vim/` directory (the scripts are installed automatically by the - AsciiDoc installer `./install.sh`). See 'Appendix J' of the - 'AsciiDoc User Guide' for details. -- Added 'toclevel' attribute (1..4) which sets the number of title - levels reported in the table of contents. Defaults to 2 and must be - used with the 'toc' attribute. Example usage: - - $ asciidoc -a toc -a toclevels=3 doc/asciidoc.txt - -- Added a `listindex` attribute which is the current list item index - (1..). If this attribute appears outside a list its value is the - number of items in the most recently closed list. -- The single line titles syntax now accepts trailing suffixes -- this - syntax matches the title line syntax of a number of popular Wiki - markups. -- If a QuoteBlock has no attribution or citetitle then the DocBook - `` element is not generated (previously generated empty - `` element). -- If the text of a labeled list item is blank then no `texttag` is - written. -- An end of line backslash performs line continuation for horizontal - labeled list items. -- The Revision line now accommodates Subversion `$Id` markers (in - addition to CVS and RCS markers). Thanks to Tiago Sturmer Daitx for - this patch. -- Implemented `a2x(1)` option `--skip-asciidoc` which allows `a2x(1)` - to convert DocBook XML files not derived from AsciiDoc sources. -- If `a2x(1) --doctype` option is not specified it defaults to - `manpage` if `--format=manpage` else defaults to `article` - (previously `--doctype` always defaulted to `article`). -- Added an 'External Resources' section to the - http://www.methods.co.nz/asciidoc/index.html[AsciiDoc home page]. - -.Bug fixes - - -Version 8.1.0 (2006-10-22) --------------------------- -.Additions and changes -- AsciiDoc generated XHTML documents now display a table of contents - if the 'toc' attribute is defined (JavaScript needs to be enabled - for this to work). Thanks to Troy Hanson who contributed this - feature based on a JavaScript by Mihai Bazon. I've simplified things - somewhat to match Docbook XSL Stylesheets style, see Troy's - http://tpl.sourceforge.net/userguide.html[tpl User Guide] for a - fancier layout. Use the `-a toc -a numbered` command-line options to - produce a number table of contents. -- A http://www.methods.co.nz/asciidoc/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 in the form of a trimmed PNG image which is inserted into - the AsciiDoc output document. -- Incorporated Paul Melis's Win32 filter patch. This workaround - allows AsciiDoc to run filters under Windows. -- Added `uninstall.sh` script. -- Rather than proliferate a confusing number of filter block - delimiters the following convention has been adopted: delimiters - belonging to DelimitedBlock filters distributed with AsciiDoc will - consist of a word (normally a noun identifying the block content) - followed by four or more tilde characters. This has necessitated - changing existing filter delimiters (the old delimiters still work - but may be deprecated in future versions): - - * The example code filter block delimiter is now the word `code` - followed by four or more tilde characters. - * The source highlight filter block delimiter is now the word - `source` followed by four or more tilde characters. - -- Conditionally redefined subscript and superscripting so they use the - old replacements mechanism when asciidoc7compatible is defined - rather than the asciidoc 8 default unconstrained quoting (patch for - affected files attached). -- Moved the source highlight filter from `./examples/` to `./filter/`. -- Added `{verbose}` intrinsic attribute (useful for passing verbose - flag to filters). -- Added `{outdir}` intrinsic attribute. -- Renamed `{docdir}` intrinsic attribute to unambiguous `{indir}` - (`{docdir}` still works but may be removed in future release). -- If `asciidoc(1)` outputs to stdout then intrinsic attribute - `{docname}` is extracted from the input file name. - - -Version 8.0.0 (2006-08-27) --------------------------- -********************************************************************* -This is a major release because changes to quoting and index entry -handling may break existing documents (see 'Additions and changes' -below and 'Appendix A: Migration Notes' in the AsciiDoc User Guide). - -Please report any problems you encounter. - -mailto:srackham@gmail.com['Stuart Rackham'] -********************************************************************* - -.Additions and changes -- Quoting can can occur within words (based on patch submitted by - Benjamin Klum). See the 'Unconstrained Quotes' sub-section in the - User Guide. - -- The underline and plus characters can be used as alternatives to the - existing apostrophe and backtick quote characters. They are arguably - better choices than the apostrophe and backtick as they are not - confused with punctuation. - -- The syntax for index entry macros have have been deprecated from - `+...+` and `++...++` to `((...))` and `(((...)))` respectively. - Rationale: - * Bracketing is consistent other with `[[...]]` and `<<...>>` - reference macros. - * To easily confused with triple plus passthroughs. - * To make way for the new monospace quoting. - -- Superscripts and subscripts are implemented as constrained quotes so - they can now be escaped with a leading backslash and prefixed with - with an attribute list. - -- An experimental LaTeX backend has been written by Benjamin Klum (a - number additions in this release are to accommodate the LaTeX - backend). -- `include` macro file names now expand environment variables and - tilde expansions. -- A configuration file `[quotes]` entry can be undefined by setting to - a blank value. -- Added `callto` inline macro for Skype 'callto' links. -- Added `colnumber` attribute for table data markup. -- A leading comment block or comment lines are now skipped (previously - a document had to start with either attribute entries or a document - Title). -- Experimental `rows` attribute (number of source lines in table) - available in table markup templates (used by experimental LaTeX - backend). -- Included install shell script written by mailto:jlm@ofb.net[Jacob - Mandelson] for installing the tarball distribution. -- Added INSTALL documentation file. -- Added 'replacements2' substitution options -- a second replacements - section. -- Added the ability to redefine 'normal' and 'verbatim' substitutions - with `subsnormal` and `subsverbatim` entries in configuration file - `[miscellaneous]` section. -- By default `AttributeEntry` values are substituted for - `specialcharacters` and `attributes`, if you want a different - AttributeEntry substitution set the `attributeentry-subs` attribute. -- The `name` in `name=value` configuration file entries can now end - with a backslash, just escape the trailing backslash with a - backslash. For example: - - abc\\=xyz -+ -Results in `name=abc\` and `value=xyz` -- previously this would have -escaped the `=` character. - -- A blank configuration file section deletes any preceding section - with the same name (applies to non-markup template sections). -- A command-line attribute value with a `@` suffix does not override - existing document and configuration file attributes (normally - command-line attributes have precedence over document and - configuration file attributes). -- `localtime` attribute is now encoded from the native system encoding - to the output encoding. Patch submitted by - mailto:m_pupil@yahoo.com.cn[FKtPp] -- here's his description of the - problem: -+ -``I am a Chinese user of AsciiDoc and I find that when I use UTF-8 -(the default encoding) to write asciidoc documents in Windows platform -the resulting html footer line will get screwed. It was caused by a -localized tzname that was always encoded in the windows native -encoding, which in my case is 'cp936'.'' - -- a2x(1) can generate Open Document Text files using - http://open.comsultia.com/docbook2odf/[docbook2odf]. Currently - `docbook2odf(1)` only processes a subset of DocBook, unimplemented - elements are skipped. -- The a2x(1) format option defaults to `xhtml` (previously a format - had to be specified explicitly). -- The `-d, \--doctype=DOCTYPE` option has been added to a2x(1) which - is a shortcut for `--asciidoc-options="--doctype=DOCTYPE"`. -- Replaced a2x(1) `--no-icons` and `--no-copy` options with their - negated equivalents: `--icons` and `--copy` respectively. The - default behavior has also changed: copying and use of icons is - disabled by default. Rationale: - * To make the default behavior more consistent since use of icons - and CSS stylesheets does not apply to all formats. - * To make the default behavior less surprising (the creation of icon - and stylesheet output files must now be explicit). - -- a2x(1) has been bumped from version 0.1.1 to version 1.0.0. - - -.Bug fixes -- Removed duplicate `./doc/a2x.1.txt` from distribution tarball. -- Documentation errata. -- Attribute replacement is no longer performed twice in Titles and - AttributeEntrys. -- a2x(1) skipped asciidoc(1) execution when rerun with different - `--asciidoc-options` options, it now always executes asciidoc(1). - The problem was that previously asciidoc(1) was executed only if the - output file was missing or older than the source file. - - -Version 7.1.2 (2006-03-07) --------------------------- -.Additions and changes -- Support for - http://www1.chapman.edu/~jipsen/mathml/asciimath.html[ASCIIMathML] - has been added. See 'Appendix I: ASCIIMathML Support' in the User - Guide and the examples at - http://www.methods.co.nz/asciidoc/asciimath.html. -- You can now prefix quoted text with inline attributes lists. You - can use this to set font size and color (XHTML and HTML outputs). -- Added `##...##` quoting -- it does nothing -- it's purpose is to - allow inline attributes to be applied to normal text. -- An 'inline passthrough' mechanism has been implemented. -- Configuration file comment lines can be escaped with a backslash -- - this is to allows the inclusion of configuration lines that start - with a hash character. -- The `scriptsdir` attribute can be used to specify the name of the - directory containing linked JavaScripts (see the - link:userguide.html#X33[User Guide] for details. -- The BackendBlock has been renamed PassthroughBlock for consistency - with the new inline passthrough naming. -- `a2x(1)` now works with the older `bash(1)` version 2.05b. Patch - submitted by mailto:francis@daoine.org[Francis Daly]. -- Content included by the `include1::[]` system macro is no longer - subject to attribute substitution so that ambiguities no longer - arise when used to include CSS or JavaScript files. - - -Version 7.1.1 (2006-02-24) --------------------------- -.Additions and changes -- The `caption` attribute can be used to customize admonition captions - as well as image, table and example block element title prefixes - (`xhtml11` and `html4` backends). -- You can now override the default icon image using the `icon` - attribute to specify the path of the linked image (xhtml11 and html4 - backends only). -- The deprecated `imagesdir` attribute is no longer recognized (use - `iconsdir` instead). -- Added 'Appendix H: Using AsciiDoc with non-English Languages' to the - AsciiDoc User Guide. -- Added 'Admonition Icons and Captions' subsection to the User Guide - explaining how to customize Admonition elements. - -.Bug fixes -- `a2x(1)` failed when configuration files were installed in the - global `/etc/asciidoc/` directory -- it was only searching the - directory containing the asciidoc executable (thanks to Christian - Wiese for finding and submitting a patch this bug). -- The html4 backend admonition caption now correctly displays the - admonition `caption` attribute (previously displayed the `style` - attribute). - - -Version 7.1.0 (2006-01-13) --------------------------- -.Additions and changes -- `a2x(1)` toolchain wrapper utility. This overcomes the biggest - hurdle for new users which seems to be assembling and using a - working DocBook XML toolchain. With `a2x(1)` you can generate XHTML - (chunked and unchunked), PDF, man page, HTML Help and text file - outputs from an AsciiDoc input file with a single command. All you - need to install (in addition to AsciiDoc) is xsltproc(1), DocBook XSL - Stylesheets and optionally FOP (if you want PDF) or lynx(1) (if you - want text). -- Block titles can now start with any non-space character (previously - where not allowed to start with `.~-_` characters). -- `./stylesheets/docbook.css` renamed to - `./stylesheets/docbook-xsl.css` to clarify its function. -- Renamed `./docbook-xsl/manpages.xsl` to `./docbook-xsl/manpage.xsl` - for consistency. -- Admonition and navigation icons moved to `./images/icons/` to - clarify usage and conform with a2x(1) usage. -- Renamed xhtml11 intrinsic attribute `imagesdir` to `iconsdir` to - keep vocab consistent and changed default value to `./images/icons` - (previously `./images`). `imagesdir` attribute still accepted but - deprecated. -- Unused image files have been weeded out of the distribution. -- Packager notes (appendix B) have been updated to reflect the needs - of `a2x(1)`. - -IMPORTANT: The renaming of the xhtml11 backend `imagesdir` intrinsic -attribute and it's new default value introduces a backward -compatibility issue: if you use the `icons` attribute you will need to -either move your icons to the new default `./images/icons` location or -include an `--attribute{nbsp}iconsdir="your_icons_path"` option in -your asciidoc commands. - -.Bug fixes -- Backslash line continuation is now observed in verbatim paragraphs. -- Fixed errors generated by example - `./examples/website/build-website.sh` script. - - -Version 7.0.4 (2005-12-08) --------------------------- -.Additions and changes -- Added ternary conditional attributes - `{@:[:]}` and - `{$:[:]}`. -- Safety violations now generate errors (they previously generated - warnings). -- asciidoc(1) now defaults to safe mode, consequently the - `[miscellaneous]` safe mode entry and `--safe` command-line option - are no longer necessary (though for backward compatibility - asciidoc(1) still accepts the `--safe` option). -- Backend Blocks are now flagged unsafe (they could be used to include - arbitrary and hence potentially unsafe output content). -- Filters are no longer considered unsafe. There's not much point in - insisting on filter safety since the installation of an unsafe - filter would require the introduction of new or modified - configuration files -- if your application configurations can be - compromised you're in all sorts of trouble (safe mode protects - against unsafe input files not unsafe configuration). As with all - filters, before installing, you should verify that they can't be - coerced into generating malicious output or exposing sensitive - information. - -.Bug fixes -- Fixed a lot of glaring grammatical and factual errors in the User - Guide. - - -Version 7.0.3 (2005-12-01) --------------------------- -.Additions and changes -- Added `--safe` and `--unsafe` command-line options -- AsciiDoc can - now be executed in a 'safe mode' which disallows the execution of - arbitrary code or the inclusion of arbitrary files (see - link:userguide.html#X39[Appendix C in the AsciiDoc User Guide]). -- Included link:source-highlight-filter.html[source-highlight filter] - in the distribution `./examples/source-highlight-filter/` directory - (based on filter submitted by mailto:trolocsis@gmail.com[Ryan - Phillips]). -- Included the DocBook XSL Stylesheets 1.69.1 customizations used to - generate the distributed AsciiDoc documentation (read the - `asciidoc-docbook-xsl.txt` file in the distribution `./docbook-xsl/` - directory). -- AsciiDoc DocBook XSL Stylesheet drivers moved from `./doc/` to - `./docbook-xsl/`. -- Modified `./doc/manpages.xsl` so only URL content is displayed in - manpages. - -.Bug fixes -- Explicitly set table CSS border style (`xhtml11` backend) to `solid` - because default border styles vary from browser to browser. - - -Version 7.0.2 (2005-08-28) --------------------------- -.Additions and changes -- There are now long versions of all AsciiDoc options. -- If the `--backend` is not specified it defaults to `xhtml11`. -- Added CSS simulated frames layout to the examples website (see - `./examples/website/layout2/README-website.txt`). This layout does - not work with IE6 and the original tables based layout is still the - default. -- Support page added to AsciiDoc website. - -.Bug fixes -- Invalid options are now trapped gracefully. -- Documentation errata. - - -Version 7.0.1 (2005-06-24) --------------------------- -.Additions and changes -- Reverted to use of `strong`, `em`, `tt` XHTML tags -- they're more - obvious and no less correct than `span` tags, besides, the generated - file sizes are smaller (the 'User Guide' was 11% smaller). -- Table title rendered with `caption` tag rather than a separate - `div`. -- The AsciiDoc 'stylesdir' attribute (if specified) is now recognized - when searching for embedded stylesheets (previously only searched - default `./stylesheets` directory). -- Default charset encoding changed from ISO-8859-1 to UTF-8 -- it's - less language specific and displays most common languages. -- `template::[]` macros now expand in all configuration file sections - previously only in markup template sections. -- Cleaned up example website layout CSS and configuration - (presentation has not been changed). -- Refactored `xhtml11.conf` configuration file. -- Set consistent and sensible permissions on distributed files. -- White space is now stripped from DSV formatted table cell data. -- `class="tableblock"` attribute added to tables generated by - `xhtml-deprecated-css.conf` to assist CSS. - -.Bug fixes -- Illegal character set encoder (specified by the AsciiDoc `encoding` - attribute) and character data are trapped gracefully. -- AsciiDoc table 'format' attribute in table attribute lists were not - recognized. -- The nested horizontal labeled list example in the 'AsciiDoc User - Guide' has been dropped -- it generated invalid DocBook markup. - - -Version 7.0.0 (2005-06-06) --------------------------- -*************************************************** -This is a major release with many code and -documentation changes. -Please report any problems you encounter. - -mailto:srackham@gmail.com['Stuart Rackham'] -*************************************************** - -.Additions and changes -- A new 'xhtml11' backend generates XHTML 1.1 with integrated CSS2 - replacing the previous 'xhtml', 'css', and 'css-embedded' backends. -- The CSS stylesheets have finally been rewritten. -- The asciidoc(1) command help now includes user - link:userguide.html#X36[customizable help] topics. When asciidoc is - invoked with the `--help` option the command argument is - interpreted as a help topic. -- The previous example website has been replaced by the actual - AsciiDoc website (see `./examples/website/`. -- XHTML generation options now controlled by the following attributes: - 'badges', 'linkcss', 'icons', 'numbered', 'quirks', 'theme', - 'stylesdir', 'imagesdir' (see the link:userguide.html#X33[User - Guide] for details. -- By default HTML and XHTML are output as stand-alone documents (no - embedded CSS and no linked admonition icon images). -- Documents encoded with the UTF-8 Unicode character set are now - processed thanks to a patch supplied by - mailto:viktor@rbg.informatik.tu-darmstadt.de[Viktor Vasilev]. -- The `-a ^name` command-line syntax to undefine an attribute has been - deprecated in favor of the `-a name!` syntax. -- AttributeEntry syntax addition: `:name!:` to undefine `name` attribute. -- Added `template` system block macro to allow the inclusion of one - configuration file template section within another. -- A 'verse' style attribute can now be applied to literal paragraphs - and blocks to reproduce line breaks and white space from the source - document. -- Replacements and Special Words can now be escaped with leading - backslashes. -- Replacements are now processed in configuration file order (previous - ordering was indeterminate). -- System macros can now be used in the base `asciidoc.conf` - configuration file. -- Deprecated features that emitted warnings in prior versions are no - longer tolerated. -- The `eval` system attribute expression evaluates to `False` the - attribute is undefined, if it evaluates to `True` the result is an - empty string. -- The Paragraph and DelimitedBlock 'presubs' parameter can be aliased - as 'subs'. -- Added 'verbatim' substitutions option. -- Renamed 'List Continuation Block' to 'List Block' and renamed the - 'listcontinuation' option to 'list'. -- Deprecated 'default' substitutions option (use 'normal' instead). -- The 'section-numbers' section numbering attribute has be renamed - 'numbered'. -- Dropped the '\#UNDER CONSTRUCTION#' block macro. -- Rewrote Paragraph and DelimitedBlock handlers adding a - link:userguide.html#X23[styles] configuration entry. - -.Bug fixes -- Included files are no longer read inside conditionally excluded - content. -- Manpage command names containing dashes (in the manpage NAME - section) were misinterpreted as the spaced dash command name/purpose - separator. Bug report and patch supplied by - mailto:david@dgreaves.com[David Greaves]. -- Unexpected error following malformed author line error. - - -Version 6.0.3 (2005-04-20) --------------------------- -.Additions and changes -- Special characters are now substituted in AttributeEntry element - values. -- Spaced and unspaced em dashes are now recognized (previously only - spaced em dashes were recognized). -- Replaced the table 'noborders' option with richer 'frame' and 'grid' - attributes. -- The `duplicate macro` warning message now only occurs when the - verbose (`-v`) option is enabled. -- Single lines starting with two forward slashes hard up against the - left margin are treated as comments and are not processed. -- Renamed 'section' delimited block option to 'sectionbody' to more - accurately reflect it's role. -- Added a List Continuation block -- a specialized delimited block - that is functionally equivalent to the List Item Continuation - feature except that the list contained within the block does not - require explicit '+' list item continuation lines. -- Dropped deprecated `` tags from generated HTML. -- Literal Block delimiters must now consist of at least four points - (previously three) to avoid lone ellipsis ambiguity. - -.Bug fixes -- Some system attribute evaluation failures caused unexpected - exceptions to occur. - - -Version 6.0.2 (2005-03-30) --------------------------- -.Additions and changes -- Three new 'system' block macros have been added -- `eval`, `sys` and - `sys2` which are the block macro equivalents to the same named - system attributes. -- 'Intrinsic' macros have been renamed 'system' macros along with - 'action' attributes which have been renamed 'system' attributes: - * To reflect their common (though contextually different) behavior. - * To avoid confusion with 'intrinsic attributes'. - -.Bug fixes -- Asciidoc now searches in `/etc/asciidoc/filters` for filters. - - -Version 6.0.1 (2005-03-06) --------------------------- -.Additions and changes -- A global configuration file location `/etc/asciidoc` has been added - and is now processed before all other locations (patch supplied by - mailto:stone@debian.org[Fredrik Steen]). -- Recoded `tempfile.mktemp()` and other artifacts that are no longer - necessary or desirable (patches supplied by - mailto:stone@debian.org[Fredrik Steen]). -- Added BUGS file to the distribution. - -.Bug fixes -- Illegal comment syntax in `css-embedded-stylesheet.conf` resulted in - illegal CSS in files generated by the `css-embedded` backend. - - -Version 6.0.0 (2005-01-28) --------------------------- -*************************************************** -This release has had some fairly major code and -documentation changes. Please report any problems -you encounter. - -mailto:srackham@gmail.com['Stuart Rackham'] -*************************************************** - -A lot of new stuff. A new major version number -- some regression -incompatibility (hopefully mitigated by 'deprecated' warnings). - -Went mad trying to rein in the current feature anarchy -- established -a unified notion of document attributes. Attempted to introduce a -consistent vocabulary -- renamed many poorly or inconsistently named -entities. - -Actually, deprecated syntax is still processed correctly in almost all -cases. One source of incompatibility that may arise if you have -customized CSS stylesheets is the change of AsciiDoc CSS class names -(see below). I guess the moral is if you've done a lot of -configuration file customization and are happy with version 5 then you -may want to stay put. - -NOTE: This version requires Python 2.3 or better to run. - -.Additions and changes -- 'Glossary entries' have been renamed 'attributes'. This eliminates - confusion with the accepted meaning of glossary. -- An `AttributeEntry` block element has been added so that document - attributes can be assigned from within an AsciiDoc document. -- The `AttributeList` block element has been added which is a more - general solution than the (now deprecated) DelimitedBlock arguments. -- An BlockId element has been added for setting block element anchor - (link target) IDs. -- Quoted text can now span multiple lines (thanks to James Bowlin for - this patch). -- Inline macros can now span multiple lines. -- \``double backtick / apostrophe'' quotes generate ``curly quotes''. -- A warning is now emitted for out of order list item (applies to - explicitly enumerated numbered list items). -- Added `include` action attribute. -- A line of three or more apostrophes generates an HTML horizontal - ruler (`
` tag). You will get a warning if processed with - non-HTML backend. -- An `{imagesdir}` attribute specifies image file location for images - referenced in configuration files when generating HTML (the default - location is `images`). -- An `{stylesdir}` attribute specifies the location of CSS - stylesheets when generating styled HTML (the default location for - configured markup is `.`). -- The use of the (often inappropriately named) `{caption}` attribute - list entry has been deprecated, use `{0}` instead. -- New 'ExampleBlock' delimited block along with associated variants - Note, Tip, Warning, Caution and Important. -- The `docbook.conf` file now facilitates the optional inclusion of a - DocBook revision history file. -- To better reflect their purpose the following block elements have - been renamed: `VerbatimBlock` to `ListingBlock`; `IndentedBlock` to - `LiteralBlock`; `IndentedParagraph` to `LiteralParagraph`; - `CustomBlock` to `BackendBlock`; `SimpleSection` to `SectionBody`. - Any corresponding CSS class names have also been changed which could - result in backward incompatibility in customized stylesheets. -- Swapped plain DocBook admonition icons for Jimmac's DocBook icons - (http://jimmac.musichall.cz/ikony.php3). The original plain icons - have been moved to `./images/plain`. -- Renamed `html` backend to `xhtml` to better reflect it's function - (former `html-4` backend renamed to `html`). -- A new inline anchor macro syntax `[[[]]]` is available, it - displays `[]` at the anchor location and is for anchoring - bibliography list entries. -- An optional 'single-line titles' syntax can be used. -- Tweaks to distributed CSS stylesheets and FOP `fo.xsl` customization - file. -- 'List Item Continuation' has been implemented which allows - additional block elements to be included in list items by separating - them from the preceding list item element with a line containing a - single plus character. -- A new 'Horizontal Labeled List' list type has been added. Generates - two column list -- the first column contains the list element - labels, the second contains the element text. Same syntax as - `Vertical Labeled Lists` except the double colon label suffix is - followed by the start of the list item text. - -.Bug fixes -- Fixed broken backslash line continuation. -- Labeled list end tags were not undergoing attribute substitution. -- Documents without any author information now generate legitimate - DocBook (previously if the author line was not included in the - document header then an empty (illegal) DocBook `author` element was - generated). -- Multiple spaces in filter command arguments were replaced by a - single space. The `./examples/asciidoc2text/asciidoc2text.sh` script - now indents text correctly. - - -Version 5.1.1 (2004-10-10) --------------------------- -*15-December-2004: Interim update:* Updated `asciidoc.py` to fix -broken `join_lines` function -- no other changes. - -- PDF documentation is now produced from DocBook XML using XSLTLib and - FOP. Previously we processed DocBook SGML with `jw(1)` (which used - Dvips to convert DVI files to PDF). FOP has come a long way in the - last 12 months and produces very acceptable PDF under both Linux and - Windows. -- Sections detailing how to install and use the DocBook XSL - Stylesheets, xsltproc, FOP toolchain and the AsciiDoc XSLT drivers - have been added to the User Guide. -- The PDF output from the he example article template has been - included in the distribution (`./doc/article.pdf`). -- Special characters are emitted using decimal Unicode character codes - (previously used named character entities which cannot be assumed - included in non-HTML documents). -- Added registered trademark (R) to `[replacements]`. -- CSS stylesheet tweaks. -- Admonitions (Note, Tip, Important, Warning, Caution) include icons - when generating css output. - - -Version 5.1.0 (2004-09-18) --------------------------- -- Callouts have been implemented (see the 'Callouts' section of the - AsciiDoc User Guide for details). -- Added XSL drivers for generating XHTML, chunked XHTML and HTML Help - from DocBook XML using XSL stylesheets and xsltproc(1). -- Added CSS stylesheet for HTML generated from DocBook XML using XSL - stylesheets. -- Distribution contains HTML Help formatted User Guide - (`./doc/asciidoc.chm`), the User Guide tells you how it's generated. -- Images referred to by distributed stylesheets are now located in the - `./images` subdirectory (previously located in `.`). -- Filters path names are now handled properly under Cygwin. -- The usual documentation and examples additions, updates and - polishing. - - -Version 5.0.9 (2004-09-09) --------------------------- -- The convention of using a `.asc` file extension for AsciiDoc files - has been dropped in favor of the familiar `.txt` extension. It makes - more sense in that AsciiDoc is a text presentation format and - because `.asc` clashed with the same extension used by other - applications. It's only a naming convention -- you don't have to - switch if you don't want to. -- Changed the subscript formatting character from underline to tilde - since underscores in file names are reasonably common (especially in - link and image macros). -- An alternative syntax for the index term inline macro has been - added: `++,,++`. -- Index terms that have secondary and tertiary entries now - additionally generate separate index terms for the secondary and - tertiary entries. -- A `++` index term inline macro has been added which - displays the term in the primary text flow. -- Added alternative variable list definition using double semi-colon - terminator as opposed to the standard double colon terminator so - variable lists can be nested to two levels. -- Footnotes now appear on a separate line in HTML and Linuxdoc - outputs. -- Python version compatibility is checked at startup. -- Preface and appendix section titles in multi-part Book documents are - meant to be out of sequence -- warnings are no longer emitted when - outputting HTML. -- Empty section warnings have been replaced by error messages and are - emitted only if invalid markup would result. -- Missing macro sections or invalid macro name warnings are only - generated at startup if the `-v` (verbose) option is set. Otherwise - they are deferred until a matching macro is encountered in the input - file. -- Missing or invalid table definition warnings are only generated at - startup if the `-v` (verbose) option is set. Otherwise they are - deferred until a matching table is encountered in the input file. -- AsciiDoc now makes more of an effort to continue in the face of - errors. -- Fixed broken `./examples/website/main.aap` script. -- Converted distribution text files DOS text format as a sop to - Windows users with challenged text editors. -- Documentation additions and corrections. - - -Version 5.0.8 (2004-05-15) --------------------------- -- Spurious 'out of sequence' level 2 warnings no longer appear when - processing 'book' document multi-part book top level Preface and - Appendix sub-sections since they are (correctly) out of sequence. -- A warning is no longer emitted for empty Index sections since this - is normal when generating DocBook outputs. -- Fixed: `[quotes]` configuration file entries where not being - overridden by downstream configuration file entries. -- Footnote text is now output enclosed in square brackets in HTML - documents. -- Added superscripts and subscripts to the standard PRS configuration - files. -- Adjusted CSS stylesheets so list titles don't have so much space - between title and first list item (broken in IE6 due to poor CSS - compliance). Lessened sidebar title top margin. - - -Version 5.0.7 (2004-04-22) --------------------------- -- The version 5.0.6 README incorrectly stated that AsciiDoc would run - under Python 2.0, in fact it requires Python 2.1 or better. The - README has been corrected. -- Documented techniques for combining and splitting AsciiDoc documents - and processing the combined and split parts (see the 'Tips and - Tricks' section of the User Guide). -- An example of marking up superscripts and subscripts is documented - in the 'Tips and Tricks' section of the User Guide (the example - configuration file is in the AsciiDoc `examples` directory). -- Added ellipsis to shipped `[replacements]`; three periods output an - ellipsis entity. -- Removed unused 'SectionClose' class. -- The AsciiDoc 'Preamble' element is output as a DocBook 'Preface' - when processed as a 'book' document type (in older AsciiDoc versions - a warning was issued and processing stopped). -- Fixed a quoting anomaly: quoted text can no longer begin or end with - with white space. - - -Version 5.0.6 (2004-03-07) --------------------------- -- New 'image' macro implements optional image scaling and linking and - works in both inline and block contexts. The 'image' macro obsolesces - the existing 'graphic' block macro and 'icon' inline macro. -- Macro substitution section names now have `-inlinemacro` and - `-blockmacro` suffixes to resolve context ambiguity, make their - purpose clearer and relieve section namespace congestion. -- Header derived glossary entries can now be overridden from the - command-line. -- Special character substitution is now performed on AuthorLine - derived author names. -- A macro or block argument called 'options' can be used as a shortcut - for a list named arguments with zero length string values. -- Tables can be output without borders using the `options="noborders"` - argument. -- Table data lines that do not immediately follow a table section - underline can now be blank. This allows CSV data with embedded blank - lines to be processed correctly. -- Blank DSV format table data lines are silently skipped. -- Tightened up on enforcement of configuration file section names to - reduce the possibility of section content being seen as a section - header line. -- Section titles can be optionally suffixed with title arguments - enclosed in double square brackets. -- A replacement has been added to `asciidoc.conf` to replace inline - double dashes with the `—` entity. -- Changed the `.UNDER-CONSTRUCTION.` macro syntax to - `#UNDER-CONSTRUCTION#` so it is not mistaken for a BlockTitle. - Similarly changed the `.NEW.` replacement with - `#NEW#`. -- `#NEW#` and `#UNDER-CONSTRUCTION#` macros are now - included in the DocBook backend. -- Replaced shipped `smallnew.gif` with `smallnew.png`. -- Documentation tidy ups. - - -Version 5.0.5 (2004-02-25) --------------------------- -- Fixed the disappearing paragraph titles problem that was caused by - Inline macros (incorrectly) processing BlockTitles. -- Tightened AuthorLine validation. Previously invalid email addresses - and embedded special characters in the AuthorLine resulted in - invalid output markup. - - -Version 5.0.4 (2004-02-09) --------------------------- -- Reinstated missing `infile`, `outfile`, `filetype` and - `filetype-` glossary entries. -- As of version 5.0.3 asciidoc(1) now requires Python 2.0 or greater, - this has now been documented. - - -Version 5.0.3 (2004-01-23) --------------------------- -- Fixed problem that caused any filters directory file containing - `.conf` (not just those with the `.conf` extension) from being - loaded. -- All `[miscellaneous]` configuration file entries can now be - referenced like glossary entries (they are now processed internally - as glossary entries). -- The output file line terminator (previously hardwired to `\r\n` is - now set using the `newline` entry in the configuration file - `[miscellaneous]` section. -- The misspelt `blocktitles` configuration file entry name has been - corrected (to `blocktitle`). -- An `{empty}` glossary entry has been added to the default - configuration which is useful for outputting trailing blank lines - from configuration file substitution sections. - - -Version 5.0.2 (2003-12-18) --------------------------- -- New (alternative) 'anchor' and 'xref' macro syntax (old syntax still - valid). -- DocBook `mediaobject` and `inlinemediaobject` tags are generated in - place of `graphic` and `inlinegraphic` tags by the AsciiDoc - `graphic` and `icon` macros. If a macro argument is specified it is - the alternative text output if the target document format does not - support the specified graphic file format. -- Dropped the LinuxDoc left and right square bracket special character - substitutions as they interfered with macro substitution. -- Documentation updates and corrections. - - -Version 5.0.1 (2003-12-09) --------------------------- -- Fixed problem with anchor tag when generating CSS styled HTML. - - -Version 5.0 (2003-12-08) ------------------------- -*************************************************** -This release has had some fairly major code and -documentation changes. Please report any problems -you encounter. - -mailto:srackham@gmail.com['Stuart Rackham'] -*************************************************** - -- AsciiDoc can now produce a full-blown multi-part DocBook book - including dedication, abstract, preface, colophon, glossary, - appendix, bibliography and book part elements using the new - `specialsections` configuration file section. -- All Section element children (Paragraph, DelimitedBlock, List, - Table, BlockMacro) can now be titled using the BlockTitle element. - A BlockTitle element is a single line containing a title and - beginning with a period. -- The `index` and `backmatter` macros have been dropped, superseded by - `specialsections`. -- The AsciiDoc 'Preface' element has been renamed 'Preamble' (to avoid - confusion with the DocBook book preface element). -- Out of sequence titles are now tolerated with a warning. This allows - book document level 0 sections to be processed. -- An 'anchor' inline macro has been added for document link target - creation. -- 'Note', 'Tip', 'Important' and 'Warning' paragraph types have been - added to support the corresponding DocBook elements. -- Title substitution is now performed in SidebarBlock titles. -- DocBook graphics now output as `figure` and `informalfigure` - elements rather than `mediaobjects`. This ensures numbered figures - and a lists of figures are produced by the DocBook toolchain. -- You can now escape block argument lines by appending a backslash. - Alternatively, if you embed arguments in the delimiter line AsciiDoc - does not check for an arguments line. -- The default DocBook backend file extension has been changed from - `.docbook` to `.xml` (`.sgml` for the 'docbook-sgml' backend). -- Warnings are output by default (previously they only printed when - verbose option enabled). -- A Question and Answer variable list definition has been added to the - shipped configuration files, primarily to create DocBook `qanda` - DocBook elements. -- Fixed broken code-filter `-b linuxdoc` option. The asciidoc.asc User - Guide can now be processed by linuxdoc(1) (although tables are - dropped because LinuxDoc does not implement tables). - -.Compatibility issues: -1. Table titles are no longer in the arguments line, use the new - BlockTitles. -2. Graphic titles are no longer in the 'graphic' block macro caption, - use the new BlockTitles. -3. The code-filter title must be placed in a preceding BlockTitle. -4. SidebarBlock titles must be placed in a preceding BlockTitle. -5. The DelimitedBlock option 'sidebar' has been renamed to 'section'. -6. The default DocBook backend file extension has been changed from -`.docbook` to `.xml` (`.sgml` for the 'docbook-sgml' backend). - - -Version 4.2 (2003-11-26) ------------------------- -- The default HTML output is now XHTML 1.0 markup. To output the - former HTML 4 markup specify the `html-4` backend. -- The default DocBook output is now DocBook XML. To output the former - DocBook SGML specify the `docbook-sgml` backend. The associated - `docbook-sgml.conf` file illustrates how to support minor DTD - variations. Examples of using the `xmlto(1)` command for DocBook - conversion have been added to the User Guide. -- Glossary entries set using the command-line -g option can now be - referenced in configuration files. -- Configuration dumps (`-c` command-line option) no longer output - redundant undefined glossary entries. -- DelimitedBlock arguments can now be specified in a separate arguments - line immediately following the leading delimiter line, This is in - preference to the existing delimiter embedded arguments. Reasons: - * The syntax is in keeping with the Tables arguments syntax. - * It's easier to enter and implements line continuation. -- A new QuoteBlock DelimitedBlock definition has been added to the - distribution configuration files. -- The table arguments lines can be continued using the backslash line - continuation character. -- Added new calculated glossary reference type `{%}`. -- Double-quote characters can now appear in unquoted positional - arguments. - - -Version 4.1 (2003-11-13) ------------------------- -- Added DSV (Delimiter Separated Values) tables format. -- `{eval:}` glossary references drop the containing line if - `` evaluates to `None`. -- Block, Table and Macro arguments can now be positional (quoted or - unquoted). -- Vocabulary change: DelimitedBlock, Table and Macro 'attributes' are - now referred to as 'arguments'. This makes more sense in light of the - extended syntax and avoids confusion with backend markup tag - attributes. -- 'tablewidth' table ruler parameter can now be expressed in percent - units (0..100). If between 0 and 1 then the original fractional unit - measure is applied. -- The use of quoting for generating footnotes and index entries has - been dropped in favor of 'footnote' and 'indexterm' inline macros. -- 'backmatter' inline macro included in distribution. -- Fixed: CSS styled HTML tables are now fully XHTML 1.0 conformant. -- Fixed: 'tablewidth' was processed incorrectly when passed as table - argument. -- Fixed: Glossary references like `{x=\{y}}` were one character off - if \{x] was defined and `{y}` was not. - - -Version 4.0 (2003-11-08) ------------------------- -*************************************************** -This release has had some fairly major code and -documentation changes. Please report any problems -you encounter. - -'Stuart Rackham' -*************************************************** - -- Added tables to AsciiDoc. -- Added two special 'subs' options: 'default' specifies the default - substitution options and 'none' specifies no substitution. These - options can only appear singly. -- Line continuation using a trailing backslash character is available - in Paragraphs, ListItems, Tables. -- The left and right quotes for quoted text can now be specified - separately. -- Shipped configuration files implement footnotes (only useful for - DocBook output) using \[[]] quoting. -- Shipped configuration files implement index terms (only useful for - DocBook and LinuxDoc output) using \(()) quoting. -- The shipped 'html' backend configuration now emits valid 'HTML 4.01 - Transitional'. -- Added new calculated glossary reference types `{!}` - and `{#}`. -- The DelimitedBlock 'params' option has been dropped in favor of the - new 'block attributes' mechanism. If you have customized block - params options you may need to adjust source files to use the - 'block attributes' syntax. The example code filter has been updated - to reflect these changes. -- The code filter now has a `-t tabsize` option. -- Replaced `-w` option with `-v` (verbose) option. The warnings option - was just to confusing. -- Named attributes can now be specified in macro calls. -- The 'tabsize' attribute is recognized in the built-in `include` - macros. A tabsize of zero suppresses tab expansion. -- The configuration file `[options]` section has been split into - `[miscellaneous]` and `[titles]`. If you have customized any of - these settings you will need to adjust the affected configuration - files. -- Configuration file `[miscellaneous]` entries can now also be set - using the command-line `-g` option. -- Fixed: error that occurred when attempting to use zero length - configuration and source files. -- Fixed: blocking filter halt problem. -- Fixed: inline macro escape prefix problem. -- Fixed: missing macros from configuration dump problem. -- Fixed: named macros were dumped incorrectly. -- Many documentation changes/additions/corrections. - - -Version 3.2.2 (2003-10-26) --------------------------- -- Added `-n` option (synonym for `-g section-numbers`). -- Dropped the processing commentary (hey, this is Unix). -- Added new calculated glossary reference type `{?}`. - `` is the glossary entry name and `` is the text - substituted if the glossary entry is defined. `` can only - contain literal text (no glossary references allowed). -- Added `asciidoc2text` to distribution `examples/asciidoc2text` - directory (converts AsciiDoc source to text file with section - numbering). -- Fixed incorrect nesting of Simple lists inside Variable lists. -- List definitions have been modified so that list items can be - indented. This allows a more intuitive indentation of nested lists - in AsciiDoc source. -- Lists must be separated from preceding paragraphs by a blank line. - This is to avoid paragraph lines being mistaken for list items. -- Corrected asciidoc man page documentation error: the`-f` option does - *not* search relative to source document directory for the - configuration file. -- Minor updates to various distribution `.conf` files. -- Included `badges.conf` in `examples` directory. -- `css-embedded-stylesheet.conf` now supports footer badges. -- The default in-line element processing order has been changed: - Glossary References are now processed before Inline Macros. This - allows glossary expansions to occur inside macro references. -- Glossary entries are now allowed in Author and Revision lines. -- Default List `subs` options and Paragraph `presubs` options are - assigned the following default value if not specified: - - specialcharacters,quotes,specialwords,replacements,glossary,macros - -- Documentation changes/additions/corrections. - - -Version 3.2 (2003-05-26) ------------------------- -- Added a `-s` command-line option to suppress the output of - `[header]` and `[footer]` sections. -- Article document headers are no longer mandatory: this allows - AsciiDoc to process arbitrary chunks of text. When used in - conjunction with the new `-s` command-line option corresponding - chunks of backend markup can be generated. -- AsciiDoc now emits a warning message and continues when an out of - sequence section title is detected (previously it failed and - halted). This allows document sections to be processed separately. -- Optional 'presubs' and 'postsubs' entries have been added to - 'DelimitedBlock' and 'Paragraph' definitions. As a consequence - substitution options are no longer legal in 'options' entries. -- 'presubs' and 'postsubs' substitutions are processed in the order - the options are specified (rather than the fixed 'options' order of - previous versions). -- ./filters subdirectories are automatically searched for filter - commands. -- A 'title-subs' configuration option specifies the substitutions - performed on document Header and Section titles. -- A 'subs' entry in now included in List configuration file - definitions that specified substitutions performed on list entry - text. -- Configuration files are auto-loaded from ./filters subdirectories. -- Added example code filter (see ./examples/filters). -- Bug fix: if section was empty you may have got erroneous 'missing - tag "paragraph"' error. -- Internal code tidy up. - - -Version 3.1 (2003-05-18) ------------------------- -- In version 3.0 a `[macros]` section entry of the form 'name' was - equivalent to 'name='. An entry of the form 'name' now undefines the - entry (to bring it in line with the behavior of other special - sections). -- Paragraphs have now been generalized (in the same way as Lists and - DelimitedBlocks). -- The 'indentsize' option has been dropped as as consequence of - paragraph generalization. -- Pipe | characters can be included in substituted tag and - substitution section text using the \{brvbar} (broken vertical bar) - glossary reference. -- Removed the restriction requiring substitution section text - placeholders | to be on a separate line. -- Added an `-e` asciidoc(1) command option that excludes implicit - configuration files (used in conjunction with `-c` generated - configuration files). -- Version 3.0 documentation has undergone a considerable cleanup. -- The dumping of quoted section entries (see `-c` option) now works - correctly. -- The format of special section entries has been made consistent: - `name` undefines the entry; `name=` sets the entry value to a blank - string; `name=value` sets the entry value to `value`. -- As a consequence of the previous change the caret prefix is no - longer used in glossary configuration file entries (although it is - still used when undefining an entry using the `-g` command-line - option). - - -Version 3.0 (2003-05-13) ------------------------- -This version is the culmination of work begun in the 2.x releases -whereby fixed policy has been replaced by extensible mechanisms. - -- Added `-c` command-line option to dump a composite asciidoc(1) - configuration file to stdout. -- Lists and Delimited Blocks are now defined by a set of configuration - file parameter sections. The user can modify the default - definitions or add new ones. -- Block content can now be processed through external filters. -- The default behavior for Custom Blocks is to perform glossary - substitution (previously there was no substitution inside Custom - Blocks). -- The old 2.x style macros have been reimplemented; as with Lists and - Delimited Blocks there syntax and behavior can be configured by the - user. The default macro syntax remains the same but the semantics - are now (hopefully) a bit more intelligible. -- Block and Builtin macros use :: delimiter instead of the 2.x single - colon delimit (to distinguish them from inline macros). The 2.x - syntax is still supported for backward compatibility. -- Nested lists are now supported and IndentedParagraphs can be - included in list items. -- Conditional source inclusion can be specified using built in `ifdef`, - `ifndef` and `endif` macros. -- The new conditional source inclusion feature has been used to reduce - the number of default configuration files down to one per backend. -- A change of name: 2.x 'Substitutions' are now called 'Replacements' - and the 2.x `[substitutions]` configuration file section is now - called `[replacements]` (the old name is still recognized for - backward compatibility). -- The line break is now implemented as a 'Replacements' substitution. -- Inline 'icon' macro for inline images has been added to default - configuration files. - -Version 2.2 (2003-04-07) ------------------------- -- The `master.conf` configuration file name has been deprecated in - favor of `asciidoc.conf`. -- The standard configuration files set is now loaded from the - `.asciidoc` folder in the users home directory (if it exists) and - then from the source document directory. Configuration files that - don't exist are silently skipped. -- Configuration files named like the source file will be automatically - loaded if they are found in the source file directory. For example - if the source file is `mydoc.asc` and the `-b html` option is used - then asciidoc(1) will look for `mydoc.conf` and `mydoc-html.conf` in - that order. -- The characters used to quote formatted text can be configured and - extended by the user (see the master.conf [quotes] section). -- Quoted text can now be escaped by prefixing a backslash character to - the leading quote. -- The double single-quote '' strong text quote has been deprecated in - favor of an asterisk * character. -- Added \{eval:expression}, \{sys:command} and \{sys2:command} - glossary reference actions. -- Trailing brace characters `}` are now allowed inside glossary - references provided they are escaped with a backslash character. -- Glossary entries can now be escaped by prefixing a backslash - character to the leading brace character (use this in preference to - placing the backslash inside the brace). -- The output macro has been deprecated (use the new include1 macro - inside a CustomBlock). -- The default document type is `article` (asciidoc no longer attempts - to guess). -- Files included within DelimitedBlocks are not searched for block - termination underlines. This ensures the entire file is part of the - DelimitedBlock. -- `include` macros can now be used in configuration files. -- Corrected \{infile} and \{outfile} glossary entry documentation. -- File inclusion is now limited to a depth of 5 to catch recursion - loops. -- Inline tags have been deprecated, they're not necessary and they - immediately make the source document backend specific. Use - CustomBlocks or Substitutions instead. - -Version 2.1 (2003-03-17) ------------------------- -- Added section auto numbering `{sectnum}` glossary entry - (auto-numbering function contributed by Ludovico Magnocavallo). -- asciidoc(1) now correctly returns non-zero exit status if an error - occurs. -- An AsciiDoc example website has been included in the AsciiDoc - distribution `examples/website` directory. -- NOTE: The `asciidoc` wrapper script included in the 2.0 distribution - has been dropped, if you've symlinked or aliased to `asciidoc` you'll - need to change them to point directly to `asciidoc.py` instead. -- An RCS $Id$ marker can be used as the document header revision line - (based on a patch submitted by Ludovico Magnocavallo). -- In addition to the `name=value` glossary entry format two new ones - have been introduced: `name` (the default value is set to an empty - string) and `^name` (the glossary entry is undefined). -- The `-q` command-line option has been deprecated and the `-w level` - command-line option added. + - NOTE: By default skipped substitution warnings are now suppressed. -- If a configuration file specified with the `-f` command-line option - is not found relative to the current working directory then the - search is repeated relative to the asciidoc(1) directory. This - allows global configuration files to be used. -- Added `{infile}`, `{outfile}` predefined glossary entries. -- Added `under-construction` macro to HTML article configuration - files. -- Deprecated `{asciidoc_version}` glossary entry in favor of - `{asciidoc-version}` (to it consistent with other entries). - -Version 2.0 (2003-02-24) ------------------------- -- The emphasized, strong and monospaced words options have been - generalized with the introduction of macro based 'special words' - lists. -- Glossary references can now appear in both the document and macro - bodies. -- All output files use `crlf` line termination (previously used UNIX - `lf` (newline) termination). -- Added [substitutions] section which implements arbitrary regular - expression based substitutions. -- An optional `master.conf` configuration file can be used for entries - that are not backend or document type specific. -- Special character definitions moved from the code to the new - [special_characters] configuration file section. -- Configuration file glossary added. -- Command-line -g glossary entry added. -- A new 'book' document type has been implemented for the 'docbook' - backend. It outputs DocBook 'book' documents. -- A major internal change has been the implementation of parametrized - user definable 'macros'. Internally most document elements are now - processed as macros. -- Configuration file macro variables can be specified with default - values (literals or other macro variables). -- An attempt has been made to tighten up the vocabulary used to - describe the AsciiDoc document syntax. -- The term abstract has been replaced by the more general term - 'preface' and a new preface section introduced into article - configuration files (replacing the synopsis sections). -- Any section elements can now be put in the document preface - (previous versions only allowed paragraphs). -- AsciiDoc Blocks have been unified and their behavior can be user - defined and parametrized. -- An 'output' inclusion allows an external file to be written directly - to the backend output file. -- A new CustomBlock has been added. Default behavior is to insert the - enveloped AsciiDoc source lines directly into the output file. -- A 'line break' tag can be inserted by terminating a line with a '+' - character (only really useful for HTML backends). -- An fourth section level has been introduced. -- The SidebarBlock delimiter line characters have been changed. The - deprecated underline is still accepted. -- Levels 2 and 3 title underline characters have been changed. The - deprecated underlines are still accepted. -- Lines with backend specific inline tags can be inserted into - AsciiDoc source files. -- Single words enveloped by underscores are no longer emphasized. This - feature was deprecated as it is redundant (use single quotes - instead) and was being applied to file names with underscores. -- A `-q` quiet option has been added to suppress warning messages. -- Badge images sourced locally. -- Added 'author' and 'author-mail' meta tags to HTML configuration - files. - -Version 1.5 (2003-01-08) ------------------------- -- Implemented sidebar document elements. -- Explicit checks for user specified configuration files and input - file (rather than throwing exception). - -Version 1.4 (2003-01-04) ------------------------- -- New configuration file options 'emphasizedwords' and 'strongwords'. - These allow the definition of words that will always be emphasized - or rendered in a strong font without inline formatting. -- Document and section titles are no long subject to inline - formatting. -- Multiple configuration files can be overlaid in a single command. -- Configuration file tags and options entries can now be overridden on - an entry by entry basis (previously the entire section was - overloaded). -- Configuration file tags and options entries are now cached this has - resulted in around 37% performance improvement over version 1.3. -- Variable lists can now contain multiple terms per list item. -- Placeholder paragraph eliminated from empty sections that contain - subsections. -- Added \{asciidoc_version} substitution variable. -- More documentation additions and tidy ups. - -Version 1.3 (2003-01-01) ------------------------- -- A new 'strong' text formatting convention has been implemented: - Word phrases enclosed in pairs of single quote characters (acute - accents) are rendered in a strong font (usually bold). -- Paragraphs can now be followed immediately by Simple lists and - Ordered lists without an intervening blank line. -- A user specified configuration file (`asciidoc(1)` -f option) - overlays the default configuration file rather than replacing it. - Custom configuration files need only contain those sections - that have been customized. -- Comment Block delimiters have been relaxed slightly. They must start - with three forward slashes /// but the remainder can contain any - characters, this allows comments to be embedded in the delimiter line. -- Leading non-digit characters preceding revision number are now - ignored. -- Set default indentsize [option] from 2 to documented default value - of zero in HTML backend html-article.conf and html-manpage.conf - files. -- Fixed error that occurred when taking input from stdin without - explicitly specifying a document type. -- Restored file name and line number error message information. -- Changed deprecated -t option to -d in asciidoc --help and usage - command output. -- CSS styles tweaking. -- Code, configuration file and documentation tidy ups. - -Version 1.2 (2002-12-28) ------------------------- -- Implemented 'include' URL to allow file inclusion. -- `fileextension` configuration file [option] renamed to more sensible - `outfilesuffix` (`fileextension` still accepted by this version but - will be dropped in future). -- Improved error reporting. -- CSS backends generate valid XHTML. -- New `css-embedded` backend generates HTML with embedded stylesheets - (use the `css` backend for linked stylesheets). The css-embedded - backend output contains no linked images so the generated html files - are completely self contained. -- Bug fixes. - -Version 1.1 (2002-12-03) ------------------------- -- Added css (cascading style sheets) backend -- Implemented IndentedBlock document element. -- Tabsize command-line option has been deprecated in - favor of configuration file. -- Default indent width changed to zero. -- Added \{localdate} and \{localtime} substitution variables. -- Added optional [options] configuration file section with - fileextension, tabsize and indentsize options. -- Implemented \{authorinitials} substitution variable. -- Added https link type. -- Corrected [graphic] substitution from \{title} to \{caption} - in linuxdoc-article.conf configuration file. -- Fixed error that occurred when '==' title underline was - used. - -Version 1.0 (2002-11-25) ------------------------- -First AsciiDoc public release along with AsciiDoc web site -(http://www.methods.co.nz/asciidoc/) and SourceForge.net project registration -(https://sourceforge.net/projects/asciidoc/[]). - -// vim: set syntax=asciidoc: diff --git a/source-builder/sb/asciidoc/examples/website/INSTALL.txt b/source-builder/sb/asciidoc/examples/website/INSTALL.txt deleted file mode 100644 index eb07ddd..0000000 --- a/source-builder/sb/asciidoc/examples/website/INSTALL.txt +++ /dev/null @@ -1,227 +0,0 @@ -AsciiDoc Installation -===================== - -NOTE: The current version of AsciiDoc requires *Python 2.4 or newer* -to run. If you don't already have an up-to-date version of Python -installed it can be downloaded from the official Python website -http://www.python.org/. - - -Prerequisites -------------- -See the link:README.html[README] page. - - -Installing from the Mercurial repository ----------------------------------------- -The AsciiDoc http://www.selenic.com/mercurial/[Mercurial] repository -is hosted by http://code.google.com/[Google Code]. -To browse the repository go to -http://code.google.com/p/asciidoc/source/browse/. -You can install AsciiDoc from the repository if you don't have an up to -date packaged version or want to get the latest version from the trunk: - -- Make sure you have http://www.selenic.com/mercurial/[Mercurial] - installed, you can check with: - - $ hg --version - -- Go to the directory you want to install AsciiDoc into and download - the repository. This example gets the {revnumber} tagged release: - -[subs="attributes"] - $ cd ~/bin - $ hg clone -r {revnumber} https://asciidoc.googlecode.com/hg/ asciidoc-{revnumber} - -You now have two choices: you can run asciidoc locally from your -repository or you can use 'autoconf(1)' and 'make(1)' to perform a -system-wide install. - -Running asciidoc from your local copy -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Create a symlink to the AsciiDoc script in a search `PATH` directory -so it's easy to execute `asciidoc` from the command-line, for example: - -[subs="attributes"] - $ ln -s ~/bin/asciidoc-{revnumber}/asciidoc.py ~/bin/asciidoc - $ ln -s ~/bin/asciidoc-{revnumber}/a2x.py ~/bin/a2x - -Use the Mercurial `pull` command to update your local AsciiDoc repository. - -Installing asciidoc for all users -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Create `configure` using 'autoconf(1)'; use `configure` to create the -`Makefile`; run 'make(1)'; build the man pages; install: - ---------------------------------------------- -$ autoconf -$ ./configure -$ make -$ sudo make install ---------------------------------------------- - -To uninstall: - ---------------------------------------------- -$ sudo make uninstall ---------------------------------------------- - - -[[X1]] -Distribution tarball installation ---------------------------------- -The distribution source tarballs can be downloaded from the -SourceForge http://sourceforge.net/projects/asciidoc/. - -NOTE: Unless you are <> you should -use the tarball and not the zip file to install the the distribution -(the tarball contains symlinks). - -If your flavor or UNIX or Linux does not have a packaged AsciiDoc -distribution or if you prefer to install the latest AsciiDoc version -from source use the `configure` shell script in the tarball root -directory. - -The `autoconf(1)` generated `configure` script creates a make file -that is tailored for your system. To install: - -[subs="attributes"] - $ tar -xzf asciidoc-{revnumber}.tar.gz - $ cd asciidoc-{revnumber} - $ ./configure - $ sudo make install - -To install the documentation: - - $ sudo make docs - -To uninstall AsciiDoc: - - $ sudo make uninstall - -If Vim is installed on your system the AsciiDoc Vim syntax highlighter -and filetype detection scripts will be install in the global Vim -configuration file directory (`asciidoc.vim` in the `syntax` directory -and `asciidoc_filetype.vim` in the `ftdetect` directory). - - -[[X3]] -Microsoft Windows installation ------------------------------- -AsciiDoc is developed and tested on Linux but there seem to be quite a -few people using it on Windows. To install AsciiDoc on Windows unzip -the distribution Zip file contents: - -[subs="attributes"] - $ unzip asciidoc-{revnumber}.zip - -This will create the folder +asciidoc-{revnumber}+ containing the -`asciidoc.py` and `a2x.py` executables along with configuration files -and documentation. - -To generate DocBook based outputs (e.g. PDFs) you will also need a -working DocBook toolchain. Installing and configuring a DocBook -toolchain on Windows can be a challenge -- this blog post explains -http://blog.rainwebs.net/2010/02/25/how-to-create-handsome-pdf-documents-without-frustration/[How -to Create Handsome PDF Documents Without Frustration] using -http://www.cygwin.com/[Cygwin], -http://dblatex.sourceforge.net/[dblatex] and AsciiDoc. - - -Testing your installation -------------------------- -Test out asciidoc by changing to the AsciiDoc application directory -and convert the User Guide document (`./doc/asciidoc.txt`) to XHTML -(`./doc/asciidoc.html`): - - $ python asciidoc.py doc/asciidoc.txt - -link:testasciidoc.html[testasciidoc] offers a more extensive set of -conformance tests, though you do need to create the test data before -running the tests (this in itself is a good post-install test): - - $ python ./tests/testasciidoc.py update - -Now you can run the tests by executing this command: - - $ python ./tests/testasciidoc.py run - -A full battery of tests can be run from the `main.aap` script in the -distribution root directory: - - $ aap test - - -Building the distribution -------------------------- -The AsciiDoc distribution is built using http://www.a-a-p.org/[A-A-P] -(a software build system written by Bram Moolenaar). The AsciiDoc -A-A-P scripts are: - -`./main.aap`:: Builds the distribution tarball and zip files, -documentation and example website. -`./doc/main.aap`:: Builds distribution documentation. -`./examples/website/main.aap`:: Builds AsciiDoc website. -`./common.aap`:: Included in all scripts. - -To build the distribution tarball and zip files, documentation and -example website run A-A-P from the distribution root directory: - - $ aap - - -[[X2]] -Prepackaged AsciiDoc installation ---------------------------------- -The following platform specific AsciiDoc packages are available: - -*Debian GNU/Linux*:: - If you use Debian or a Debian based distribution there's an - http://packages.debian.org/asciidoc[AsciiDoc Debian package] - available. Thanks to mailto:stone@debian.org[Fredrik Steen] who - built and maintains the Debian AsciiDoc package. - -*Gentoo Linux*:: - If you use Gentoo Linux there's a - http://packages.gentoo.org/package/app-text/asciidoc[Gentoo AsciiDoc - package] available. Thanks to mailto:brandon@ifup.org[Brandon - Philips] for writing the ebuild. - -*Fedora Linux*:: - With help from Terje Røsten, Chris Wright added asciidoc to Fedora - Extras which is available in the default installation. To install - asciidoc execute the following command: - - $ yum install asciidoc - -*Slackware Linux*:: - John Calixto has created a Slackware package for AsciiDoc which can - be downloaded from http://linuxpackages.net/. - -*Ark Linux*:: - mailto:bero@arklinux.org[Bernhard Rosenkraenzer] added AsciiDoc to - Ark Linux -- the package is available from the Ark Linux repository - at http://arklinux.osuosl.org/dockyard-devel/, so Ark Linux users - should just run `apt-get install asciidoc`. - -*T2 Linux*:: - mailto:cw@ixplanet.de[Christian Wiese] added AsciiDoc to the - http://www.t2-project.org/[T2 Linux] repository at - http://svn.exactcode.de/t2/trunk/package/textproc/asciidoc/. To - build and install the package on a T2 system, run - `./scripts/Emerge-Pkg asciidoc` from within your T2 source directory - (default: `/usr/src/t2-src`). - -*Red Hat Enterprise Linux, Fedora and CentOS packages*:: - Dag Wieers has built AsciiDoc RPMs for a number of Red Hat based - distributions, they can be downloaded from - http://dag.wieers.com/rpm/packages/asciidoc/. - -*CSW Package for Sun Solaris*:: - Ben Walton has created a CSW package for AsciiDoc, you can find it - here: http://opencsw.org/packages/asciidoc. - -See also link:userguide.html#X38[Packager Notes] in the 'AsciiDoc User -Guide'. - - diff --git a/source-builder/sb/asciidoc/examples/website/LaTeXMathML.js b/source-builder/sb/asciidoc/examples/website/LaTeXMathML.js deleted file mode 100644 index 51dba70..0000000 --- a/source-builder/sb/asciidoc/examples/website/LaTeXMathML.js +++ /dev/null @@ -1,1223 +0,0 @@ -/* -LaTeXMathML.js -============== - -This file, in this form, is due to Douglas Woodall, June 2006. -It contains JavaScript functions to convert (most simple) LaTeX -math notation to Presentation MathML. It was obtained by -downloading the file ASCIIMathML.js from - http://www1.chapman.edu/~jipsen/mathml/asciimathdownload/ -and modifying it so that it carries out ONLY those conversions -that would be carried out in LaTeX. A description of the original -file, with examples, can be found at - www1.chapman.edu/~jipsen/mathml/asciimath.html - ASCIIMathML: Math on the web for everyone - -Here is the header notice from the original file: - -ASCIIMathML.js -============== -This file contains JavaScript functions to convert ASCII math notation -to Presentation MathML. The conversion is done while the (X)HTML page -loads, and should work with Firefox/Mozilla/Netscape 7+ and Internet -Explorer 6+MathPlayer (http://www.dessci.com/en/products/mathplayer/). -Just add the next line to your (X)HTML page with this file in the same folder: -This is a convenient and inexpensive solution for authoring MathML. - -Version 1.4.7 Dec 15, 2005, (c) Peter Jipsen http://www.chapman.edu/~jipsen -Latest version at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML.js -For changes see http://www.chapman.edu/~jipsen/mathml/asciimathchanges.txt -If you use it on a webpage, please send the URL to jipsen@chapman.edu - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or (at -your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License (at http://www.gnu.org/copyleft/gpl.html) -for more details. - -LaTeXMathML.js (ctd) -============== - -The instructions for use are the same as for the original -ASCIIMathML.js, except that of course the line you add to your -file should be -Or use absolute path names if the file is not in the same folder -as your (X)HTML page. -*/ - -var checkForMathML = true; // check if browser can display MathML -var notifyIfNoMathML = true; // display note if no MathML capability -var alertIfNoMathML = false; // show alert box if no MathML capability -// was "red": -var mathcolor = ""; // change it to "" (to inherit) or any other color -// was "serif": -var mathfontfamily = ""; // change to "" to inherit (works in IE) - // or another family (e.g. "arial") -var showasciiformulaonhover = true; // helps students learn ASCIIMath -/* -// Commented out by DRW -- not now used -- see DELIMITERS (twice) near the end -var displaystyle = false; // puts limits above and below large operators -var decimalsign = "."; // change to "," if you like, beware of `(1,2)`! -var AMdelimiter1 = "`", AMescape1 = "\\\\`"; // can use other characters -var AMdelimiter2 = "$", AMescape2 = "\\\\\\$", AMdelimiter2regexp = "\\$"; -var doubleblankmathdelimiter = false; // if true, x+1 is equal to `x+1` - // for IE this works only in -//var separatetokens;// has been removed (email me if this is a problem) -*/ -var isIE = document.createElementNS==null; - -if (document.getElementById==null) - alert("This webpage requires a recent browser such as\ -\nMozilla/Netscape 7+ or Internet Explorer 6+MathPlayer") - -// all further global variables start with "AM" - -function AMcreateElementXHTML(t) { - if (isIE) return document.createElement(t); - else return document.createElementNS("http://www.w3.org/1999/xhtml",t); -} - -function AMnoMathMLNote() { - var nd = AMcreateElementXHTML("h3"); - nd.setAttribute("align","center") - nd.appendChild(AMcreateElementXHTML("p")); - nd.appendChild(document.createTextNode("To view the ")); - var an = AMcreateElementXHTML("a"); - an.appendChild(document.createTextNode("LaTeXMathML")); - an.setAttribute("href","http://www.maths.nott.ac.uk/personal/drw/lm.html"); - nd.appendChild(an); - nd.appendChild(document.createTextNode(" notation use Internet Explorer 6+")); - an = AMcreateElementXHTML("a"); - an.appendChild(document.createTextNode("MathPlayer")); - an.setAttribute("href","http://www.dessci.com/en/products/mathplayer/download.htm"); - nd.appendChild(an); - nd.appendChild(document.createTextNode(" or Netscape/Mozilla/Firefox")); - nd.appendChild(AMcreateElementXHTML("p")); - return nd; -} - -function AMisMathMLavailable() { - if (navigator.appName.slice(0,8)=="Netscape") - if (navigator.appVersion.slice(0,1)>="5") return null; - else return AMnoMathMLNote(); - else if (navigator.appName.slice(0,9)=="Microsoft") - try { - var ActiveX = new ActiveXObject("MathPlayer.Factory.1"); - return null; - } catch (e) { - return AMnoMathMLNote(); - } - else return AMnoMathMLNote(); -} - -// character lists for Mozilla/Netscape fonts -var AMcal = [0xEF35,0x212C,0xEF36,0xEF37,0x2130,0x2131,0xEF38,0x210B,0x2110,0xEF39,0xEF3A,0x2112,0x2133,0xEF3B,0xEF3C,0xEF3D,0xEF3E,0x211B,0xEF3F,0xEF40,0xEF41,0xEF42,0xEF43,0xEF44,0xEF45,0xEF46]; -var AMfrk = [0xEF5D,0xEF5E,0x212D,0xEF5F,0xEF60,0xEF61,0xEF62,0x210C,0x2111,0xEF63,0xEF64,0xEF65,0xEF66,0xEF67,0xEF68,0xEF69,0xEF6A,0x211C,0xEF6B,0xEF6C,0xEF6D,0xEF6E,0xEF6F,0xEF70,0xEF71,0x2128]; -var AMbbb = [0xEF8C,0xEF8D,0x2102,0xEF8E,0xEF8F,0xEF90,0xEF91,0x210D,0xEF92,0xEF93,0xEF94,0xEF95,0xEF96,0x2115,0xEF97,0x2119,0x211A,0x211D,0xEF98,0xEF99,0xEF9A,0xEF9B,0xEF9C,0xEF9D,0xEF9E,0x2124]; - -var CONST = 0, UNARY = 1, BINARY = 2, INFIX = 3, LEFTBRACKET = 4, - RIGHTBRACKET = 5, SPACE = 6, UNDEROVER = 7, DEFINITION = 8, - TEXT = 9, BIG = 10, LONG = 11, STRETCHY = 12, MATRIX = 13; // token types - -var AMsqrt = {input:"\\sqrt", tag:"msqrt", output:"sqrt", ttype:UNARY}, - AMroot = {input:"\\root", tag:"mroot", output:"root", ttype:BINARY}, - AMfrac = {input:"\\frac", tag:"mfrac", output:"/", ttype:BINARY}, - AMover = {input:"\\stackrel", tag:"mover", output:"stackrel", ttype:BINARY}, - AMatop = {input:"\\atop", tag:"mfrac", output:"", ttype:INFIX}, - AMchoose = {input:"\\choose", tag:"mfrac", output:"", ttype:INFIX}, - AMsub = {input:"_", tag:"msub", output:"_", ttype:INFIX}, - AMsup = {input:"^", tag:"msup", output:"^", ttype:INFIX}, - AMtext = {input:"\\mathrm", tag:"mtext", output:"text", ttype:TEXT}, - AMmbox = {input:"\\mbox", tag:"mtext", output:"mbox", ttype:TEXT}; - -// Commented out by DRW to prevent 1/2 turning into a 2-line fraction -// AMdiv = {input:"/", tag:"mfrac", output:"/", ttype:INFIX}, -// Commented out by DRW so that " prints literally in equations -// AMquote = {input:"\"", tag:"mtext", output:"mbox", ttype:TEXT}; - -var AMsymbols = [ -//Greek letters -{input:"\\alpha", tag:"mi", output:"\u03B1", ttype:CONST}, -{input:"\\beta", tag:"mi", output:"\u03B2", ttype:CONST}, -{input:"\\gamma", tag:"mi", output:"\u03B3", ttype:CONST}, -{input:"\\delta", tag:"mi", output:"\u03B4", ttype:CONST}, -{input:"\\epsilon", tag:"mi", output:"\u03B5", ttype:CONST}, -{input:"\\varepsilon", tag:"mi", output:"\u025B", ttype:CONST}, -{input:"\\zeta", tag:"mi", output:"\u03B6", ttype:CONST}, -{input:"\\eta", tag:"mi", output:"\u03B7", ttype:CONST}, -{input:"\\theta", tag:"mi", output:"\u03B8", ttype:CONST}, -{input:"\\vartheta", tag:"mi", output:"\u03D1", ttype:CONST}, -{input:"\\iota", tag:"mi", output:"\u03B9", ttype:CONST}, -{input:"\\kappa", tag:"mi", output:"\u03BA", ttype:CONST}, -{input:"\\lambda", tag:"mi", output:"\u03BB", ttype:CONST}, -{input:"\\mu", tag:"mi", output:"\u03BC", ttype:CONST}, -{input:"\\nu", tag:"mi", output:"\u03BD", ttype:CONST}, -{input:"\\xi", tag:"mi", output:"\u03BE", ttype:CONST}, -{input:"\\pi", tag:"mi", output:"\u03C0", ttype:CONST}, -{input:"\\varpi", tag:"mi", output:"\u03D6", ttype:CONST}, -{input:"\\rho", tag:"mi", output:"\u03C1", ttype:CONST}, -{input:"\\varrho", tag:"mi", output:"\u03F1", ttype:CONST}, -{input:"\\varsigma", tag:"mi", output:"\u03C2", ttype:CONST}, -{input:"\\sigma", tag:"mi", output:"\u03C3", ttype:CONST}, -{input:"\\tau", tag:"mi", output:"\u03C4", ttype:CONST}, -{input:"\\upsilon", tag:"mi", output:"\u03C5", ttype:CONST}, -{input:"\\phi", tag:"mi", output:"\u03C6", ttype:CONST}, -{input:"\\varphi", tag:"mi", output:"\u03D5", ttype:CONST}, -{input:"\\chi", tag:"mi", output:"\u03C7", ttype:CONST}, -{input:"\\psi", tag:"mi", output:"\u03C8", ttype:CONST}, -{input:"\\omega", tag:"mi", output:"\u03C9", ttype:CONST}, -{input:"\\Gamma", tag:"mo", output:"\u0393", ttype:CONST}, -{input:"\\Delta", tag:"mo", output:"\u0394", ttype:CONST}, -{input:"\\Theta", tag:"mo", output:"\u0398", ttype:CONST}, -{input:"\\Lambda", tag:"mo", output:"\u039B", ttype:CONST}, -{input:"\\Xi", tag:"mo", output:"\u039E", ttype:CONST}, -{input:"\\Pi", tag:"mo", output:"\u03A0", ttype:CONST}, -{input:"\\Sigma", tag:"mo", output:"\u03A3", ttype:CONST}, -{input:"\\Upsilon", tag:"mo", output:"\u03A5", ttype:CONST}, -{input:"\\Phi", tag:"mo", output:"\u03A6", ttype:CONST}, -{input:"\\Psi", tag:"mo", output:"\u03A8", ttype:CONST}, -{input:"\\Omega", tag:"mo", output:"\u03A9", ttype:CONST}, - -//fractions -{input:"\\frac12", tag:"mo", output:"\u00BD", ttype:CONST}, -{input:"\\frac14", tag:"mo", output:"\u00BC", ttype:CONST}, -{input:"\\frac34", tag:"mo", output:"\u00BE", ttype:CONST}, -{input:"\\frac13", tag:"mo", output:"\u2153", ttype:CONST}, -{input:"\\frac23", tag:"mo", output:"\u2154", ttype:CONST}, -{input:"\\frac15", tag:"mo", output:"\u2155", ttype:CONST}, -{input:"\\frac25", tag:"mo", output:"\u2156", ttype:CONST}, -{input:"\\frac35", tag:"mo", output:"\u2157", ttype:CONST}, -{input:"\\frac45", tag:"mo", output:"\u2158", ttype:CONST}, -{input:"\\frac16", tag:"mo", output:"\u2159", ttype:CONST}, -{input:"\\frac56", tag:"mo", output:"\u215A", ttype:CONST}, -{input:"\\frac18", tag:"mo", output:"\u215B", ttype:CONST}, -{input:"\\frac38", tag:"mo", output:"\u215C", ttype:CONST}, -{input:"\\frac58", tag:"mo", output:"\u215D", ttype:CONST}, -{input:"\\frac78", tag:"mo", output:"\u215E", ttype:CONST}, - -//binary operation symbols -{input:"\\pm", tag:"mo", output:"\u00B1", ttype:CONST}, -{input:"\\mp", tag:"mo", output:"\u2213", ttype:CONST}, -{input:"\\triangleleft",tag:"mo", output:"\u22B2", ttype:CONST}, -{input:"\\triangleright",tag:"mo",output:"\u22B3", ttype:CONST}, -{input:"\\cdot", tag:"mo", output:"\u22C5", ttype:CONST}, -{input:"\\star", tag:"mo", output:"\u22C6", ttype:CONST}, -{input:"\\ast", tag:"mo", output:"\u002A", ttype:CONST}, -{input:"\\times", tag:"mo", output:"\u00D7", ttype:CONST}, -{input:"\\div", tag:"mo", output:"\u00F7", ttype:CONST}, -{input:"\\circ", tag:"mo", output:"\u2218", ttype:CONST}, -//{input:"\\bullet", tag:"mo", output:"\u2219", ttype:CONST}, -{input:"\\bullet", tag:"mo", output:"\u2022", ttype:CONST}, -{input:"\\oplus", tag:"mo", output:"\u2295", ttype:CONST}, -{input:"\\ominus", tag:"mo", output:"\u2296", ttype:CONST}, -{input:"\\otimes", tag:"mo", output:"\u2297", ttype:CONST}, -{input:"\\bigcirc", tag:"mo", output:"\u25CB", ttype:CONST}, -{input:"\\oslash", tag:"mo", output:"\u2298", ttype:CONST}, -{input:"\\odot", tag:"mo", output:"\u2299", ttype:CONST}, -{input:"\\land", tag:"mo", output:"\u2227", ttype:CONST}, -{input:"\\wedge", tag:"mo", output:"\u2227", ttype:CONST}, -{input:"\\lor", tag:"mo", output:"\u2228", ttype:CONST}, -{input:"\\vee", tag:"mo", output:"\u2228", ttype:CONST}, -{input:"\\cap", tag:"mo", output:"\u2229", ttype:CONST}, -{input:"\\cup", tag:"mo", output:"\u222A", ttype:CONST}, -{input:"\\sqcap", tag:"mo", output:"\u2293", ttype:CONST}, -{input:"\\sqcup", tag:"mo", output:"\u2294", ttype:CONST}, -{input:"\\uplus", tag:"mo", output:"\u228E", ttype:CONST}, -{input:"\\amalg", tag:"mo", output:"\u2210", ttype:CONST}, -{input:"\\bigtriangleup",tag:"mo",output:"\u25B3", ttype:CONST}, -{input:"\\bigtriangledown",tag:"mo",output:"\u25BD", ttype:CONST}, -{input:"\\dag", tag:"mo", output:"\u2020", ttype:CONST}, -{input:"\\dagger", tag:"mo", output:"\u2020", ttype:CONST}, -{input:"\\ddag", tag:"mo", output:"\u2021", ttype:CONST}, -{input:"\\ddagger", tag:"mo", output:"\u2021", ttype:CONST}, -{input:"\\lhd", tag:"mo", output:"\u22B2", ttype:CONST}, -{input:"\\rhd", tag:"mo", output:"\u22B3", ttype:CONST}, -{input:"\\unlhd", tag:"mo", output:"\u22B4", ttype:CONST}, -{input:"\\unrhd", tag:"mo", output:"\u22B5", ttype:CONST}, - - -//BIG Operators -{input:"\\sum", tag:"mo", output:"\u2211", ttype:UNDEROVER}, -{input:"\\prod", tag:"mo", output:"\u220F", ttype:UNDEROVER}, -{input:"\\bigcap", tag:"mo", output:"\u22C2", ttype:UNDEROVER}, -{input:"\\bigcup", tag:"mo", output:"\u22C3", ttype:UNDEROVER}, -{input:"\\bigwedge", tag:"mo", output:"\u22C0", ttype:UNDEROVER}, -{input:"\\bigvee", tag:"mo", output:"\u22C1", ttype:UNDEROVER}, -{input:"\\bigsqcap", tag:"mo", output:"\u2A05", ttype:UNDEROVER}, -{input:"\\bigsqcup", tag:"mo", output:"\u2A06", ttype:UNDEROVER}, -{input:"\\coprod", tag:"mo", output:"\u2210", ttype:UNDEROVER}, -{input:"\\bigoplus", tag:"mo", output:"\u2A01", ttype:UNDEROVER}, -{input:"\\bigotimes", tag:"mo", output:"\u2A02", ttype:UNDEROVER}, -{input:"\\bigodot", tag:"mo", output:"\u2A00", ttype:UNDEROVER}, -{input:"\\biguplus", tag:"mo", output:"\u2A04", ttype:UNDEROVER}, -{input:"\\int", tag:"mo", output:"\u222B", ttype:CONST}, -{input:"\\oint", tag:"mo", output:"\u222E", ttype:CONST}, - -//binary relation symbols -{input:":=", tag:"mo", output:":=", ttype:CONST}, -{input:"\\lt", tag:"mo", output:"<", ttype:CONST}, -{input:"\\gt", tag:"mo", output:">", ttype:CONST}, -{input:"\\ne", tag:"mo", output:"\u2260", ttype:CONST}, -{input:"\\neq", tag:"mo", output:"\u2260", ttype:CONST}, -{input:"\\le", tag:"mo", output:"\u2264", ttype:CONST}, -{input:"\\leq", tag:"mo", output:"\u2264", ttype:CONST}, -{input:"\\leqslant", tag:"mo", output:"\u2264", ttype:CONST}, -{input:"\\ge", tag:"mo", output:"\u2265", ttype:CONST}, -{input:"\\geq", tag:"mo", output:"\u2265", ttype:CONST}, -{input:"\\geqslant", tag:"mo", output:"\u2265", ttype:CONST}, -{input:"\\equiv", tag:"mo", output:"\u2261", ttype:CONST}, -{input:"\\ll", tag:"mo", output:"\u226A", ttype:CONST}, -{input:"\\gg", tag:"mo", output:"\u226B", ttype:CONST}, -{input:"\\doteq", tag:"mo", output:"\u2250", ttype:CONST}, -{input:"\\prec", tag:"mo", output:"\u227A", ttype:CONST}, -{input:"\\succ", tag:"mo", output:"\u227B", ttype:CONST}, -{input:"\\preceq", tag:"mo", output:"\u227C", ttype:CONST}, -{input:"\\succeq", tag:"mo", output:"\u227D", ttype:CONST}, -{input:"\\subset", tag:"mo", output:"\u2282", ttype:CONST}, -{input:"\\supset", tag:"mo", output:"\u2283", ttype:CONST}, -{input:"\\subseteq", tag:"mo", output:"\u2286", ttype:CONST}, -{input:"\\supseteq", tag:"mo", output:"\u2287", ttype:CONST}, -{input:"\\sqsubset", tag:"mo", output:"\u228F", ttype:CONST}, -{input:"\\sqsupset", tag:"mo", output:"\u2290", ttype:CONST}, -{input:"\\sqsubseteq", tag:"mo", output:"\u2291", ttype:CONST}, -{input:"\\sqsupseteq", tag:"mo", output:"\u2292", ttype:CONST}, -{input:"\\sim", tag:"mo", output:"\u223C", ttype:CONST}, -{input:"\\simeq", tag:"mo", output:"\u2243", ttype:CONST}, -{input:"\\approx", tag:"mo", output:"\u2248", ttype:CONST}, -{input:"\\cong", tag:"mo", output:"\u2245", ttype:CONST}, -{input:"\\Join", tag:"mo", output:"\u22C8", ttype:CONST}, -{input:"\\bowtie", tag:"mo", output:"\u22C8", ttype:CONST}, -{input:"\\in", tag:"mo", output:"\u2208", ttype:CONST}, -{input:"\\ni", tag:"mo", output:"\u220B", ttype:CONST}, -{input:"\\owns", tag:"mo", output:"\u220B", ttype:CONST}, -{input:"\\propto", tag:"mo", output:"\u221D", ttype:CONST}, -{input:"\\vdash", tag:"mo", output:"\u22A2", ttype:CONST}, -{input:"\\dashv", tag:"mo", output:"\u22A3", ttype:CONST}, -{input:"\\models", tag:"mo", output:"\u22A8", ttype:CONST}, -{input:"\\perp", tag:"mo", output:"\u22A5", ttype:CONST}, -{input:"\\smile", tag:"mo", output:"\u2323", ttype:CONST}, -{input:"\\frown", tag:"mo", output:"\u2322", ttype:CONST}, -{input:"\\asymp", tag:"mo", output:"\u224D", ttype:CONST}, -{input:"\\notin", tag:"mo", output:"\u2209", ttype:CONST}, - -//matrices -{input:"\\begin{eqnarray}", output:"X", ttype:MATRIX, invisible:true}, -{input:"\\begin{array}", output:"X", ttype:MATRIX, invisible:true}, -{input:"\\\\", output:"}&{", ttype:DEFINITION}, -{input:"\\end{eqnarray}", output:"}}", ttype:DEFINITION}, -{input:"\\end{array}", output:"}}", ttype:DEFINITION}, - -//grouping and literal brackets -- ieval is for IE -{input:"\\big", tag:"mo", output:"X", atval:"1.2", ieval:"2.2", ttype:BIG}, -{input:"\\Big", tag:"mo", output:"X", atval:"1.6", ieval:"2.6", ttype:BIG}, -{input:"\\bigg", tag:"mo", output:"X", atval:"2.2", ieval:"3.2", ttype:BIG}, -{input:"\\Bigg", tag:"mo", output:"X", atval:"2.9", ieval:"3.9", ttype:BIG}, -{input:"\\left", tag:"mo", output:"X", ttype:LEFTBRACKET}, -{input:"\\right", tag:"mo", output:"X", ttype:RIGHTBRACKET}, -{input:"{", output:"{", ttype:LEFTBRACKET, invisible:true}, -{input:"}", output:"}", ttype:RIGHTBRACKET, invisible:true}, - -{input:"(", tag:"mo", output:"(", atval:"1", ttype:STRETCHY}, -{input:"[", tag:"mo", output:"[", atval:"1", ttype:STRETCHY}, -{input:"\\lbrack", tag:"mo", output:"[", atval:"1", ttype:STRETCHY}, -{input:"\\{", tag:"mo", output:"{", atval:"1", ttype:STRETCHY}, -{input:"\\lbrace", tag:"mo", output:"{", atval:"1", ttype:STRETCHY}, -{input:"\\langle", tag:"mo", output:"\u2329", atval:"1", ttype:STRETCHY}, -{input:"\\lfloor", tag:"mo", output:"\u230A", atval:"1", ttype:STRETCHY}, -{input:"\\lceil", tag:"mo", output:"\u2308", atval:"1", ttype:STRETCHY}, - -// rtag:"mi" causes space to be inserted before a following sin, cos, etc. -// (see function AMparseExpr() ) -{input:")", tag:"mo",output:")", rtag:"mi",atval:"1",ttype:STRETCHY}, -{input:"]", tag:"mo",output:"]", rtag:"mi",atval:"1",ttype:STRETCHY}, -{input:"\\rbrack",tag:"mo",output:"]", rtag:"mi",atval:"1",ttype:STRETCHY}, -{input:"\\}", tag:"mo",output:"}", rtag:"mi",atval:"1",ttype:STRETCHY}, -{input:"\\rbrace",tag:"mo",output:"}", rtag:"mi",atval:"1",ttype:STRETCHY}, -{input:"\\rangle",tag:"mo",output:"\u232A", rtag:"mi",atval:"1",ttype:STRETCHY}, -{input:"\\rfloor",tag:"mo",output:"\u230B", rtag:"mi",atval:"1",ttype:STRETCHY}, -{input:"\\rceil", tag:"mo",output:"\u2309", rtag:"mi",atval:"1",ttype:STRETCHY}, - -// "|", "\\|", "\\vert" and "\\Vert" modified later: lspace = rspace = 0em -{input:"|", tag:"mo", output:"\u2223", atval:"1", ttype:STRETCHY}, -{input:"\\|", tag:"mo", output:"\u2225", atval:"1", ttype:STRETCHY}, -{input:"\\vert", tag:"mo", output:"\u2223", atval:"1", ttype:STRETCHY}, -{input:"\\Vert", tag:"mo", output:"\u2225", atval:"1", ttype:STRETCHY}, -{input:"\\mid", tag:"mo", output:"\u2223", atval:"1", ttype:STRETCHY}, -{input:"\\parallel", tag:"mo", output:"\u2225", atval:"1", ttype:STRETCHY}, -{input:"/", tag:"mo", output:"/", atval:"1.01", ttype:STRETCHY}, -{input:"\\backslash", tag:"mo", output:"\u2216", atval:"1", ttype:STRETCHY}, -{input:"\\setminus", tag:"mo", output:"\\", ttype:CONST}, - -//miscellaneous symbols -{input:"\\!", tag:"mspace", atname:"width", atval:"-0.167em", ttype:SPACE}, -{input:"\\,", tag:"mspace", atname:"width", atval:"0.167em", ttype:SPACE}, -{input:"\\>", tag:"mspace", atname:"width", atval:"0.222em", ttype:SPACE}, -{input:"\\:", tag:"mspace", atname:"width", atval:"0.222em", ttype:SPACE}, -{input:"\\;", tag:"mspace", atname:"width", atval:"0.278em", ttype:SPACE}, -{input:"~", tag:"mspace", atname:"width", atval:"0.333em", ttype:SPACE}, -{input:"\\quad", tag:"mspace", atname:"width", atval:"1em", ttype:SPACE}, -{input:"\\qquad", tag:"mspace", atname:"width", atval:"2em", ttype:SPACE}, -//{input:"{}", tag:"mo", output:"\u200B", ttype:CONST}, // zero-width -{input:"\\prime", tag:"mo", output:"\u2032", ttype:CONST}, -{input:"'", tag:"mo", output:"\u02B9", ttype:CONST}, -{input:"''", tag:"mo", output:"\u02BA", ttype:CONST}, -{input:"'''", tag:"mo", output:"\u2034", ttype:CONST}, -{input:"''''", tag:"mo", output:"\u2057", ttype:CONST}, -{input:"\\ldots", tag:"mo", output:"\u2026", ttype:CONST}, -{input:"\\cdots", tag:"mo", output:"\u22EF", ttype:CONST}, -{input:"\\vdots", tag:"mo", output:"\u22EE", ttype:CONST}, -{input:"\\ddots", tag:"mo", output:"\u22F1", ttype:CONST}, -{input:"\\forall", tag:"mo", output:"\u2200", ttype:CONST}, -{input:"\\exists", tag:"mo", output:"\u2203", ttype:CONST}, -{input:"\\Re", tag:"mo", output:"\u211C", ttype:CONST}, -{input:"\\Im", tag:"mo", output:"\u2111", ttype:CONST}, -{input:"\\aleph", tag:"mo", output:"\u2135", ttype:CONST}, -{input:"\\hbar", tag:"mo", output:"\u210F", ttype:CONST}, -{input:"\\ell", tag:"mo", output:"\u2113", ttype:CONST}, -{input:"\\wp", tag:"mo", output:"\u2118", ttype:CONST}, -{input:"\\emptyset", tag:"mo", output:"\u2205", ttype:CONST}, -{input:"\\infty", tag:"mo", output:"\u221E", ttype:CONST}, -{input:"\\surd", tag:"mo", output:"\\sqrt{}", ttype:DEFINITION}, -{input:"\\partial", tag:"mo", output:"\u2202", ttype:CONST}, -{input:"\\nabla", tag:"mo", output:"\u2207", ttype:CONST}, -{input:"\\triangle", tag:"mo", output:"\u25B3", ttype:CONST}, -{input:"\\therefore", tag:"mo", output:"\u2234", ttype:CONST}, -{input:"\\angle", tag:"mo", output:"\u2220", ttype:CONST}, -//{input:"\\\\ ", tag:"mo", output:"\u00A0", ttype:CONST}, -{input:"\\diamond", tag:"mo", output:"\u22C4", ttype:CONST}, -//{input:"\\Diamond", tag:"mo", output:"\u25CA", ttype:CONST}, -{input:"\\Diamond", tag:"mo", output:"\u25C7", ttype:CONST}, -{input:"\\neg", tag:"mo", output:"\u00AC", ttype:CONST}, -{input:"\\lnot", tag:"mo", output:"\u00AC", ttype:CONST}, -{input:"\\bot", tag:"mo", output:"\u22A5", ttype:CONST}, -{input:"\\top", tag:"mo", output:"\u22A4", ttype:CONST}, -{input:"\\square", tag:"mo", output:"\u25AB", ttype:CONST}, -{input:"\\Box", tag:"mo", output:"\u25A1", ttype:CONST}, -{input:"\\wr", tag:"mo", output:"\u2240", ttype:CONST}, - -//standard functions -//Note UNDEROVER *must* have tag:"mo" to work properly -{input:"\\arccos", tag:"mi", output:"arccos", ttype:UNARY, func:true}, -{input:"\\arcsin", tag:"mi", output:"arcsin", ttype:UNARY, func:true}, -{input:"\\arctan", tag:"mi", output:"arctan", ttype:UNARY, func:true}, -{input:"\\arg", tag:"mi", output:"arg", ttype:UNARY, func:true}, -{input:"\\cos", tag:"mi", output:"cos", ttype:UNARY, func:true}, -{input:"\\cosh", tag:"mi", output:"cosh", ttype:UNARY, func:true}, -{input:"\\cot", tag:"mi", output:"cot", ttype:UNARY, func:true}, -{input:"\\coth", tag:"mi", output:"coth", ttype:UNARY, func:true}, -{input:"\\csc", tag:"mi", output:"csc", ttype:UNARY, func:true}, -{input:"\\deg", tag:"mi", output:"deg", ttype:UNARY, func:true}, -{input:"\\det", tag:"mi", output:"det", ttype:UNARY, func:true}, -{input:"\\dim", tag:"mi", output:"dim", ttype:UNARY, func:true}, //CONST? -{input:"\\exp", tag:"mi", output:"exp", ttype:UNARY, func:true}, -{input:"\\gcd", tag:"mi", output:"gcd", ttype:UNARY, func:true}, //CONST? -{input:"\\hom", tag:"mi", output:"hom", ttype:UNARY, func:true}, -{input:"\\inf", tag:"mo", output:"inf", ttype:UNDEROVER}, -{input:"\\ker", tag:"mi", output:"ker", ttype:UNARY, func:true}, -{input:"\\lg", tag:"mi", output:"lg", ttype:UNARY, func:true}, -{input:"\\lim", tag:"mo", output:"lim", ttype:UNDEROVER}, -{input:"\\liminf", tag:"mo", output:"liminf", ttype:UNDEROVER}, -{input:"\\limsup", tag:"mo", output:"limsup", ttype:UNDEROVER}, -{input:"\\ln", tag:"mi", output:"ln", ttype:UNARY, func:true}, -{input:"\\log", tag:"mi", output:"log", ttype:UNARY, func:true}, -{input:"\\max", tag:"mo", output:"max", ttype:UNDEROVER}, -{input:"\\min", tag:"mo", output:"min", ttype:UNDEROVER}, -{input:"\\Pr", tag:"mi", output:"Pr", ttype:UNARY, func:true}, -{input:"\\sec", tag:"mi", output:"sec", ttype:UNARY, func:true}, -{input:"\\sin", tag:"mi", output:"sin", ttype:UNARY, func:true}, -{input:"\\sinh", tag:"mi", output:"sinh", ttype:UNARY, func:true}, -{input:"\\sup", tag:"mo", output:"sup", ttype:UNDEROVER}, -{input:"\\tan", tag:"mi", output:"tan", ttype:UNARY, func:true}, -{input:"\\tanh", tag:"mi", output:"tanh", ttype:UNARY, func:true}, - -//arrows -{input:"\\gets", tag:"mo", output:"\u2190", ttype:CONST}, -{input:"\\leftarrow", tag:"mo", output:"\u2190", ttype:CONST}, -{input:"\\to", tag:"mo", output:"\u2192", ttype:CONST}, -{input:"\\rightarrow", tag:"mo", output:"\u2192", ttype:CONST}, -{input:"\\leftrightarrow", tag:"mo", output:"\u2194", ttype:CONST}, -{input:"\\uparrow", tag:"mo", output:"\u2191", ttype:CONST}, -{input:"\\downarrow", tag:"mo", output:"\u2193", ttype:CONST}, -{input:"\\updownarrow", tag:"mo", output:"\u2195", ttype:CONST}, -{input:"\\Leftarrow", tag:"mo", output:"\u21D0", ttype:CONST}, -{input:"\\Rightarrow", tag:"mo", output:"\u21D2", ttype:CONST}, -{input:"\\Leftrightarrow", tag:"mo", output:"\u21D4", ttype:CONST}, -{input:"\\iff", tag:"mo", output:"~\\Longleftrightarrow~", ttype:DEFINITION}, -{input:"\\Uparrow", tag:"mo", output:"\u21D1", ttype:CONST}, -{input:"\\Downarrow", tag:"mo", output:"\u21D3", ttype:CONST}, -{input:"\\Updownarrow", tag:"mo", output:"\u21D5", ttype:CONST}, -{input:"\\mapsto", tag:"mo", output:"\u21A6", ttype:CONST}, -{input:"\\longleftarrow", tag:"mo", output:"\u2190", ttype:LONG}, -{input:"\\longrightarrow", tag:"mo", output:"\u2192", ttype:LONG}, -{input:"\\longleftrightarrow", tag:"mo", output:"\u2194", ttype:LONG}, -{input:"\\Longleftarrow", tag:"mo", output:"\u21D0", ttype:LONG}, -{input:"\\Longrightarrow", tag:"mo", output:"\u21D2", ttype:LONG}, -{input:"\\Longleftrightarrow", tag:"mo", output:"\u21D4", ttype:LONG}, -{input:"\\longmapsto", tag:"mo", output:"\u21A6", ttype:CONST}, - // disaster if LONG - -//commands with argument -AMsqrt, AMroot, AMfrac, AMover, AMsub, AMsup, AMtext, AMmbox, AMatop, AMchoose, -//AMdiv, AMquote, - -//diacritical marks -{input:"\\acute", tag:"mover", output:"\u00B4", ttype:UNARY, acc:true}, -//{input:"\\acute", tag:"mover", output:"\u0317", ttype:UNARY, acc:true}, -//{input:"\\acute", tag:"mover", output:"\u0301", ttype:UNARY, acc:true}, -//{input:"\\grave", tag:"mover", output:"\u0300", ttype:UNARY, acc:true}, -//{input:"\\grave", tag:"mover", output:"\u0316", ttype:UNARY, acc:true}, -{input:"\\grave", tag:"mover", output:"\u0060", ttype:UNARY, acc:true}, -{input:"\\breve", tag:"mover", output:"\u02D8", ttype:UNARY, acc:true}, -{input:"\\check", tag:"mover", output:"\u02C7", ttype:UNARY, acc:true}, -{input:"\\dot", tag:"mover", output:".", ttype:UNARY, acc:true}, -{input:"\\ddot", tag:"mover", output:"..", ttype:UNARY, acc:true}, -//{input:"\\ddot", tag:"mover", output:"\u00A8", ttype:UNARY, acc:true}, -{input:"\\mathring", tag:"mover", output:"\u00B0", ttype:UNARY, acc:true}, -{input:"\\vec", tag:"mover", output:"\u20D7", ttype:UNARY, acc:true}, -{input:"\\overrightarrow",tag:"mover",output:"\u20D7", ttype:UNARY, acc:true}, -{input:"\\overleftarrow",tag:"mover", output:"\u20D6", ttype:UNARY, acc:true}, -{input:"\\hat", tag:"mover", output:"\u005E", ttype:UNARY, acc:true}, -{input:"\\widehat", tag:"mover", output:"\u0302", ttype:UNARY, acc:true}, -{input:"\\tilde", tag:"mover", output:"~", ttype:UNARY, acc:true}, -//{input:"\\tilde", tag:"mover", output:"\u0303", ttype:UNARY, acc:true}, -{input:"\\widetilde", tag:"mover", output:"\u02DC", ttype:UNARY, acc:true}, -{input:"\\bar", tag:"mover", output:"\u203E", ttype:UNARY, acc:true}, -{input:"\\overbrace", tag:"mover", output:"\u23B4", ttype:UNARY, acc:true}, -{input:"\\overline", tag:"mover", output:"\u00AF", ttype:UNARY, acc:true}, -{input:"\\underbrace", tag:"munder", output:"\u23B5", ttype:UNARY, acc:true}, -{input:"\\underline", tag:"munder", output:"\u00AF", ttype:UNARY, acc:true}, -//{input:"underline", tag:"munder", output:"\u0332", ttype:UNARY, acc:true}, - -//typestyles and fonts -{input:"\\displaystyle",tag:"mstyle",atname:"displaystyle",atval:"true", ttype:UNARY}, -{input:"\\textstyle",tag:"mstyle",atname:"displaystyle",atval:"false", ttype:UNARY}, -{input:"\\scriptstyle",tag:"mstyle",atname:"scriptlevel",atval:"1", ttype:UNARY}, -{input:"\\scriptscriptstyle",tag:"mstyle",atname:"scriptlevel",atval:"2", ttype:UNARY}, -{input:"\\textrm", tag:"mstyle", output:"\\mathrm", ttype: DEFINITION}, -{input:"\\mathbf", tag:"mstyle", atname:"mathvariant", atval:"bold", ttype:UNARY}, -{input:"\\textbf", tag:"mstyle", atname:"mathvariant", atval:"bold", ttype:UNARY}, -{input:"\\mathit", tag:"mstyle", atname:"mathvariant", atval:"italic", ttype:UNARY}, -{input:"\\textit", tag:"mstyle", atname:"mathvariant", atval:"italic", ttype:UNARY}, -{input:"\\mathtt", tag:"mstyle", atname:"mathvariant", atval:"monospace", ttype:UNARY}, -{input:"\\texttt", tag:"mstyle", atname:"mathvariant", atval:"monospace", ttype:UNARY}, -{input:"\\mathsf", tag:"mstyle", atname:"mathvariant", atval:"sans-serif", ttype:UNARY}, -{input:"\\mathbb", tag:"mstyle", atname:"mathvariant", atval:"double-struck", ttype:UNARY, codes:AMbbb}, -{input:"\\mathcal",tag:"mstyle", atname:"mathvariant", atval:"script", ttype:UNARY, codes:AMcal}, -{input:"\\mathfrak",tag:"mstyle",atname:"mathvariant", atval:"fraktur",ttype:UNARY, codes:AMfrk} -]; - -function compareNames(s1,s2) { - if (s1.input > s2.input) return 1 - else return -1; -} - -var AMnames = []; //list of input symbols - -function AMinitSymbols() { - AMsymbols.sort(compareNames); - for (i=0; i=n where str appears or would be inserted -// assumes arr is sorted - if (n==0) { - var h,m; - n = -1; - h = arr.length; - while (n+1> 1; - if (arr[m]=str -} - -function AMgetSymbol(str) { -//return maximal initial substring of str that appears in names -//return null if there is none - var k = 0; //new pos - var j = 0; //old pos - var mk; //match pos - var st; - var tagst; - var match = ""; - var more = true; - for (var i=1; i<=str.length && more; i++) { - st = str.slice(0,i); //initial substring of length i - j = k; - k = AMposition(AMnames, st, j); - if (k=AMnames[k]; - } - AMpreviousSymbol=AMcurrentSymbol; - if (match!=""){ - AMcurrentSymbol=AMsymbols[mk].ttype; - return AMsymbols[mk]; - } - AMcurrentSymbol=CONST; - k = 1; - st = str.slice(0,1); //take 1 character - if ("0"<=st && st<="9") tagst = "mn"; - else tagst = (("A">st || st>"Z") && ("a">st || st>"z")?"mo":"mi"); -/* -// Commented out by DRW (not fully understood, but probably to do with -// use of "/" as an INFIX version of "\\frac", which we don't want): -//} -//if (st=="-" && AMpreviousSymbol==INFIX) { -// AMcurrentSymbol = INFIX; //trick "/" into recognizing "-" on second parse -// return {input:st, tag:tagst, output:st, ttype:UNARY, func:true}; -//} -*/ - return {input:st, tag:tagst, output:st, ttype:CONST}; -} - - -/*Parsing ASCII math expressions with the following grammar -v ::= [A-Za-z] | greek letters | numbers | other constant symbols -u ::= sqrt | text | bb | other unary symbols for font commands -b ::= frac | root | stackrel binary symbols -l ::= { | \left left brackets -r ::= } | \right right brackets -S ::= v | lEr | uS | bSS Simple expression -I ::= S_S | S^S | S_S^S | S Intermediate expression -E ::= IE | I/I Expression -Each terminal symbol is translated into a corresponding mathml node.*/ - -var AMpreviousSymbol,AMcurrentSymbol; - -function AMparseSexpr(str) { //parses str and returns [node,tailstr,(node)tag] - var symbol, node, result, result2, i, st,// rightvert = false, - newFrag = document.createDocumentFragment(); - str = AMremoveCharsAndBlanks(str,0); - symbol = AMgetSymbol(str); //either a token or a bracket or empty - if (symbol == null || symbol.ttype == RIGHTBRACKET) - return [null,str,null]; - if (symbol.ttype == DEFINITION) { - str = symbol.output+AMremoveCharsAndBlanks(str,symbol.input.length); - symbol = AMgetSymbol(str); - if (symbol == null || symbol.ttype == RIGHTBRACKET) - return [null,str,null]; - } - str = AMremoveCharsAndBlanks(str,symbol.input.length); - switch (symbol.ttype) { - case SPACE: - node = AMcreateElementMathML(symbol.tag); - node.setAttribute(symbol.atname,symbol.atval); - return [node,str,symbol.tag]; - case UNDEROVER: - if (isIE) { - if (symbol.input.substr(0,4) == "\\big") { // botch for missing symbols - str = "\\"+symbol.input.substr(4)+str; // make \bigcup = \cup etc. - symbol = AMgetSymbol(str); - symbol.ttype = UNDEROVER; - str = AMremoveCharsAndBlanks(str,symbol.input.length); - } - } - return [AMcreateMmlNode(symbol.tag, - document.createTextNode(symbol.output)),str,symbol.tag]; - case CONST: - var output = symbol.output; - if (isIE) { - if (symbol.input == "'") - output = "\u2032"; - else if (symbol.input == "''") - output = "\u2033"; - else if (symbol.input == "'''") - output = "\u2033\u2032"; - else if (symbol.input == "''''") - output = "\u2033\u2033"; - else if (symbol.input == "\\square") - output = "\u25A1"; // same as \Box - else if (symbol.input.substr(0,5) == "\\frac") { - // botch for missing fractions - var denom = symbol.input.substr(6,1); - if (denom == "5" || denom == "6") { - str = symbol.input.replace(/\\frac/,"\\frac ")+str; - return [node,str,symbol.tag]; - } - } - } - node = AMcreateMmlNode(symbol.tag,document.createTextNode(output)); - return [node,str,symbol.tag]; - case LONG: // added by DRW - node = AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)); - node.setAttribute("minsize","1.5"); - node.setAttribute("maxsize","1.5"); - node = AMcreateMmlNode("mover",node); - node.appendChild(AMcreateElementMathML("mspace")); - return [node,str,symbol.tag]; - case STRETCHY: // added by DRW - if (isIE && symbol.input == "\\backslash") - symbol.output = "\\"; // doesn't expand, but then nor does "\u2216" - node = AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)); - if (symbol.input == "|" || symbol.input == "\\vert" || - symbol.input == "\\|" || symbol.input == "\\Vert") { - node.setAttribute("lspace","0em"); - node.setAttribute("rspace","0em"); - } - node.setAttribute("maxsize",symbol.atval); // don't allow to stretch here - if (symbol.rtag != null) - return [node,str,symbol.rtag]; - else - return [node,str,symbol.tag]; - case BIG: // added by DRW - var atval = symbol.atval; - if (isIE) - atval = symbol.ieval; - symbol = AMgetSymbol(str); - if (symbol == null) - return [null,str,null]; - str = AMremoveCharsAndBlanks(str,symbol.input.length); - node = AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output)); - if (isIE) { // to get brackets to expand - var space = AMcreateElementMathML("mspace"); - space.setAttribute("height",atval+"ex"); - node = AMcreateMmlNode("mrow",node); - node.appendChild(space); - } else { // ignored in IE - node.setAttribute("minsize",atval); - node.setAttribute("maxsize",atval); - } - return [node,str,symbol.tag]; - case LEFTBRACKET: //read (expr+) - if (symbol.input == "\\left") { // left what? - symbol = AMgetSymbol(str); - if (symbol != null) { - if (symbol.input == ".") - symbol.invisible = true; - str = AMremoveCharsAndBlanks(str,symbol.input.length); - } - } - result = AMparseExpr(str,true,false); - if (symbol==null || - (typeof symbol.invisible == "boolean" && symbol.invisible)) - node = AMcreateMmlNode("mrow",result[0]); - else { - node = AMcreateMmlNode("mo",document.createTextNode(symbol.output)); - node = AMcreateMmlNode("mrow",node); - node.appendChild(result[0]); - } - return [node,result[1],result[2]]; - case MATRIX: //read (expr+) - if (symbol.input == "\\begin{array}") { - var mask = ""; - symbol = AMgetSymbol(str); - str = AMremoveCharsAndBlanks(str,0); - if (symbol == null) - mask = "l"; - else { - str = AMremoveCharsAndBlanks(str,symbol.input.length); - if (symbol.input != "{") - mask = "l"; - else do { - symbol = AMgetSymbol(str); - if (symbol != null) { - str = AMremoveCharsAndBlanks(str,symbol.input.length); - if (symbol.input != "}") - mask = mask+symbol.input; - } - } while (symbol != null && symbol.input != "" && symbol.input != "}"); - } - result = AMparseExpr("{"+str,true,true); -// if (result[0]==null) return [AMcreateMmlNode("mo", -// document.createTextNode(symbol.input)),str]; - node = AMcreateMmlNode("mtable",result[0]); - mask = mask.replace(/l/g,"left "); - mask = mask.replace(/r/g,"right "); - mask = mask.replace(/c/g,"center "); - node.setAttribute("columnalign",mask); - node.setAttribute("displaystyle","false"); - if (isIE) - return [node,result[1],null]; -// trying to get a *little* bit of space around the array -// (IE already includes it) - var lspace = AMcreateElementMathML("mspace"); - lspace.setAttribute("width","0.167em"); - var rspace = AMcreateElementMathML("mspace"); - rspace.setAttribute("width","0.167em"); - var node1 = AMcreateMmlNode("mrow",lspace); - node1.appendChild(node); - node1.appendChild(rspace); - return [node1,result[1],null]; - } else { // eqnarray - result = AMparseExpr("{"+str,true,true); - node = AMcreateMmlNode("mtable",result[0]); - if (isIE) - node.setAttribute("columnspacing","0.25em"); // best in practice? - else - node.setAttribute("columnspacing","0.167em"); // correct (but ignored?) - node.setAttribute("columnalign","right center left"); - node.setAttribute("displaystyle","true"); - node = AMcreateMmlNode("mrow",node); - return [node,result[1],null]; - } - case TEXT: - if (str.charAt(0)=="{") i=str.indexOf("}"); - else i = 0; - if (i==-1) - i = str.length; - st = str.slice(1,i); - if (st.charAt(0) == " ") { - node = AMcreateElementMathML("mspace"); - node.setAttribute("width","0.33em"); // was 1ex - newFrag.appendChild(node); - } - newFrag.appendChild( - AMcreateMmlNode(symbol.tag,document.createTextNode(st))); - if (st.charAt(st.length-1) == " ") { - node = AMcreateElementMathML("mspace"); - node.setAttribute("width","0.33em"); // was 1ex - newFrag.appendChild(node); - } - str = AMremoveCharsAndBlanks(str,i+1); - return [AMcreateMmlNode("mrow",newFrag),str,null]; - case UNARY: - result = AMparseSexpr(str); - if (result[0]==null) return [AMcreateMmlNode(symbol.tag, - document.createTextNode(symbol.output)),str]; - if (typeof symbol.func == "boolean" && symbol.func) { // functions hack - st = str.charAt(0); -// if (st=="^" || st=="_" || st=="/" || st=="|" || st==",") { - if (st=="^" || st=="_" || st==",") { - return [AMcreateMmlNode(symbol.tag, - document.createTextNode(symbol.output)),str,symbol.tag]; - } else { - node = AMcreateMmlNode("mrow", - AMcreateMmlNode(symbol.tag,document.createTextNode(symbol.output))); - if (isIE) { - var space = AMcreateElementMathML("mspace"); - space.setAttribute("width","0.167em"); - node.appendChild(space); - } - node.appendChild(result[0]); - return [node,result[1],symbol.tag]; - } - } - if (symbol.input == "\\sqrt") { // sqrt - if (isIE) { // set minsize, for \surd - var space = AMcreateElementMathML("mspace"); - space.setAttribute("height","1.2ex"); - space.setAttribute("width","0em"); // probably no effect - node = AMcreateMmlNode(symbol.tag,result[0]) -// node.setAttribute("minsize","1"); // ignored -// node = AMcreateMmlNode("mrow",node); // hopefully unnecessary - node.appendChild(space); - return [node,result[1],symbol.tag]; - } else - return [AMcreateMmlNode(symbol.tag,result[0]),result[1],symbol.tag]; - } else if (typeof symbol.acc == "boolean" && symbol.acc) { // accent - node = AMcreateMmlNode(symbol.tag,result[0]); - var output = symbol.output; - if (isIE) { - if (symbol.input == "\\hat") - output = "\u0302"; - else if (symbol.input == "\\widehat") - output = "\u005E"; - else if (symbol.input == "\\bar") - output = "\u00AF"; - else if (symbol.input == "\\grave") - output = "\u0300"; - else if (symbol.input == "\\tilde") - output = "\u0303"; - } - var node1 = AMcreateMmlNode("mo",document.createTextNode(output)); - if (symbol.input == "\\vec" || symbol.input == "\\check") - // don't allow to stretch - node1.setAttribute("maxsize","1.2"); - // why doesn't "1" work? \vec nearly disappears in firefox - if (isIE && symbol.input == "\\bar") - node1.setAttribute("maxsize","0.5"); - if (symbol.input == "\\underbrace" || symbol.input == "\\underline") - node1.setAttribute("accentunder","true"); - else - node1.setAttribute("accent","true"); - node.appendChild(node1); - if (symbol.input == "\\overbrace" || symbol.input == "\\underbrace") - node.ttype = UNDEROVER; - return [node,result[1],symbol.tag]; - } else { // font change or displaystyle command - if (!isIE && typeof symbol.codes != "undefined") { - for (i=0; i64 && st.charCodeAt(j)<91) newst = newst + - String.fromCharCode(symbol.codes[st.charCodeAt(j)-65]); - else newst = newst + st.charAt(j); - if (result[0].nodeName=="mi") - result[0]=AMcreateElementMathML("mo"). - appendChild(document.createTextNode(newst)); - else result[0].replaceChild(AMcreateElementMathML("mo"). - appendChild(document.createTextNode(newst)),result[0].childNodes[i]); - } - } - node = AMcreateMmlNode(symbol.tag,result[0]); - node.setAttribute(symbol.atname,symbol.atval); - if (symbol.input == "\\scriptstyle" || - symbol.input == "\\scriptscriptstyle") - node.setAttribute("displaystyle","false"); - return [node,result[1],symbol.tag]; - } - case BINARY: - result = AMparseSexpr(str); - if (result[0]==null) return [AMcreateMmlNode("mo", - document.createTextNode(symbol.input)),str,null]; - result2 = AMparseSexpr(result[1]); - if (result2[0]==null) return [AMcreateMmlNode("mo", - document.createTextNode(symbol.input)),str,null]; - if (symbol.input=="\\root" || symbol.input=="\\stackrel") - newFrag.appendChild(result2[0]); - newFrag.appendChild(result[0]); - if (symbol.input=="\\frac") newFrag.appendChild(result2[0]); - return [AMcreateMmlNode(symbol.tag,newFrag),result2[1],symbol.tag]; - case INFIX: - str = AMremoveCharsAndBlanks(str,symbol.input.length); - return [AMcreateMmlNode("mo",document.createTextNode(symbol.output)), - str,symbol.tag]; - default: - return [AMcreateMmlNode(symbol.tag, //its a constant - document.createTextNode(symbol.output)),str,symbol.tag]; - } -} - -function AMparseIexpr(str) { - var symbol, sym1, sym2, node, result, tag, underover; - str = AMremoveCharsAndBlanks(str,0); - sym1 = AMgetSymbol(str); - result = AMparseSexpr(str); - node = result[0]; - str = result[1]; - tag = result[2]; - symbol = AMgetSymbol(str); - if (symbol.ttype == INFIX) { - str = AMremoveCharsAndBlanks(str,symbol.input.length); - result = AMparseSexpr(str); - if (result[0] == null) // show box in place of missing argument - result[0] = AMcreateMmlNode("mo",document.createTextNode("\u25A1")); - str = result[1]; - tag = result[2]; - if (symbol.input == "_" || symbol.input == "^") { - sym2 = AMgetSymbol(str); - tag = null; // no space between x^2 and a following sin, cos, etc. -// This is for \underbrace and \overbrace - underover = ((sym1.ttype == UNDEROVER) || (node.ttype == UNDEROVER)); -// underover = (sym1.ttype == UNDEROVER); - if (symbol.input == "_" && sym2.input == "^") { - str = AMremoveCharsAndBlanks(str,sym2.input.length); - var res2 = AMparseSexpr(str); - str = res2[1]; - tag = res2[2]; // leave space between x_1^2 and a following sin etc. - node = AMcreateMmlNode((underover?"munderover":"msubsup"),node); - node.appendChild(result[0]); - node.appendChild(res2[0]); - } else if (symbol.input == "_") { - node = AMcreateMmlNode((underover?"munder":"msub"),node); - node.appendChild(result[0]); - } else { - node = AMcreateMmlNode((underover?"mover":"msup"),node); - node.appendChild(result[0]); - } - node = AMcreateMmlNode("mrow",node); // so sum does not stretch - } else { - node = AMcreateMmlNode(symbol.tag,node); - if (symbol.input == "\\atop" || symbol.input == "\\choose") - node.setAttribute("linethickness","0ex"); - node.appendChild(result[0]); - if (symbol.input == "\\choose") - node = AMcreateMmlNode("mfenced",node); - } - } - return [node,str,tag]; -} - -function AMparseExpr(str,rightbracket,matrix) { - var symbol, node, result, i, tag, - newFrag = document.createDocumentFragment(); - do { - str = AMremoveCharsAndBlanks(str,0); - result = AMparseIexpr(str); - node = result[0]; - str = result[1]; - tag = result[2]; - symbol = AMgetSymbol(str); - if (node!=undefined) { - if ((tag == "mn" || tag == "mi") && symbol!=null && - typeof symbol.func == "boolean" && symbol.func) { - // Add space before \sin in 2\sin x or x\sin x - var space = AMcreateElementMathML("mspace"); - space.setAttribute("width","0.167em"); - node = AMcreateMmlNode("mrow",node); - node.appendChild(space); - } - newFrag.appendChild(node); - } - } while ((symbol.ttype != RIGHTBRACKET) - && symbol!=null && symbol.output!=""); - tag = null; - if (symbol.ttype == RIGHTBRACKET) { - if (symbol.input == "\\right") { // right what? - str = AMremoveCharsAndBlanks(str,symbol.input.length); - symbol = AMgetSymbol(str); - if (symbol != null && symbol.input == ".") - symbol.invisible = true; - if (symbol != null) - tag = symbol.rtag; - } - if (symbol!=null) - str = AMremoveCharsAndBlanks(str,symbol.input.length); // ready to return - var len = newFrag.childNodes.length; - if (matrix && - len>0 && newFrag.childNodes[len-1].nodeName == "mrow" && len>1 && - newFrag.childNodes[len-2].nodeName == "mo" && - newFrag.childNodes[len-2].firstChild.nodeValue == "&") { //matrix - var pos = []; // positions of ampersands - var m = newFrag.childNodes.length; - for (i=0; matrix && i -&-&...&-&- - n = node.childNodes.length; - k = 0; - for (j=0; j2) { - newFrag.removeChild(newFrag.firstChild); //remove - newFrag.removeChild(newFrag.firstChild); //remove & - } - table.appendChild(AMcreateMmlNode("mtr",row)); - } - return [table,str]; - } - if (typeof symbol.invisible != "boolean" || !symbol.invisible) { - node = AMcreateMmlNode("mo",document.createTextNode(symbol.output)); - newFrag.appendChild(node); - } - } - return [newFrag,str,tag]; -} - -function AMparseMath(str) { - var result, node = AMcreateElementMathML("mstyle"); - if (mathcolor != "") node.setAttribute("mathcolor",mathcolor); - if (mathfontfamily != "") node.setAttribute("fontfamily",mathfontfamily); - node.appendChild(AMparseExpr(str.replace(/^\s+/g,""),false,false)[0]); - node = AMcreateMmlNode("math",node); - if (showasciiformulaonhover) //fixed by djhsu so newline - node.setAttribute("title",str.replace(/\s+/g," "));//does not show in Gecko - if (mathfontfamily != "" && (isIE || mathfontfamily != "serif")) { - var fnode = AMcreateElementXHTML("font"); - fnode.setAttribute("face",mathfontfamily); - fnode.appendChild(node); - return fnode; - } - return node; -} - -function AMstrarr2docFrag(arr, linebreaks) { - var newFrag=document.createDocumentFragment(); - var expr = false; - for (var i=0; i1 || mtch) { - if (checkForMathML) { - checkForMathML = false; - var nd = AMisMathMLavailable(); - AMnoMathML = nd != null; - if (AMnoMathML && notifyIfNoMathML) - if (alertIfNoMathML) - alert("To view the ASCIIMathML notation use Internet Explorer 6 +\nMathPlayer (free from www.dessci.com)\n\ - or Firefox/Mozilla/Netscape"); - else AMbody.insertBefore(nd,AMbody.childNodes[0]); - } - if (!AMnoMathML) { - frg = AMstrarr2docFrag(arr,n.nodeType==8); - var len = frg.childNodes.length; - n.parentNode.replaceChild(frg,n); - return len-1; - } else return 0; - } - } - } else return 0; - } else if (n.nodeName!="math") { - for (i=0; i"); - document.write(""); -} - -// GO1.1 Generic onload by Brothercake -// http://www.brothercake.com/ -//onload function (replaces the onload="translate()" in the tag) -function generic() -{ - translate(); -}; -//setup onload function -if(typeof window.addEventListener != 'undefined') -{ - //.. gecko, safari, konqueror and standard - window.addEventListener('load', generic, false); -} -else if(typeof document.addEventListener != 'undefined') -{ - //.. opera 7 - document.addEventListener('load', generic, false); -} -else if(typeof window.attachEvent != 'undefined') -{ - //.. win/ie - window.attachEvent('onload', generic); -} -//** remove this condition to degrade older browsers -else -{ - //.. mac/ie5 and anything else that gets this far - //if there's an existing onload function - if(typeof window.onload == 'function') - { - //store it - var existing = onload; - //add new onload handler - window.onload = function() - { - //call existing onload function - existing(); - //call generic onload function - generic(); - }; - } - else - { - //setup onload function - window.onload = generic; - } -} diff --git a/source-builder/sb/asciidoc/examples/website/README-website.txt b/source-builder/sb/asciidoc/examples/website/README-website.txt deleted file mode 100644 index 88259c8..0000000 --- a/source-builder/sb/asciidoc/examples/website/README-website.txt +++ /dev/null @@ -1,29 +0,0 @@ -AsciiDoc Website -================ - -The AsciiDoc website source is included in the AsciiDoc distribution -(in `./examples/website/`) as an example of using AsciiDoc to build a -website. - -A simple shell script (`./examples/website/build-website.sh`) will -build the site's web pages -- just set the `LAYOUT` variable to the -desired layout. - -Website Layouts ---------------- -The website layout is determined by the layout configuration file -(`layout1.conf` or `layout2.conf`) and corresponding layout CSS file -(`layout1.css` or `layout2.css`). The example website comes with the -following layouts: - -[width="80%",cols="1,4",options="header"] -|==================================================================== -|Layout | Description -|layout1 | Table based layout -|layout2 | CSS based layout (this is the default layout) -|==================================================================== - -The default tables based layout (layout1) works with most modern -browsers. - -NOTE: The simulated frames layout (layout2) does not work with IE6. diff --git a/source-builder/sb/asciidoc/examples/website/README.txt b/source-builder/sb/asciidoc/examples/website/README.txt deleted file mode 100644 index b53c714..0000000 --- a/source-builder/sb/asciidoc/examples/website/README.txt +++ /dev/null @@ -1,35 +0,0 @@ -AsciiDoc README File -==================== - -Prerequisites -------------- -AsciiDoc is written in Python so you need a Python interpreter -(version 2.4 or later) to execute asciidoc(1). Python is installed by -default in most Linux distributions. You can download Python from the -official Python website http://www.python.org. - - -Obtaining AsciiDoc ------------------- -Documentation and installation instructions are on the AsciiDoc -website http://www.methods.co.nz/asciidoc/ - - -Tools ------ -Current AsciiDoc version tested on Xubuntu Linux 10.04 with: - -- Python 2.6.5 -- DocBook XSL Stylesheets 1.76.1 -- xsltproc (libxml 20706, libxslt 10126 and libexslt 815). -- w3m 0.5.2 -- dblatex 0.3 -- FOP 0.95 -- A-A-P 1.091 - - -Copying -------- -Copyright (C) 2002-2011 Stuart Rackham. Free use of this software is -granted under the terms of the GNU General Public License version 2 -(GPLv2). diff --git a/source-builder/sb/asciidoc/examples/website/a2x.1.txt b/source-builder/sb/asciidoc/examples/website/a2x.1.txt deleted file mode 100644 index 56cc956..0000000 --- a/source-builder/sb/asciidoc/examples/website/a2x.1.txt +++ /dev/null @@ -1,358 +0,0 @@ -A2X(1) -====== -:doctype: manpage - - -NAME ----- -a2x - A toolchain manager for AsciiDoc (converts Asciidoc text files to other - file formats) - - -SYNOPSIS --------- -*a2x* ['OPTIONS'] 'SOURCE_FILE' - - -DESCRIPTION ------------ -A DocBook toolchain manager that translates an AsciiDoc text file -'SOURCE_FILE' to PDF, EPUB, DVI, PS, LaTeX, XHTML (single page or -chunked), man page, HTML Help or plain text formats using -'asciidoc(1)' and other applications (see <>). -'SOURCE_FILE' can also be a DocBook file with an .xml extension. - - -OPTIONS -------- -*-a, --attribute*='ATTRIBUTE':: - Set asciidoc(1) attribute value (shortcut for *--asciidoc-opts*='"-a - ATTRIBUTE"' option). - This option may be specified more than once. - -*--asciidoc-opts*='ASCIIDOC_OPTS':: - Additional 'asciidoc(1)' options. - This option may be specified more than once. - -*--conf-file*='CONF_FILE':: - Load configuration file. See <>. - -*-D, --destination-dir*='DESTINATION_DIR':: - Output directory. Defaults to 'SOURCE_FILE' directory. - -*-d, --doctype*='DOCTYPE':: - DocBook document type: 'article', 'manpage' or 'book'. Default - document type is 'article' unless the format is 'manpage' (in which - case it defaults to 'manpage'). - -*-b, --backend*='BACKEND':: - 'BACKEND' is the name of an installed backend plugin. When this - option is specified 'a2x' attempts load a file name 'a2x-backend.py' - from the 'BACKEND' plugin directory It then converts the - 'SOURCE_FILE' to a 'BACKEND' formatted output file using a global - function defined in 'a2x-backend.py' called 'to_BACKEND'. - -*-f, --format*='FORMAT':: - Output formats: 'chunked', 'docbook', 'dvi', 'epub', 'htmlhelp', - 'manpage', 'pdf' (default), 'ps', 'tex', 'text', 'xhtml'. - The AsciiDoc 'a2x-format' attribute value is set to 'FORMAT'. - -*-h, --help*:: - Print command-line syntax and program options to stdout. - -*--icons*:: - Use admonition or navigation icon images in output documents. The - default behavior is to use text in place of icons. - -*--icons-dir*='PATH':: - A path (relative to output files) containing admonition - and navigation icons. Defaults to `images/icons`. - The '--icons' option is implicit if this option is used. - -*-k, --keep-artifacts*:: - Do not delete temporary build files. - -*--lynx*:: - Use 'lynx(1)' to generate text formatted output. The default - behavior is to use 'w3m(1)'. - -*-L, --no-xmllint*:: - Do not check asciidoc output with 'xmllint(1)'. - -*---epubcheck*:: - Check EPUB output with 'epubcheck(1)'. - -*-n, --dry-run*:: - Do not do anything just print what would have been done. - -*-r, --resource*='RESOURCE_SPEC':: - Specify a resource. This option may be specified more than once. - See the <> section for more details. - -*-m, --resource-manifest*='FILE':: - 'FILE' contains a list resources (one per line). Manifest 'FILE' - entries are formatted just like *--resource* option arguments. - Environment variables and tilde home directories are allowed. - -*--stylesheet*='STYLESHEET':: - A space delimited list of one or more CSS stylesheet file names that - are used to style HTML output generated by DocBook XSL Stylesheets. - Defaults to 'docbook-xsl.css'. The stylesheets are processed in - list order. The stylesheets must reside in a valid <> location. Applies to HTML formats: 'xhtml', 'epub', - 'chunked', 'htmlhelp' formats. - -*-v, --verbose*:: - Print operational details to stderr. - A second *-v* option applies the verbose option to toolchain commands. - -*--version*:: - Print program version to stdout. - -*--xsltproc-opts*='XSLTPROC_OPTS':: - Additional 'xsltproc(1)' options. - This option may be specified more than once. - -*--xsl-file*='XSL_FILE':: - Override the built-in XSL stylesheet with the custom XSL stylesheet - 'XSL_FILE'. - -*--fop*:: - Use FOP to generate PDFs. The default behavior is to use - 'dblatex(1)'. The '--fop' option is implicit if this option is - used. - -*--fop-opts*='FOP_OPTS':: - Additional 'fop(1)' options. If this option is specified FOP is used - to generate PDFs. - This option may be specified more than once. - -*--dblatex-opts*='DBLATEX_OPTS':: - Additional 'dblatex(1)' options. - This option may be specified more than once. - -*--backend-opts*='BACKEND_OPTS':: - Options for the backend plugin specified by the '--backend' option. - This option may be specified more than once. - -Options can also be set in the AsciiDoc source file. If 'SOURCE_FILE' -contains a comment line beginning with *// a2x:* then the remainder of -the line will be treated as 'a2x' command-line options. For example: - - // a2x default options. - // a2x: -dbook --epubcheck - // Suppress revision history in dblatex outputs. - // a2x: --dblatex-opts "-P latex.output.revhistory=0" - -- Options spanning multiple such comment lines will be concatenated. -- Zero or more white space characters can appear between the leading - *//* and *a2x:*. -- Command-line options take precedence over options set in the source - file. - - -[[X4]] -OUTPUT FILES ------------- -Output files are written to the directory specified by the -*--destination-dir* option. If no *--destination-dir* option is set -output files are written to the 'SOURCE_FILE' directory. - -Output files have the same name as the 'SOURCE_FILE' but with an -appropriate file name extension: `.html` for 'xhtml'; `.epub` for -'epub'; `.hhp` for 'htmlhelp'; `.pdf` for 'pdf'; `.text` for 'text', -`.xml` for 'docbook'. By convention manpages have no `.man` extension -(man page section number only). Chunked HTML directory names have a -`.chunked` extension; chunked HTML Help directory names have a -`.htmlhelp` extension. - -Same named existing files are overwritten. - -In addition to generating HTML files the 'xhtml', 'epub', 'chunked' -and 'htmlhelp' formats ensure <> are copied to -their correct destination directory locations. - - -[[X3]] -RESOURCES ---------- -Resources are files (typically CSS and images) that are required by -HTML based outputs ('xhtml', 'epub', 'chunked', 'htmlhelp' formats). -'a2x' scans the generated HTML files and builds a list of required CSS -and image files. Additional resource files can be specified explicitly -using the *--resource* option. - -'a2x' searches for resource files in the following locations in the -following order: - -. The 'SOURCE_FILE' directory. -. Resource directories specified by the *--resource* option (searched - recursively). -. Resource directories specified by the *--resource-manifest* option - (searched recursively in the order they appear in the manifest - file). -. The stock `images` and `stylesheets` directories in the - 'asciidoc(1)' configuration files directories (searched - recursively). -. The destination directory. - -When a resource file is found it is copied to the correct relative -destination directory. Missing destination sub-directories are created -automatically. - -There are two distinct mechanisms for specifying additional resources: - -. A resource directory which will be searched recursively for missing - resource files. -. A resource file which will be copied to the output destination - directory. - -Resources are specified with *--resource* option values which can be -one of the following formats: - - - [=] - .= - -Where: - -``:: - Specifies a directory (absolute or relative to the 'SOURCE_FILE') - which is searched recursively for missing resource files. To - eliminate ambiguity the `` name should end with a - directory separator character. - -``:: - Specifies a resource file (absolute or relative to the - 'SOURCE_FILE') which will be copied to ``. If - `` is not specified then it is the same as the - ``. - -``:: - Specifies the destination of the copied source file. The - `` path is relative to the destination directory - (absolute paths are not allowed). The location of the destination - directory depends on the output 'FORMAT' (see the <> section for details): - - chunked, htmlhelp;; The chunked output directory. - epub;; The archived `OEBPS` directory. - xhtml;; The output *DESTINATION_DIR*. - -`.=`:: - When adding resources to EPUB files the mimetype is inferred from - the `` extension, if the mimetype cannot be - guessed an error occurs. The `.=` resource syntax can - be used to explicitly set mimetypes. `` is the file name - extension, `` is the corresponding MIME type. - -Resource option examples: - - --resource ../images/ - --resource doc/README.txt=README.txt - --resource ~/images/tiger.png=images/tiger.png - --resource .ttf=application/x-font-ttf - - -EXAMPLES --------- -`a2x -f pdf doc/source-highlight-filter.txt`:: - Generates `doc/source-highlight-filter.pdf` file. - -`a2x -f xhtml -D ../doc --icons -r ../images/ team.txt`:: - Creates HTML file `../doc/team.html`, uses admonition icons and - recursively searches the `../images/` directory for any missing - resources. - -`a2x -f manpage doc/asciidoc.1.txt`:: - Generate `doc/asciidoc.1` manpage. - - -[[X1]] -REQUISITES ----------- -'a2x' uses the following programs: - -- *Asciidoc*: - http://www.methods.co.nz/asciidoc/ -- *xsltproc*: (all formats except text): - http://xmlsoft.org/XSLT/ -- *DocBook XSL Stylesheets* (all formats except text): - http://docbook.sourceforge.net/projects/xsl/ -- *dblatex* (pdf, dvi, ps, tex formats): - http://dblatex.sourceforge.net/ -- *FOP* (pdf format -- alternative PDF file generator): - http://xmlgraphics.apache.org/fop/ -- *w3m* (text format): - http://w3m.sourceforge.net/index.en.html -- *Lynx* (text format -- alternative text file generator): - http://lynx.isc.org/ -- *epubcheck* (epub format -- EPUB file validator): - http://code.google.com/p/epubcheck/ - -See also the latest README file. - - -[[X2]] -CONF FILES ----------- -A configuration file contains executable Python code that overrides -the global configuration parameters in `a2x.py`. Optional configuration -files are loaded in the following order: - -. `a2x.conf` from the directory containing the 'a2x.py' executable. -. `a2x.conf` from the AsciiDoc global configuration directory. Skip - this step if we are executing a locally installed (non system wide) - copy. -. `a2x.conf` from the AsciiDoc `$HOME/.asciidoc` configuration - directory. -. The 'CONF_FILE' specified in the '--conf-file' option. - -Here are the default configuration file option values: - ---------------------------------------------------------------------- -# Optional environment variable dictionary passed to -# executing programs. If set to None the existing -# environment is used. -ENV = None - -# External executables. -ASCIIDOC = 'asciidoc' -XSLTPROC = 'xsltproc' -DBLATEX = 'dblatex' # pdf generation. -FOP = 'fop' # pdf generation (--fop option). -W3M = 'w3m' # text generation. -LYNX = 'lynx' # text generation (if no w3m). -XMLLINT = 'xmllint' # Set to '' to disable. -EPUBCHECK = 'epubcheck' # Set to '' to disable. -# External executable default options. -ASCIIDOC_OPTS = '' -DBLATEX_OPTS = '' -FOP_OPTS = '' -XSLTPROC_OPTS = '' ---------------------------------------------------------------------- - - -BUGS ----- -See the AsciiDoc distribution BUGS file. - - -AUTHOR ------- -a2x was originally written by Stuart Rackham. Many people have -contributed to it. - - -RESOURCES ---------- -SourceForge: http://sourceforge.net/projects/asciidoc/ - -Main web site: http://www.methods.co.nz/asciidoc/ - - -COPYING -------- -Copyright \(C) 2002-2011 Stuart Rackham. Free use of this software is -granted under the terms of the MIT license. - diff --git a/source-builder/sb/asciidoc/examples/website/asciidoc-docbook-xsl.txt b/source-builder/sb/asciidoc/examples/website/asciidoc-docbook-xsl.txt deleted file mode 100644 index fd71e63..0000000 --- a/source-builder/sb/asciidoc/examples/website/asciidoc-docbook-xsl.txt +++ /dev/null @@ -1,65 +0,0 @@ -AsciiDoc DocBook XSL Stylesheets Notes -====================================== - -Output file customisation is achieved by tweaking the DocBook XSL -stylesheets. I've tried to keep customization to a minimum and -confine it to the separate XSL driver files in the distribution -`./docbook-xsl/` directory (see the User Guide for details). - -To polish some rough edges I've written some patches for the DocBook -XSL stylesheets -- you don't need them but they're documented below -and included in the distribution `./docbook-xsl/` directory. - - -Manually upgrading Debian to the latest DocBook XSL stylesheets ---------------------------------------------------------------- -The DocBook XSL Stylesheets distribution is just a directory full of -text files and you can switch between releases by changing the -directory name in the system XML catalog. - -To upgrade to the latest docbook-xsl stylesheets without having to -wait for the Debian `docbook-xsl` package: - -- Download the latest docbook-xsl tarball from - http://sourceforge.net/projects/docbook/. Bleeding edge snapshots - can be found at http://docbook.sourceforge.net/snapshots/ - -- Unzip the tarball to `/usr/share/xml/docbook/stylesheet/`: - - $ cd /usr/share/xml/docbook/stylesheet - $ sudo tar -xzf /tmp/docbook-xsl-1.72.0.tar.gz - -- Edit `/etc/xml/docbook-xsl.xml` catalog and replace occurences of - the current stylesheets directory with the new one (in our example - it would be `/usr/share/xml/docbook/stylesheet/docbook-xsl-1.72.0`. - - $ cd /etc/xml/ - $ sudo cp -p docbook-xsl.xml docbook-xsl.xml.ORIG - $ sudo vi docbook-xsl.xml - - -Customizing Generated Text --------------------------- -An example -http://www.sagehill.net/docbookxsl/CustomGentext.html#CustomGenText[DocBook -XSL Stylesheets customization file] for formatting chapter titles -without chapter numbering. - -.custom-chapter.xml ---------------------------------------------------------------------- - - - - - - - - ---------------------------------------------------------------------- - -Executed with this 'xsltproc' parameter: - - --param local.l10n.xml document\(\'custom-chapter.xml\'\) - -NOTE: This example is hypothetical -- use the 'xsltproc' -`--stringparam chapter.autolabel 0` option to do the same job. diff --git a/source-builder/sb/asciidoc/examples/website/asciidoc-graphviz-sample.txt b/source-builder/sb/asciidoc/examples/website/asciidoc-graphviz-sample.txt deleted file mode 100644 index 4be6ba9..0000000 --- a/source-builder/sb/asciidoc/examples/website/asciidoc-graphviz-sample.txt +++ /dev/null @@ -1,170 +0,0 @@ -= Graphviz filter for AsciiDoc = - -Author: Gouichi Iisaka - -Version: 1.1.3 - -== Introduction == - -The Graphviz(link:http://www.graphviz.org[]) is a way of representing structural information -as diagrams of abstract graphs and networks. - - -Automatic graph drawing has many important applications -in software engineering, database and web design, networking, -and in visual interfaces for many other domains. - -Graphviz take descriptions of graphs in a simple text language, -And has many useful features for concrete diagrams, -such as options for colors, fonts, tabular node layouts, -line styles, hyperlinks, and custom shapes. - -AsciiDoc can external shell commands used to process Paragraph and -DelimitedBlock content by Filter. - -So now, AsciiDoc can draw graphs via graphviz filter. - -== Examples == - -=== Simple === -..................................................................... -[graphviz] ---------------------------------------------------------------------- -digraph G { rankdir=LR; Graphviz->AsciiDoc->HTML} ---------------------------------------------------------------------- -..................................................................... - -[graphviz] ---------------------------------------------------------------------- -digraph G { rankdir=LR; Graphviz->AsciiDoc->HTML} ---------------------------------------------------------------------- - -=== Using options === -..................................................................... -["graphviz", "sample2.png"] ---------------------------------------------------------------------- -digraph automata_0 { - size ="8.5, 11"; - node [shape = circle]; - 0 [ style = filled, color=lightgrey ]; - 2 [ shape = doublecircle ]; - 0 -> 2 [ label = "a " ]; - 0 -> 1 [ label = "other " ]; - 1 -> 2 [ label = "a " ]; - 1 -> 1 [ label = "other " ]; - 2 -> 2 [ label = "a " ]; - 2 -> 1 [ label = "other " ]; - "Machine: a" [ shape = plaintext ]; -} ---------------------------------------------------------------------- -..................................................................... - -["graphviz", "sample2.png"] ---------------------------------------------------------------------- -digraph automata_0 { - size ="8.5, 11"; - node [shape = circle]; - 0 [ style = filled, color=lightgrey ]; - 2 [ shape = doublecircle ]; - 0 -> 2 [ label = "a " ]; - 0 -> 1 [ label = "other " ]; - 1 -> 2 [ label = "a " ]; - 1 -> 1 [ label = "other " ]; - 2 -> 2 [ label = "a " ]; - 2 -> 1 [ label = "other " ]; - "Machine: a" [ shape = plaintext ]; -} ---------------------------------------------------------------------- - -=== Using Layout === - -..................................................................... -["graphviz", "sample3.png", "dot"] ---------------------------------------------------------------------- -digraph finite_state_machine { - rankdir=LR; - size="8,5" - node [shape = doublecircle]; LR_0 LR_3 LR_4 LR_8; - node [shape = circle]; - LR_0 -> LR_2 [ label = "SS(B)" ]; - LR_0 -> LR_1 [ label = "SS(S)" ]; - LR_1 -> LR_3 [ label = "S($end)" ]; - LR_2 -> LR_6 [ label = "SS(b)" ]; - LR_2 -> LR_5 [ label = "SS(a)" ]; - LR_2 -> LR_4 [ label = "S(A)" ]; - LR_5 -> LR_7 [ label = "S(b)" ]; - LR_5 -> LR_5 [ label = "S(a)" ]; - LR_6 -> LR_6 [ label = "S(b)" ]; - LR_6 -> LR_5 [ label = "S(a)" ]; - LR_7 -> LR_8 [ label = "S(b)" ]; - LR_7 -> LR_5 [ label = "S(a)" ]; - LR_8 -> LR_6 [ label = "S(b)" ]; - LR_8 -> LR_5 [ label = "S(a)" ]; -} ---------------------------------------------------------------------- -..................................................................... - -["graphviz", "sample3.png", "dot"] ---------------------------------------------------------------------- -digraph finite_state_machine { - rankdir=LR; - size="8,5" - node [shape = doublecircle]; LR_0 LR_3 LR_4 LR_8; - node [shape = circle]; - LR_0 -> LR_2 [ label = "SS(B)" ]; - LR_0 -> LR_1 [ label = "SS(S)" ]; - LR_1 -> LR_3 [ label = "S($end)" ]; - LR_2 -> LR_6 [ label = "SS(b)" ]; - LR_2 -> LR_5 [ label = "SS(a)" ]; - LR_2 -> LR_4 [ label = "S(A)" ]; - LR_5 -> LR_7 [ label = "S(b)" ]; - LR_5 -> LR_5 [ label = "S(a)" ]; - LR_6 -> LR_6 [ label = "S(b)" ]; - LR_6 -> LR_5 [ label = "S(a)" ]; - LR_7 -> LR_8 [ label = "S(b)" ]; - LR_7 -> LR_5 [ label = "S(a)" ]; - LR_8 -> LR_6 [ label = "S(b)" ]; - LR_8 -> LR_5 [ label = "S(a)" ]; - } ---------------------------------------------------------------------- - - -== Layout == - -Layout for graphviz as follows. The default is `dot'. - - *dot;; - 'dot' draws directed graphs. - It works well on DAGs and other graphs that can be drawn as hierarchies. - It reads attributed graph files and writes drawings. - - *neato;; - 'neato' draws undirected graphs using ‘‘spring'' models (see Kamada and - Kawai, Information Processing Letters 31:1, April 1989). - Input files must be formatted in the dot attributed graph language. - - *twopi;; - 'twopi' draws graphs using a radial layout (see G. Wills, Symposium on - Graph Drawing GD'97, September, 1997). - Basically, one node is chosen as the center and put at the origin. - The remaining nodes are placed on a sequence of concentric circles - centered about the origin, each a fixed radial distance from - the previous circle. - - *circro;; - 'circo' draws graphs using a circular layout (see Six and Tollis, GD '99 - and ALENEX '99, and Kaufmann and Wiese, GD '02.) - The tool identifies biconnected components and draws the nodes - of the component on a circle. - The block‐cutpoint tree is then laid out using a recursive radial - algorithm. - Edge crossings within a circle are minimized by placing as - many edges on the circle's perimeter as possible. - In particular, if the component is outerplanar, - the component will have a planar layout. - - *fdp;; - 'fdp' draws undirected graphs using a ‘‘spring'' model. - It relies on a force‐directed approach in the spirit of Fruchterman - and Reingold - (cf. Software‐Practice & Experience 21(11), 1991, pp. 1129‐1164). diff --git a/source-builder/sb/asciidoc/examples/website/asciidoc.css b/source-builder/sb/asciidoc/examples/website/asciidoc.css deleted file mode 100644 index 163de67..0000000 --- a/source-builder/sb/asciidoc/examples/website/asciidoc.css +++ /dev/null @@ -1,525 +0,0 @@ -/* Shared CSS for AsciiDoc xhtml11 and html5 backends */ - -/* Default font. */ -body { - font-family: Georgia,serif; -} - -/* Title font. */ -h1, h2, h3, h4, h5, h6, -div.title, caption.title, -thead, p.table.header, -#toctitle, -#author, #revnumber, #revdate, #revremark, -#footer { - font-family: Arial,Helvetica,sans-serif; -} - -body { - margin: 1em 5% 1em 5%; -} - -a { - color: blue; - text-decoration: underline; -} -a:visited { - color: fuchsia; -} - -em { - font-style: italic; - color: navy; -} - -strong { - font-weight: bold; - color: #083194; -} - -h1, h2, h3, h4, h5, h6 { - color: #527bbd; - margin-top: 1.2em; - margin-bottom: 0.5em; - line-height: 1.3; -} - -h1, h2, h3 { - border-bottom: 2px solid silver; -} -h2 { - padding-top: 0.5em; -} -h3 { - float: left; -} -h3 + * { - clear: left; -} -h5 { - font-size: 1.0em; -} - -div.sectionbody { - margin-left: 0; -} - -hr { - border: 1px solid silver; -} - -p { - margin-top: 0.5em; - margin-bottom: 0.5em; -} - -ul, ol, li > p { - margin-top: 0; -} -ul > li { color: #aaa; } -ul > li > * { color: black; } - -.monospaced, code, pre { - font-family: "Courier New", Courier, monospace; - font-size: inherit; - color: navy; - padding: 0; - margin: 0; -} - - -#author { - color: #527bbd; - font-weight: bold; - font-size: 1.1em; -} -#email { -} -#revnumber, #revdate, #revremark { -} - -#footer { - font-size: small; - border-top: 2px solid silver; - padding-top: 0.5em; - margin-top: 4.0em; -} -#footer-text { - float: left; - padding-bottom: 0.5em; -} -#footer-badges { - float: right; - padding-bottom: 0.5em; -} - -#preamble { - margin-top: 1.5em; - margin-bottom: 1.5em; -} -div.imageblock, div.exampleblock, div.verseblock, -div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock, -div.admonitionblock { - margin-top: 1.0em; - margin-bottom: 1.5em; -} -div.admonitionblock { - margin-top: 2.0em; - margin-bottom: 2.0em; - margin-right: 10%; - color: #606060; -} - -div.content { /* Block element content. */ - padding: 0; -} - -/* Block element titles. */ -div.title, caption.title { - color: #527bbd; - font-weight: bold; - text-align: left; - margin-top: 1.0em; - margin-bottom: 0.5em; -} -div.title + * { - margin-top: 0; -} - -td div.title:first-child { - margin-top: 0.0em; -} -div.content div.title:first-child { - margin-top: 0.0em; -} -div.content + div.title { - margin-top: 0.0em; -} - -div.sidebarblock > div.content { - background: #ffffee; - border: 1px solid #dddddd; - border-left: 4px solid #f0f0f0; - padding: 0.5em; -} - -div.listingblock > div.content { - border: 1px solid #dddddd; - border-left: 5px solid #f0f0f0; - background: #f8f8f8; - padding: 0.5em; -} - -div.quoteblock, div.verseblock { - padding-left: 1.0em; - margin-left: 1.0em; - margin-right: 10%; - border-left: 5px solid #f0f0f0; - color: #888; -} - -div.quoteblock > div.attribution { - padding-top: 0.5em; - text-align: right; -} - -div.verseblock > pre.content { - font-family: inherit; - font-size: inherit; -} -div.verseblock > div.attribution { - padding-top: 0.75em; - text-align: left; -} -/* DEPRECATED: Pre version 8.2.7 verse style literal block. */ -div.verseblock + div.attribution { - text-align: left; -} - -div.admonitionblock .icon { - vertical-align: top; - font-size: 1.1em; - font-weight: bold; - text-decoration: underline; - color: #527bbd; - padding-right: 0.5em; -} -div.admonitionblock td.content { - padding-left: 0.5em; - border-left: 3px solid #dddddd; -} - -div.exampleblock > div.content { - border-left: 3px solid #dddddd; - padding-left: 0.5em; -} - -div.imageblock div.content { padding-left: 0; } -span.image img { border-style: none; } -a.image:visited { color: white; } - -dl { - margin-top: 0.8em; - margin-bottom: 0.8em; -} -dt { - margin-top: 0.5em; - margin-bottom: 0; - font-style: normal; - color: navy; -} -dd > *:first-child { - margin-top: 0.1em; -} - -ul, ol { - list-style-position: outside; -} -ol.arabic { - list-style-type: decimal; -} -ol.loweralpha { - list-style-type: lower-alpha; -} -ol.upperalpha { - list-style-type: upper-alpha; -} -ol.lowerroman { - list-style-type: lower-roman; -} -ol.upperroman { - list-style-type: upper-roman; -} - -div.compact ul, div.compact ol, -div.compact p, div.compact p, -div.compact div, div.compact div { - margin-top: 0.1em; - margin-bottom: 0.1em; -} - -tfoot { - font-weight: bold; -} -td > div.verse { - white-space: pre; -} - -div.hdlist { - margin-top: 0.8em; - margin-bottom: 0.8em; -} -div.hdlist tr { - padding-bottom: 15px; -} -dt.hdlist1.strong, td.hdlist1.strong { - font-weight: bold; -} -td.hdlist1 { - vertical-align: top; - font-style: normal; - padding-right: 0.8em; - color: navy; -} -td.hdlist2 { - vertical-align: top; -} -div.hdlist.compact tr { - margin: 0; - padding-bottom: 0; -} - -.comment { - background: yellow; -} - -.footnote, .footnoteref { - font-size: 0.8em; -} - -span.footnote, span.footnoteref { - vertical-align: super; -} - -#footnotes { - margin: 20px 0 20px 0; - padding: 7px 0 0 0; -} - -#footnotes div.footnote { - margin: 0 0 5px 0; -} - -#footnotes hr { - border: none; - border-top: 1px solid silver; - height: 1px; - text-align: left; - margin-left: 0; - width: 20%; - min-width: 100px; -} - -div.colist td { - padding-right: 0.5em; - padding-bottom: 0.3em; - vertical-align: top; -} -div.colist td img { - margin-top: 0.3em; -} - -@media print { - #footer-badges { display: none; } -} - -#toc { - margin-bottom: 2.5em; -} - -#toctitle { - color: #527bbd; - font-size: 1.1em; - font-weight: bold; - margin-top: 1.0em; - margin-bottom: 0.1em; -} - -div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 { - margin-top: 0; - margin-bottom: 0; -} -div.toclevel2 { - margin-left: 2em; - font-size: 0.9em; -} -div.toclevel3 { - margin-left: 4em; - font-size: 0.9em; -} -div.toclevel4 { - margin-left: 6em; - font-size: 0.9em; -} - -span.aqua { color: aqua; } -span.black { color: black; } -span.blue { color: blue; } -span.fuchsia { color: fuchsia; } -span.gray { color: gray; } -span.green { color: green; } -span.lime { color: lime; } -span.maroon { color: maroon; } -span.navy { color: navy; } -span.olive { color: olive; } -span.purple { color: purple; } -span.red { color: red; } -span.silver { color: silver; } -span.teal { color: teal; } -span.white { color: white; } -span.yellow { color: yellow; } - -span.aqua-background { background: aqua; } -span.black-background { background: black; } -span.blue-background { background: blue; } -span.fuchsia-background { background: fuchsia; } -span.gray-background { background: gray; } -span.green-background { background: green; } -span.lime-background { background: lime; } -span.maroon-background { background: maroon; } -span.navy-background { background: navy; } -span.olive-background { background: olive; } -span.purple-background { background: purple; } -span.red-background { background: red; } -span.silver-background { background: silver; } -span.teal-background { background: teal; } -span.white-background { background: white; } -span.yellow-background { background: yellow; } - -span.big { font-size: 2em; } -span.small { font-size: 0.6em; } - -span.underline { text-decoration: underline; } -span.overline { text-decoration: overline; } -span.line-through { text-decoration: line-through; } - -div.unbreakable { page-break-inside: avoid; } - - -/* - * xhtml11 specific - * - * */ - -div.tableblock { - margin-top: 1.0em; - margin-bottom: 1.5em; -} -div.tableblock > table { - border: 3px solid #527bbd; -} -thead, p.table.header { - font-weight: bold; - color: #527bbd; -} -p.table { - margin-top: 0; -} -/* Because the table frame attribute is overriden by CSS in most browsers. */ -div.tableblock > table[frame="void"] { - border-style: none; -} -div.tableblock > table[frame="hsides"] { - border-left-style: none; - border-right-style: none; -} -div.tableblock > table[frame="vsides"] { - border-top-style: none; - border-bottom-style: none; -} - - -/* - * html5 specific - * - * */ - -table.tableblock { - margin-top: 1.0em; - margin-bottom: 1.5em; -} -thead, p.tableblock.header { - font-weight: bold; - color: #527bbd; -} -p.tableblock { - margin-top: 0; -} -table.tableblock { - border-width: 3px; - border-spacing: 0px; - border-style: solid; - border-color: #527bbd; - border-collapse: collapse; -} -th.tableblock, td.tableblock { - border-width: 1px; - padding: 4px; - border-style: solid; - border-color: #527bbd; -} - -table.tableblock.frame-topbot { - border-left-style: hidden; - border-right-style: hidden; -} -table.tableblock.frame-sides { - border-top-style: hidden; - border-bottom-style: hidden; -} -table.tableblock.frame-none { - border-style: hidden; -} - -th.tableblock.halign-left, td.tableblock.halign-left { - text-align: left; -} -th.tableblock.halign-center, td.tableblock.halign-center { - text-align: center; -} -th.tableblock.halign-right, td.tableblock.halign-right { - text-align: right; -} - -th.tableblock.valign-top, td.tableblock.valign-top { - vertical-align: top; -} -th.tableblock.valign-middle, td.tableblock.valign-middle { - vertical-align: middle; -} -th.tableblock.valign-bottom, td.tableblock.valign-bottom { - vertical-align: bottom; -} - - -/* - * manpage specific - * - * */ - -body.manpage h1 { - padding-top: 0.5em; - padding-bottom: 0.5em; - border-top: 2px solid silver; - border-bottom: 2px solid silver; -} -body.manpage h2 { - border-style: none; -} -body.manpage div.sectionbody { - margin-left: 3em; -} - -@media print { - body.manpage div#toc { display: none; } -} diff --git a/source-builder/sb/asciidoc/examples/website/asciidoc.js b/source-builder/sb/asciidoc/examples/website/asciidoc.js deleted file mode 100644 index ac36563..0000000 --- a/source-builder/sb/asciidoc/examples/website/asciidoc.js +++ /dev/null @@ -1,189 +0,0 @@ -var asciidoc = { // Namespace. - -///////////////////////////////////////////////////////////////////// -// Table Of Contents generator -///////////////////////////////////////////////////////////////////// - -/* Author: Mihai Bazon, September 2002 - * http://students.infoiasi.ro/~mishoo - * - * Table Of Content generator - * Version: 0.4 - * - * Feel free to use this script under the terms of the GNU General Public - * License, as long as you do not remove or alter this notice. - */ - - /* modified by Troy D. Hanson, September 2006. License: GPL */ - /* modified by Stuart Rackham, 2006, 2009. License: GPL */ - -// toclevels = 1..4. -toc: function (toclevels) { - - function getText(el) { - var text = ""; - for (var i = el.firstChild; i != null; i = i.nextSibling) { - if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants. - text += i.data; - else if (i.firstChild != null) - text += getText(i); - } - return text; - } - - function TocEntry(el, text, toclevel) { - this.element = el; - this.text = text; - this.toclevel = toclevel; - } - - function tocEntries(el, toclevels) { - var result = new Array; - var re = new RegExp('[hH]([1-'+(toclevels+1)+'])'); - // Function that scans the DOM tree for header elements (the DOM2 - // nodeIterator API would be a better technique but not supported by all - // browsers). - var iterate = function (el) { - for (var i = el.firstChild; i != null; i = i.nextSibling) { - if (i.nodeType == 1 /* Node.ELEMENT_NODE */) { - var mo = re.exec(i.tagName); - if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") { - result[result.length] = new TocEntry(i, getText(i), mo[1]-1); - } - iterate(i); - } - } - } - iterate(el); - return result; - } - - var toc = document.getElementById("toc"); - if (!toc) { - return; - } - - // Delete existing TOC entries in case we're reloading the TOC. - var tocEntriesToRemove = []; - var i; - for (i = 0; i < toc.childNodes.length; i++) { - var entry = toc.childNodes[i]; - if (entry.nodeName.toLowerCase() == 'div' - && entry.getAttribute("class") - && entry.getAttribute("class").match(/^toclevel/)) - tocEntriesToRemove.push(entry); - } - for (i = 0; i < tocEntriesToRemove.length; i++) { - toc.removeChild(tocEntriesToRemove[i]); - } - - // Rebuild TOC entries. - var entries = tocEntries(document.getElementById("content"), toclevels); - for (var i = 0; i < entries.length; ++i) { - var entry = entries[i]; - if (entry.element.id == "") - entry.element.id = "_toc_" + i; - var a = document.createElement("a"); - a.href = "#" + entry.element.id; - a.appendChild(document.createTextNode(entry.text)); - var div = document.createElement("div"); - div.appendChild(a); - div.className = "toclevel" + entry.toclevel; - toc.appendChild(div); - } - if (entries.length == 0) - toc.parentNode.removeChild(toc); -}, - - -///////////////////////////////////////////////////////////////////// -// Footnotes generator -///////////////////////////////////////////////////////////////////// - -/* Based on footnote generation code from: - * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html - */ - -footnotes: function () { - // Delete existing footnote entries in case we're reloading the footnodes. - var i; - var noteholder = document.getElementById("footnotes"); - if (!noteholder) { - return; - } - var entriesToRemove = []; - for (i = 0; i < noteholder.childNodes.length; i++) { - var entry = noteholder.childNodes[i]; - if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote") - entriesToRemove.push(entry); - } - for (i = 0; i < entriesToRemove.length; i++) { - noteholder.removeChild(entriesToRemove[i]); - } - - // Rebuild footnote entries. - var cont = document.getElementById("content"); - var spans = cont.getElementsByTagName("span"); - var refs = {}; - var n = 0; - for (i=0; i" + n + "
]"; - spans[i].setAttribute("data-note", note); - } - noteholder.innerHTML += - "
" + - "" + - n + ". " + note + "
"; - var id =spans[i].getAttribute("id"); - if (id != null) refs["#"+id] = n; - } - } - if (n == 0) - noteholder.parentNode.removeChild(noteholder); - else { - // Process footnoterefs. - for (i=0; i" + n + "]"; - } - } - } -}, - -install: function(toclevels) { - var timerId; - - function reinstall() { - asciidoc.footnotes(); - if (toclevels) { - asciidoc.toc(toclevels); - } - } - - function reinstallAndRemoveTimer() { - clearInterval(timerId); - reinstall(); - } - - timerId = setInterval(reinstall, 500); - if (document.addEventListener) - document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false); - else - window.onload = reinstallAndRemoveTimer; -} - -} diff --git a/source-builder/sb/asciidoc/examples/website/asciidocapi.txt b/source-builder/sb/asciidoc/examples/website/asciidocapi.txt deleted file mode 100644 index bbf69e7..0000000 --- a/source-builder/sb/asciidoc/examples/website/asciidocapi.txt +++ /dev/null @@ -1,189 +0,0 @@ -AsciiDoc API -============ - -'asciidocapi' -- a Python API module for 'AsciiDoc'. - - -Introduction ------------- -The 'asciidocapi' module implements a Python API for AsciiDoc. It -allows you to set `asciidoc(1)` program options, compile an AsciiDoc -source file and then interrogate the results. The `asciidocapi.py` -module file contains the `AsciiDocAPI` wrapper class for -`asciidoc.py`. - -.Benefits -- Stable API Shields the user from the undocumented and possibly - volatile `asciidoc.py` internals. -- Easier to use and more flexible than the alternative of running - `asciidoc(1)` as a separate process. -- Executes inside your application (better performance than running - separate `asciidoc(1)` command processes). - - -Using asciidocapi ------------------ -To use the API just drop the `asciidocapi.py` file into your -application directory, import it and use the `AsciiDocAPI` class. The -only requirement is that a compatible version of 'AsciiDoc' is already -installed -- simple, no setuptools to run, no Eggs to install, no -non-standard library dependencies. - -You can find `asciidocapi.py` in the AsciiDoc -http://www.methods.co.nz/asciidoc/INSTALL.html#X1[distribution -archives] (version 8.4.1 or better). - -Once you have `asciidocapi.py` Verify everything is working by running -the module doctests: - - python asciidocapi.py - -If there are no messages then all is well. - -The following minimal example compiles `mydoc.txt` to `mydoc.html`: - -[source,python] -------------------------------------------------------------------------------- -from asciidocapi import AsciiDocAPI -asciidoc = AsciiDocAPI() -asciidoc.execute('mydoc.txt') -------------------------------------------------------------------------------- - -The next interactive example uses file-like objects for input and output: - -------------------------------------------------------------------------------- -$ python -Python 2.5.2 (r252:60911, Jul 31 2008, 17:28:52) -[GCC 4.2.3 (Ubuntu 4.2.3-2ubuntu7)] on linux2 -Type "help", "copyright", "credits" or "license" for more information. ->>> from asciidocapi import AsciiDocAPI ->>> import StringIO ->>> infile = StringIO.StringIO('Hello *{author}*') ->>> outfile = StringIO.StringIO() ->>> asciidoc = AsciiDocAPI() ->>> asciidoc.options('--no-header-footer') ->>> asciidoc.attributes['author'] = 'Joe Bloggs' ->>> asciidoc.execute(infile, outfile, backend='html4') ->>> print outfile.getvalue() -

Hello Joe Bloggs

- ->>> -------------------------------------------------------------------------------- - - -Implementation Rationale ------------------------- -.Leverage existing knowledge -The API maps directly onto the `asciidoc(1)` command -- this is -deliberate -- if you know the `asciidoc(1)` command learning the API -will be trivial. A nice side effect of this goal is that API and -command-line modes share the same code -- virtually no `asciidoc(1)` -code is specific to API usage. - -.Simplicity -Implemented with a single Python module file (`asciidocapi.py`) -containing the 'AsciiDocAPI' API class. 'AsciiDocAPI' contains just -one method plus a few attributes for processing options and result -messages. No external setup tools and no non-standard library -dependencies are used or required. - -.Loose coupling -The dependency between `asciidocapi.py` and `asciidoc.py` is minimal --- the current `asciidocapi.py` module uses only two attributes and -one function from the `asciidoc.py` module. - -.Why isn't the API baked right into the asciidoc.py command script? -1. You can't just drop `asciidoc.py` into your application because it - requires all the related config files and filters -- complex and - unnecessary since all this was already done when you installed - AsciiDoc. -2. This scheme separates the API from the AsciiDoc application -- the - API implementation can be extended or replaced independently of - AsciiDoc. - - -API reference -------------- - -[[X2]] -Class `AsciiDocAPI(object)` -~~~~~~~~~~~~~~~~~~~~~~~~~~~ -This is the 'AsciiDoc' API class. - -Instance attributes -^^^^^^^^^^^^^^^^^^^ -`asciidoc`:: -The imported `asciidoc.py` module. - -`attributes`:: -A dictionary of AsciiDoc attribute values passed to AsciiDoc. - -- Setting an attribute value to `None` (`name: None`) will undefine - (delete) the attribute (this in addition to the `name!` attribute - name format that the `asciidoc(1)` command uses). -- To simply define an attribute set the attribute value to a blank - string (`name: ''`) - -`cmd`:: -The file path of the `asciidoc.py` script. Set by the `__init__` -method. - -`messages`:: -A chronologically ordered list of message strings generated during -AsciiDoc execution (last message at the end of the list). - -`options`:: -An instance of the <>. Contains a list of command -options passed to AsciiDoc. - -Instance methods -^^^^^^^^^^^^^^^^ -`__init__(self, asciidoc_py=None)`:: -Locate and import `asciidoc.py` module and verify API compatibility. -Initialize instance attributes. A search for the `asciidoc` module is -made in the following order: - -. Use the `ASCIIDOC_PY` environment variable if it is set. -. Use the `asciidoc_py` argument if it is set. -. Search the environment 'PATH' for `asciidoc.py`, `asciidoc.pyc` and - `asciidoc` (in that order). -. Finally repeat the previous search in the current working directory. - -`execute(self, infile, outfile=None, backend=None)`:: -Compile `infile` to `outfile` using `backend` format. `infile` and -`outfile` can be file path strings or file-like objects. `backend` is -name of 'AsciiDoc' backend (takes same values as `asciidoc(1)` command -`--backend` option). If `outfile` or `backend` are `None` then their -respective `asciidoc(1)` defaults are used. - - -[[X1]] -Class `Options(object)` -~~~~~~~~~~~~~~~~~~~~~~~ -Stores `asciidoc(1)` command options. You can use any `asciidoc(1)` -options with the exception of the `--doctest` and `--filter` options. - -Instance attributes -^^^^^^^^^^^^^^^^^^^ -`values`:: -The list of `(name,value)` command option tuples. - -Instance methods -^^^^^^^^^^^^^^^^ -`__call__(self, name, value=None)`:: -A shortcut for the `append` method. Example: - - opts = Options() - opts('--verbose') - -`append(self, name, value=None)`:: -Append `(name,value)` to the options list. Example: - - opts = Options() - opts.append('--conf-file', 'blog.conf') - - -Class `AsciiDocError(Exception)` -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Thrown by the <> when an 'AsciiDoc' execution -error occurs. diff --git a/source-builder/sb/asciidoc/examples/website/asciimathml.txt b/source-builder/sb/asciidoc/examples/website/asciimathml.txt deleted file mode 100644 index ed5e269..0000000 --- a/source-builder/sb/asciidoc/examples/website/asciimathml.txt +++ /dev/null @@ -1,61 +0,0 @@ -ASCIIMathML Formulae -==================== - -http://www1.chapman.edu/~jipsen/mathml/asciimath.html[ASCIIMathML] is -a clever JavaScript written by Peter Jipsen that dynamically -transforms mathematical formulae written in a wiki-like plain text -markup to http://www.w3.org/Math/[MathML] markup which is displayed as -standard mathematical notation by the Web Browser. See 'Appendix E' -in the AsciiDoc User Guide for more details. - -The AsciiDoc `xhtml11` backend supports ASCIIMathML -- it links the -ASCIIMathML script and escapes ASCIIMathML delimiters and special -characters to yield valid XHTML. To use ASCIIMathML: - -1. Include the `-a asciimath` command-line option when you run - `asciidoc(1)`. -2. Enclose ASCIIMathML formulas inside math or double-dollar - passthroughs or in math passthrough blocks. - -Here's the link:asciimathml.txt[AsciiDoc source] that generated this -page. - -.NOTE -- When you use the `asciimath:[]` inline macro you need to escape `]` - characters in the formulas with a backslash, escaping is unnecessary - if you use the double-dollar macro (for examples see the second - formula below). -- See the - http://www1.chapman.edu/~jipsen/mathml/asciimath.html[ASCIIMathML] - website for ASCIIMathML documentation and the latest version. -- If the formulas don't appear to be correct you probably need to - install the correct math fonts (see the - http://www1.chapman.edu/~jipsen/mathml/asciimath.html[ASCIIMathML] - website for details). -- See the link:latexmathml.html[LaTeXMathML page] if you prefer to use - LaTeX math formulas. - -A list of example formulas: - -- $$`[[a,b],[c,d]]((n),(k))`$$ -- asciimath:[x/x={(1,if x!=0),(text{undefined},if x=0):}] -- asciimath:[d/dxf(x)=lim_(h->0)(f(x+h)-f(x))/h] -- +++`sum_(i=1)\^n i=(n(n+1))/2`$+++ and *bold - asciimath:[int_0\^(pi/2) sinx\ dx=1]* -- asciimath:[(a,b\]={x in RR : a < x <= b}] -- asciimath:[x^2+y_1+z_12^34] - -********************************************************************* -The first three terms factor to give -asciimath:[(x+b/(2a))^2=(b^2)/(4a^2)-c/a]. - -asciimath:[x+b/(2a)=+-sqrt((b^2)/(4a^2)-c/a)]. - -Now we take square roots on both sides and get -asciimath:[x+b/(2a)=+-sqrt((b^2)/(4a^2)-c/a)]. -Finally we move the asciimath:[b/(2a)] to the right and simplify to -get the two solutions: -*asciimath:[x_(1,2)=(-b+-sqrt(b^2-4ac))/(2a)]*. - -********************************************************************* - diff --git a/source-builder/sb/asciidoc/examples/website/build-website.sh b/source-builder/sb/asciidoc/examples/website/build-website.sh deleted file mode 100755 index 153ecee..0000000 --- a/source-builder/sb/asciidoc/examples/website/build-website.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -VERS="8.1.0" -DATE="2006-10-22" - -# Leave the desired layout uncommented. -#LAYOUT=layout1 # Tables based layout. -LAYOUT=layout2 # CSS based layout. - -ASCIIDOC_HTML="python ../../asciidoc.py --backend=xhtml11 --conf-file=${LAYOUT}.conf --attribute icons --attribute iconsdir=./images/icons --attribute=badges --attribute=revision=$VERS --attribute=date=$DATE" - -$ASCIIDOC_HTML -a index-only index.txt -$ASCIIDOC_HTML -a toc -a numbered userguide.txt -$ASCIIDOC_HTML -d manpage manpage.txt -$ASCIIDOC_HTML downloads.txt -$ASCIIDOC_HTML latex-backend.txt -$ASCIIDOC_HTML README.txt -$ASCIIDOC_HTML INSTALL.txt -$ASCIIDOC_HTML CHANGELOG.txt -$ASCIIDOC_HTML README-website.txt -$ASCIIDOC_HTML support.txt -$ASCIIDOC_HTML source-highlight-filter.txt -$ASCIIDOC_HTML music-filter.txt -$ASCIIDOC_HTML a2x.1.txt -$ASCIIDOC_HTML asciimath.txt diff --git a/source-builder/sb/asciidoc/examples/website/customers.csv b/source-builder/sb/asciidoc/examples/website/customers.csv deleted file mode 100644 index 01f862a..0000000 --- a/source-builder/sb/asciidoc/examples/website/customers.csv +++ /dev/null @@ -1,18 +0,0 @@ -"AROUT","Around the Horn","Thomas Hardy","120 Hanover Sq. -London","(171) 555-7788" -"BERGS","Berglunds snabbkop","Christina Berglund","Berguvsvagen 8 -Lulea","0921-12 34 65" -"BLAUS","Blauer See Delikatessen","Hanna Moos","Forsterstr. 57 -Mannheim","0621-08460" -"BLONP","Blondel pere et fils","Frederique Citeaux","24, place Kleber -Strasbourg","88.60.15.31" -"BOLID","Bolido Comidas preparadas","Martin Sommer","C/ Araquil, 67 -Madrid","(91) 555 22 82" -"BONAP","Bon app'","Laurence Lebihan","12, rue des Bouchers -Marseille","91.24.45.40" -"BOTTM","Bottom-Dollar Markets","Elizabeth Lincoln","23 Tsawassen Blvd. -Tsawassen","(604) 555-4729" -"BSBEV","B's Beverages","Victoria Ashworth","Fauntleroy Circus -London","(171) 555-1212" -"CACTU","Cactus Comidas para llevar","Patricio Simpson","Cerrito 333 -Buenos Aires","(1) 135-5555" diff --git a/source-builder/sb/asciidoc/examples/website/epub-notes.txt b/source-builder/sb/asciidoc/examples/website/epub-notes.txt deleted file mode 100644 index 0b942ba..0000000 --- a/source-builder/sb/asciidoc/examples/website/epub-notes.txt +++ /dev/null @@ -1,210 +0,0 @@ -AsciiDoc EPUB Notes -=================== - - -Restrictions ------------- -- If the date format of the DocBook 'data' element is not formatted like - `YYYY[-MM[-DD]]` you will get an error like the following one when - validating with `epubcheck(1)`: - - ERROR: doc/article.epub/OEBPS/content.opf(6): date value 'Dec 2003' - is not valid, YYYY[-MM[-DD]] expected - -- Navigation headers are suppressed by `docbook-xsl/epub.xsl` (see - <>). - - -DocBook XSL Stylesheets related limitations and bugs ----------------------------------------------------- - -=== epub: toc.section.depth parameter ignored -https://sourceforge.net/tracker/?func=detail&aid=3043393&group_id=21935&atid=373747 - -epub outputs include every section in the table of contents regardless of the -toc.section.depth XSL Stylesheets parameter -(http://docbook.sourceforge.net/release/xsl/current/doc/html/toc.section.depth.html). -This behavior is specific to epub (xhtml and fo outputs honor -toc.section.depth). - -Environment: DocBook XSL 1.75.2; Xubuntu 10.04 - -Also epub/docbook.xsl has written a hard-coded illegal dtb:depth value of -1 -into the toc.ncx navigation control file: - - - -Shouldn't it be a positive integer equal to the depth navPoint nesting in the -navMap element (see -http://www.niso.org/workrooms/daisy/Z39-86-2005.html#NavMeta)? Though epubcheck 1.05 doesn't flag it as invalid -- are they both wrong? - - -[[X1]] -=== epub: untitled DocBook sidebar emits invalid XHTML -https://sourceforge.net/tracker/index.php?func=detail&aid=2840768&group_id=21935&atid=373747 - -I get the same problem, but is confined to EPUB outputs (not XHTML) -and results in the sidebar and all subsequent text on the page -displayed in bold text in both Firefox 3.6.8 and Google Chrome -5.0.375.125 (I haven't checked other browsers). - -Environment: DocBook XSL 1.75.2; Xubuntu 10.04 - -If a DocBook sidebar element does not have a title then the emitted -title is (I haven't checked other browsers). -set to instead of , for example this DocBook markup: - - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit. - - -Generates this EPUB XHTML: - - - -This problem is not picked up by either the epubcheck or the W3C -validators. - -The problem does not occur generating XHTML which emits the following -for the above example: - - - - -=== epub: Unreferenced callout icons in OPF -NOTE: A workaround for this problem was added in `a2x(1)` version -8.6.5. - -https://sourceforge.net/tracker/?func=detail&aid=2854075&group_id=21935&atid=373747 - -Environment: DocBook XSL 1.75.2; Xubuntu 8.04 - -When callouts are used in a document and callout graphics are disabled -(callout.graphics=0) the generated 'contents.opf' still contains -references to all the callout icons even though none are not -referenced in the generated XHTML content. This results in 10 -epubcheck validation errors like: - - image file OEBPS/images/icons/callouts/1.png is missing - -It appears that epub is adding the icons to the OPF without -first checking the callout.graphics parameter. - - -=== epub: Table grids not generated -https://sourceforge.net/tracker/?func=detail&aid=2849647&group_id=21935&atid=373747 - -Environment: DocBook XSL 1.75.2; Xubuntu 8.04 - -DocBook XSL epub does not appear to process the DocBook table element rowsep -and colsep attributes -- table grids are not displayed. The DocBook - results in: - -epub DocBook XSL generates: - - -......................................... - -Now you can use the style name to style cells or columns (in this -example we use an unambiguous shortened abbreviation 'r'): - -[listing] -......................................... -|================================== -|Normal cell r|Red cell -|================================== -......................................... - - -== How can I add highlighted editorial comments to an AsciiDoc document? -Both block and inline link:userguide.html#X25[comment lines] are -displayed on the output if the 'showcomments' attribute is defined. -Example: - -[listing] -......................................... -:showcomments: -// A block comment line. - -Qui in magna commodo, est labitur dolorum an. Est ne magna primis -// An inline comment line. -adolescens. -......................................... - -Is rendered as: - -:showcomments: -// A block comment line. - -Qui in magna commodo, est labitur dolorum an. Est ne magna primis -// An inline comment line. -adolescens. - -NOTE: link:userguide.html#X26[Comment blocks] are never displayed. - - -== What is the preferred file name extension for AsciiDoc files? -The `.txt` http://en.wikipedia.org/wiki/Text_file[text file] extension -is preferred, but it's just a convention and it's not enforced by the -software. - -AsciiDoc source files are human readable -http://en.wikipedia.org/wiki/Plain_text[plain text] files which is -what the `.txt` extension is for. All text editors recognize and open -files with a `.txt` extension. The `.txt` extension is universally -recognized and unambiguous -- you are not left asking questions like -``What on earth is this file with the funny extension?'', ``How do I -open it?'' and ``Is it safe to open?''. - - -== How can I generate numbered bibliographic entries? -If your outputs are DocBook generated then adding the following inline -macro to a custom configuration file will result in auto-incrementing -bibliography entry numbers (instead of displaying the bibliographic -identifiers): - - [anchor3-inlinemacro] - [{counter:bibliography2}] - -This FAQ submitted by Bela Hausmann. - - -== How can I include lines of dashes inside a listing block? -A line of four or more dashes will be mistaken for the ListingBlock -terminator, one way round this problem is to use a LiteralBlock styled -as a listing block. For example: - - [listing] - ........................... - Lorum ipsum - ----------- - ........................... - - -== How can I customize PDF files generated by dblatex? - -There are a number of dblatex XSL parameters that can be used to -customize PDF output. You can set them globally in the AsciiDoc -`./dblatex/asciidoc-dblatex.xsl` configuration file or you can also -pass them on the a2x(1) command-line. Here are some examples: - -The -http://dblatex.sourceforge.net/doc/manual/latex.output.revhistory.html[latex.output.revhistory] -parameter is used to suppress the revision history: - - a2x -f pdf --dblatex-opts "-P latex.output.revhistory=0" doc/article.txt - -The -http://dblatex.sourceforge.net/doc/manual/doc.layout.html[doc.layout] -parameter is used to include the cover page and document body (i.e. excludes -table of contents and index), the -http://dblatex.sourceforge.net/doc/manual/doc.publisher.show.html[doc.publisher.show] -parameter is used to exclude the cover page logo: - - a2x -f pdf --dblatex-opts " -P doc.layout=\"coverpage mainmatter\" -P doc.publisher.show=0" doc/article.txt - -See also the -http://dblatex.sourceforge.net/doc/manual/sec-params.html[dblatex XSL -parameter reference]. - - -== How can I add lists of figures and tables to PDFs created by dblatex? -Set the -http://dblatex.sourceforge.net/doc/sec-custom.html[doc.lot.show XSL -parameter] -- you can set it using the dblatex `--param` command-line -option, for example: - - a2x --dblatex-opts="--param=doc.lot.show=figure,table" doc/article.txt - - -== How can I stop the document title being displayed? -You could simply omit the document title, but this will result in a -blank 'title' element in HTML outputs. If you want the HTML 'title' -element to contain the document title then define the 'notitle' -attribute (this will just suppress displaying the title), for example: - - My document title - ================= - :no title: - - -== Why am I having trouble getting nested macros to work? -The following example expands the 'image' inline macro, but the -expansion contains double-quote characters which confuses the ensuing -'footnoteref' macro expansion: - - footnoteref:["F1","A footnote, with an image image:smallnew.png[]"] - -The solution is to use unquoted attribute values, replacing embedded -commas with the comma character entity (`,`): - - footnoteref:[F1,A footnote, with an image image:smallnew.png[]] - -Similarly, you can embed double-quote characters in unquoted attribute -values using the `"` character entity. - - -== Why am I getting DocBook validation errors? -Not all valid AsciiDoc source generates valid DocBook, for example -'special sections' (abstract, preface, colophon, dedication, -bibliography, glossary, appendix, index, synopsis) have different -DocBook schema's to normal document sections. For example, a paragraph -is illegal in a bibliography. - -Don't forget if your document is a book you need to specify the -asciidoc `-d book` command option, if you don't an article DocBook -document will be generated, possibly containing book specific -sections, resulting in validation errors. - - -== How can I disable special section titles? -For example, you want to use 'References' as a normal section name but -AsciiDoc is auto-magically generating a DocBook 'bibliography' -section. All you need to do is explicitly specify the section template -name, for example: - - [sect1] - References - ---------- - - -== How can I insert XML processing instructions into output documents? -Use an inline or block passthrough macros. This example inserts -`` into the DocBook output generated by -AsciiDoc: - - pass::[] - -NOTE: XML processing instructions are specific to the application that -processes the XML (the previous `dblatex` processing instruction is -recognized by `dblatex(1)` when it processes the DocBook XML generated -by Asciidoc). - - -[[X4]] -== How do I prevent double-quoted text being mistaken for an inline literal? -Mixing doubled-quoted text with inline literal passthroughs can -produce undesired results, for example, all of the following line is -interpreted as an inline literal passthrough: - - ``XXX'' `YYY` - -In this case the solution is to use monospace quoting instead of the -inline literal: - - ``XXX'' +YYY+ - -Use the +\pass:[]+ macro if it's necessary to suppress -substitutions in the monospaced text, for example: - - ``XXX'' +pass:[don't `quote` me]+ - - -== How can I generate a single HTML document file containing images and CSS styles? -With the advent of Internet Explorer 8 all major web browsers now -support the -http://en.wikipedia.org/wiki/Data:_URI_scheme[data URI scheme] for -embedded images. The AsciiDoc 'xhtml11' and 'html5' backends supports -the data URI scheme for embedded images and by default it embeds the -CSS stylesheet. For example the following command will generate a -single `article.html` file containing embedded images, admonition -icons and the CSS stylesheet: - - asciidoc -a data-uri -a icons article.txt - - -== Are there any tools to help me understand what's going on inside AsciiDoc? - -AsciiDoc has a built-in trace mechanism which is controlled by the -'trace' attribute; there is also the `--verbose` command-line option. -These features are detailed in -http://www.methods.co.nz/asciidoc/userguide.html#X82[Appendix G of the -User Guide]. - - -== One-liner ifdef::[]'s are disproportionately verbose can they shortened? - -This is the response to a question posted on the AsciiDoc discussion -list, it illustrates a number of useful techniques. The question arose -because the source highlight filter language identifier for the C++ -language is `c++` when generating PDFs via dblatex (LaTeX listings -package) or `cpp` when generating HTML (GNU source-highlight). - -Using straight `ifdef::[]` block macros we have: - -[listing] -......................................... -\ifdef::basebackend-docbook[] -[source,c++] -\endif::basebackend-docbook[] -\ifdef::basebackend-html[] -[source,cpp] -\endif::basebackend-html[] ------------------------------------------ -class FooParser { -public: - virtual void startDocument() = 0; - virtual void endDocument() = 0; -}; ------------------------------------------ -......................................... - - -This can be shortened using the short form of the `ifdef::[]` macro: - -[listing] -......................................... -\ifdef::basebackend-docbook[[source,c++]] -\ifdef::basebackend-html[[source,cpp]] ------------------------------------------ -class FooParser { -public: - virtual void startDocument() = 0; - virtual void endDocument() = 0; -}; ------------------------------------------ -......................................... - - -Using a conditional attribute instead of the `ifdef::[]` macro is even -shorter: - -[listing] -......................................... -[source,{basebackend@docbook:c++:cpp}] ------------------------------------------ -class FooParser { -public: - virtual void startDocument() = 0; - virtual void endDocument() = 0; -}; ------------------------------------------ -......................................... - - -If you have a number of listings it makes sense to factor the -conditional attribute to a normal attribute: - -[listing] -......................................... -:cpp: {basebackend@docbook:c++:cpp} - -[source,{cpp}] ------------------------------------------ -class FooParser { -public: - virtual void startDocument() = 0; - virtual void endDocument() = 0; -}; ------------------------------------------ -......................................... - - -Even shorter, set the default source highlight filter `language` -attribute so you don't have to specify it every time: - -[listing] -......................................... -:language: {basebackend@docbook:c++:cpp} - -[source] ------------------------------------------ -class FooParser { -public: - virtual void startDocument() = 0; - virtual void endDocument() = 0; -}; ------------------------------------------ -......................................... - - -== Some of my inline passthroughs are not passed through, why? - -Most likely the passthrough encloses another passthrough with a higher -precedence. For example trying to render this +\pass:[]+ with this -+\`\pass:[]`+ results in a blank string because the +\pass:[]+ -passthrough evaluates first, instead use monospaced quoting and escape -the passthrough i.e. ++ \+\\pass:[]+ ++ - - -== How can I place an anchor (link target) on a list item? - -You can't use a 'BlockId' block element inside a list but you can use -the syntactically identical 'anchor' inline macro. For example: - ---------------------- -one:: Item one. -[[X2]]two:: Item two. -three:: Item three. ---------------------- - -This *will not* work: - ---------------------- -one:: Item one. -[[X2]] -two:: Item two. -three:: Item three. ---------------------- - - -== How can I stop lists from nesting? - -If you place two lists with different syntax hard up against each -other then the second list will be nested in the first. If you don't -want the second list to be nested separate them with a comment line -block macro. For example: - -------------------- -1. List 1. -2. List 1. - -// -a. List 2. -b. List 2. -------------------- - - -== Is it possible to include charts in AsciiDoc documents? - -There are a number of programs available that generate presentation -charts from textual specification, for example -http://home.gna.org/pychart/[Pychart] is a library for writing chart -scripts in Python. Here's an example from the 'Pychart' documentation: - -.barchart.py ---------------------------------------------------------------------- -# -# Example bar chart (from Pychart documentation http://home.gna.org/pychart/). -# -from pychart import * -theme.get_options() - -data = [(10, 20, 30, 5), (20, 65, 33, 5), (30, 55, 30, 5), (40, 45, 51, 7), - (50, 25, 27, 3), (60, 75, 30, 5), (70, 80, 42, 5), (80, 62, 32, 5), - (90, 42, 39, 5), (100, 32, 39, 4)] - -# The attribute y_coord=... tells that the Y axis values -# should be taken from samples. -# In this example, Y values will be [40,50,60,70,80]. -ar = area.T(y_coord = category_coord.T(data[3:8], 0), - x_grid_style=line_style.gray50_dash1, - x_grid_interval=20, x_range = (0,100), - x_axis=axis.X(label="X label"), - y_axis=axis.Y(label="Y label"), - bg_style = fill_style.gray90, - border_line_style = line_style.default, - legend = legend.T(loc=(80,10))) - -# Below call sets the default attributes for all bar plots. -chart_object.set_defaults(bar_plot.T, direction="horizontal", data=data) - -# Attribute cluster=(0,3) tells that you are going to draw three bar -# plots side by side. The plot labeled "foo" will the leftmost (i.e., -# 0th out of 3). Attribute hcol tells the column from which to -# retrive sample values from. It defaults to one. -ar.add_plot(bar_plot.T(label="foo", cluster=(0,3))) -ar.add_plot(bar_plot.T(label="bar", hcol=2, cluster=(1,3))) -ar.add_plot(bar_plot.T(label="baz", hcol=3, cluster=(2,3))) -ar.draw() ---------------------------------------------------------------------- - -To execute the script and include the generated chart image in your -document add the following lines to the AsciiDoc source: - ---------------------------------------------------------------------- -// Generate chart image file. -\sys2::[python "{indir}/barchart.py" --format=png --output="{outdir}/barchart.png" --scale=2] - -// Display chart image file. -image::barchart.png[] ---------------------------------------------------------------------- - -[NOTE] -===================================================================== -- The `barchart.py` script is located in the same directory as the - AsciiDoc source file (`{indir}`). -- The generated chart image file (`barchart.png`) is written to the - same directory as the output file (`{outdir}`). -===================================================================== - - -== How can I render indented paragraphs? - -Styling is backend dependent: - -[float] -==== Create an indented paragraph style (xhtml11 and html5 backends) -. Define an 'indented' paragraph style, for example, by putting this - in a custom configuration file: -+ ---------------------------------------------------------------------- -[paradef-default] -indented-style=template="indentedparagraph" - -[indentedparagraph] -
{title?
{title}
}

-| -

---------------------------------------------------------------------- - -. Now apply the 'indented' style to normal paragraphs, for example: -+ ---------------------------------------------------------------------- -[indented] -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas -ultrices justo porttitor augue. Vestibulum pretium. Donec porta -vestibulum mi. Aliquam pede. Aenean lobortis lorem et lacus. Sed -lacinia. Vivamus at lectus. ---------------------------------------------------------------------- - -[float] -==== Use the role attribute (xhtml11 and html5 backends) -. Add the following line to custom stylesheet: -+ ---------------------------------------------------------------------- -div.paragraph.indented p {text-indent: 3em;} ---------------------------------------------------------------------- - -. Apply the 'role' attribute to indented paragraphs, for example: -+ ---------------------------------------------------------------------- -[role="indented"] -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas -ultrices justo porttitor augue. Vestibulum pretium. Donec porta -vestibulum mi. Aliquam pede. Aenean lobortis lorem et lacus. Sed -lacinia. Vivamus at lectus. ---------------------------------------------------------------------- - -. Include the custom stylesheet by setting the 'stylesheet' attribute - (either from the command-line or with an attribute entry in the - document header). - -[float] -==== Use the role attribute (docbook backend) -. Add the following line to the distributed `docbook-xsl.css` - stylesheet or include it in a custom stylesheet: -+ ---------------------------------------------------------------------- -p.indented {text-indent: 3em;} ---------------------------------------------------------------------- - -. Apply the 'role' attribute to indented paragraphs, for example: -+ ---------------------------------------------------------------------- -[role="indented"] -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas -ultrices justo porttitor augue. Vestibulum pretium. Donec porta -vestibulum mi. Aliquam pede. Aenean lobortis lorem et lacus. Sed -lacinia. Vivamus at lectus. ---------------------------------------------------------------------- - -. If you have included the custom CSS in a separate stylesheet you - will need to specify the stylesheet file name (along with the - default `docbook-xsl.css` stylesheet file name) with the - `html.stylesheet` XSL parameter. If you are using 'a2x(1)' use the - `--stylesheet` option (it sets the `html.stylesheet` XSL parameter), - for example: `--stylesheet "docbook-xsl.css mycss.css"`. - -NOTE: This applies to HTML outputs not PDF. To achieve the same -results with PDF outputs you will need to customize the DocBook XSL -Stylesheets to render indented paragraphs from DocBook `simpara` -elements containing the the `role="indented"` attribute. - - -== Is there a way to set default table grid and frame attributes? - -You can set the 'grid' and 'frame' attributes globally in your -document header with Attribute Entries or from the command-line using -the `--attribute` option. In the following example tables that don't -explicitly set the 'grid' and 'frame' values will default to 'all' and -'topbot' respectively: - ---------------------------------------------------------------------- -:grid: all -:frame: topbot ---------------------------------------------------------------------- - -TIP: This technique can be applied to any block element attribute -(just beware of possible ambiguity, for example, table and image -blocks both have a 'width' attribute). - - -== How can I place a backslash character in front of an attribute reference without escaping the reference? - -Use the predefined `{backslash}` attribute reference instead of an -actual backslash, for example if the `{projectname}` attribute has -the value `foobar` then: - - d:\data{backslash}{projectname} - -would be rendered as: - - d:\data\foobar - -== How can I escape AsciiDoc markup? - -Most AsciiDoc inline elements can be suppressed by preceding them with -a backslash character. These elements include: - -- Attribute references. -- Text formatting. -- Quoting, -- Macros. -- Replacements. -- Special words. -- Table cell separators. - -But there are exceptions -- see the next question. - - -== Some elements can't be escaped with a single backslash - -There are a number of exceptions to the usual single backslash rule --- mostly relating to URL macros that have two syntaxes or quoting -ambiguity. Here are some non-standard escape examples: - -[cols="l,v",width="40%",frame="topbot",options="header"] -|======================================== -|AsciiDoc | Renders - -2*| -\srackham@methods.co.nz -<\srackham@methods.co.nz> -\mailto:[\srackham@methods.co.nz] - -2*| -\http://www.foo1.co.nz -\\http://www.foobar.com[] -\\http://www.foobar.com[Foobar Limited] - -2*| -A C\++ Library for C++ -\\``double-quotes'' -\*\*F**ile Open\... -|======================================== - -The source of this problem is ambiguity across substitution types -- -the first match unescapes allowing the second to substitute. A -work-around for difficult cases is to side-step the problem using the -+\pass:[]+ passthrough inline macro. - -NOTE: Escaping is unnecessary inside 'inline literal passthroughs' -(backtick quoted text). - - -== How can I escape a list? -Here's how to handle situations where the first line of a paragraph is -mistaken for a list item. - -[float] -==== Numbered and bulleted lists -Precede the bullet or index of the first list item with an `{empty}` -attribute, for example: - - {empty}- Qui in magna commodo est labitur dolorum an. Est ne magna - primis adolescens. - -The predefined `{empty}` attribute is replaced by an empty string and -ensures the first line is not mistaken for a bulleted list item. - -[float] -==== Labeled lists -Two colons or semicolons in a paragraph may be confused with a labeled -list entry. Use the predefined `{two-colons}` and `{two-semicolons}` -attributes to suppress this behavior, for example: - - Qui in magna commodo{two-colons} est labitur dolorum an. Est ne - magna primis adolescens. - -Will be rendered as: - -Qui in magna commodo{two-colons} est labitur dolorum an. Est ne -magna primis adolescens. - - -== How can I set default list and tables styles? - -You can set the element's 'style' entry in a global or custom -configuration file. - -This example this will horizontally style all labeled lists that don't -have an explicit style attribute: - ----------------------------------- -[listdef-labeled] -style=horizontal - -[listdef-labeled2] -style=horizontal ----------------------------------- - -This example will put a top and bottom border on all tables that don't -already have an explicit style attribute: - ----------------------------------- -[tabledef-default] -style=topbot -topbot-style=frame="topbot" ----------------------------------- - -Alternatively you can set the configuration entries from inside your -document, the above examples are equivalent to: - ----------------------------------- -:listdef-labeled.style: horizontal -:listdef-labeled2.style: horizontal - -:tabledef-default.topbot-style: frame="topbot" -:tabledef-default.style: topbot ----------------------------------- - - -== Why do I get a filter non-zero exit code error? - -An error was returned when AsciiDoc tried to execute an external -filter command. The most common reason for this is that the filter -command could not be found by the command shell. To figure out what -the problem is run AsciiDoc with the `--verbose` option to determine -the command that is failing and then try to run the command manually -from the command-line. - - -== Are there any DocBook viewers? - -http://live.gnome.org/Yelp[Yelp], the GNOME help viewer, does a -creditable job of displaying DocBook XML files directly. - - -== Can you create ODF and PDF files using LibreOffice? - -https://www.libreoffice.org/[LibreOffice] can convert HTML produced by -AsciiDoc to ODF text format and PDF format (I used LibreOffice 3.5 at -the time of writing, the fidelity is very good but it's not perfect): - -. Create the HTML file using AsciiDoc, for example: - - asciidoc -a icons -a numbered -a disable-javascript article.txt -+ -JavaScript is disabled because LibreOffice does not execute -JavaScript, this means that AsciiDoc table of contents and footnotes -will not be rendered into ODF (if you want the table of contents and -footnotes you could manually cut and paste them from a Web browser). - -. Convert the HTML file to an ODF text file using LibreOffice: - - lowriter --invisible --convert-to odt article.html -+ --- -The images imported from an HTML file will be linked, if your document -contains images you should convert them to embedded images: - -[lowerroman] -. Open the document in LibreOffice Writer. -. Run the 'Edit->Links...' menu command. -. Select all links and press the 'Break Link' button. - -Some images may also have been resized. To restore an image to its -original size: - -[lowerroman] -. Right-click on the image and select the 'Picture...' menu item. -. Click on the 'Crop' tab. -. Press the 'Original Size' button. - --- - -. Convert the ODF file to an PDF text file using LibreOffice: - - lowriter --invisible --convert-to pdf article.odt -+ -A PDF index is automatically created using the section headings. - -Alternatively you could manually copy-and-paste the entire document -from a Web browser into a blank ODF document in LibreOffice -- this -technique will bring through the table of contents and footnotes. - -This tip was originally contributed by Bernard Amade. - - -== How can I suppress cell separators in included table data files? - -Use the `{include:}` system attribute instead of the `include::[]` -macro (the former is not expanded until after the table data has been -parsed into cells, whereas the latter is included before the table is -processed. - - -== How can I preserve paragraph line boundaries? - -Apply the The 'verse' paragraph style, the rendered text preserves -line boundaries and is useful for lyrics and poems. For example: - ---------------------------------------------------------------------- -[verse] -Consul *necessitatibus* per id, -consetetur, eu pro everti postulant -homero verear ea mea, qui. ---------------------------------------------------------------------- - -Alternatively, if you are generating PDF files, you can use line -breaks. For example: - ---------------------------------------------------------------------- -Consul *necessitatibus* per id, + -consetetur, eu pro everti postulant + -homero verear ea mea, qui. ---------------------------------------------------------------------- - - -== How can I include non-breaking space characters? - -Use the non-breaking space character entity reference ` ` (see -the next question). You could also use the predefined `{nbsp}` -attribute reference. - - -== Can I include HTML and XML character entity references in my document? - -Yes, just enter the reference in your document. For example `β` -will print a Greek small beta character β - - -[[X1]] -== How do I include spaces in URLs? - -URL inline macro targets (addresses) cannot contain white space -characters. If you need spaces encode them as `%20`. For example: - - image:large%20image.png[] - http://www.foo.bar.com/an%20example%20document.html - - -== How can I get AsciiDoc to assign the correct DocBook language attribute? - -Set the AsciiDoc 'lang' attribute to the appropriate language code. -For example: - - a2x -a lang=es doc/article.txt - -This will ensure that downstream DocBook processing will generate the -correct language specific document headings (things like table of -contents, revision history, figure and table captions, admonition -captions). - - -== How can I turn off table and image title numbering? -For HTML outputs set the 'caption' attribute to an empty string, -either globally: - -------------------------- -:caption: -------------------------- - -or on an element by element basis, for example: - -------------------------- -.Tiger -[caption=""] -image::images/tiger.png[] -------------------------- - - -== How can I assign multiple author names? - -A quick way to do this is put both authors in a single first name, for -example: - ---------------------------------------- -My Document -=========== -:Author: Bill_and_Ben_the_Flowerpot_Men -:Author Initials: BB & BC ---------------------------------------- - -asciidoc(1) replaces the underscores with spaces. - -If you are generating DocBook then a more flexible approach is to -create a 'docinfo' file containing a DocBook 'authorgroup' element -(search the 'User Guide' for 'docinfo' for more details). - - -== How can I selectively disable a quoted text substitution? - -Omitting the tag name will disable quoting. For example, if you don't -want superscripts or subscripts then put the following in a custom -configuration file or edit the global `asciidoc.conf` configuration -file: - -------------------- -[quotes] -^= -~= -------------------- - -Alternatively you can set the configuration entries from within your -document, the above examples are equivalent to: - -------------------- -:quotes.^: -:quotes.~: -------------------- - - -== How can I customize the \{localdate} format? - -The default format for the `{localdate}` attribute is the ISO 8601 -`yyyy-mm-dd` format. You can change this format by explicitly setting -the `{localdate}` attribute. For example by setting it using the -asciidoc(1) `-a` command-line option: - - asciidoc -a localdate=`date +%d-%m-%Y` mydoc.txt - -You could also set it by adding an Attribute Entry to your source -document, for example: - - :localdate: {sys: date +%Y-%m-%d} - - -== Where can I find examples of commands used to build output documents? - -The User Guide has some. You could also look at `./doc/main.aap` and -`./examples/website/main.aap` in the AsciiDoc distribution, they have -all the commands used to build the AsciiDoc documentation and the -AsciiDoc website (even if you don't use A-A-P you'll still find it -useful). - - -== Why have you used the DocBook element instead of ? - -`` is really the same as `` except it can't contain -block elements -- this matches, more closely, the AsciiDoc paragraph -semantics. - - -== How can I format text inside a listing block? - -By default only 'specialcharacters' and 'callouts' are substituted in -listing blocks; you can add quotes substitutions by explicitly setting -the block 'subs' attribute, for example: - -[listing] -.......................................... -[subs="quotes"] ------------------------------------------- -$ ls *-al* ------------------------------------------- -.......................................... - -The `-al` will rendered bold. Note that: - -- You would need to explicitly escape text you didn't want quoted. -- Don't do this in source code listing blocks because it modifies the - source code which confuses the syntax highlighter. -- This only works if your DocBook processor recognizes DocBook - `` elements inside `` elements. - -Alternative, if the lines are contiguous, you could use the 'literal' -paragraph style: - ------------------------------------------- -["literal",subs="quotes"] -$ ls *-al* ------------------------------------------- - - -== Why doesn't the include1::[] macro work? - -Internally the `include1` macro is translated to the `include1` system -attribute which means it must be evaluated in a region where attribute -substitution is enabled. `include1` won't work, for example, in a -ListingBlock (unless attribute substitution is enabled). `include1` -is intended for use in configuration files, use the `include` macro -and set the attribute `depth=1` instead, for example: - -[listing] -................................................ ------------------------------------------------- -\include::blogpost_media_processing.txt[depth=1] ------------------------------------------------- -................................................ - - -== How can I make the mailto macro work with multiple email addresses? - -For the AsciiDoc 'mailto' macro to work with multiple email addresses -(as per RFC2368) you need to URL encode the '@' characters (replace -them with '%40'), if you don't the individual addresses will be -rendered as separate links. You also need to <>. - -For example, the following call won't work: - - mailto:jb@foobar.com,jd@acme.co.nz?subject=New foofoo release[New foofoo release] - -Use this instead: - - mailto:jb%40foobar.com,jd%40acme.co.nz?subject=New%20foofoo%20release[New foofoo release] - - -== How can a replacement have a trailing backslash? -Quote the entry name -- this nonsensical example replaces `x\` with -`y`: - - "x\\"=y - -If quoting were omitted the equals character (separating the -entry name `x` from the value `y`) would be escaped. - - -== How can I control page breaks when printing HTML outputs? -Here are some techniques you can use to control page breaks in HTML -outputs produced by the 'xhtml11' and 'html5' backends: - -- You can generate a page break with the '<<<' block macro. The - following example prints the 'Rats and Mice' section on a new page: -+ ----------------- -<<< -== Rats and Mice -Lorum ipsum ... ----------------- - -- You can use the 'unbreakable' option to instruct the browser not to - break a block element. The following image and it's caption will be - kept together the printed page: -+ ------------------------------------- -[options="unbreakable"] -.Tiger block image -image::images/tiger.png[Tiger image] ------------------------------------- - -- You can apply the 'unbreakable' option globally to all block - elements by defining the 'unbreakable-option' attribute in your - document header. - -- Finally, the most powerful technique is to create custom CSS - containing paged media properties. For example this asciidoc(1) - command: -+ --- - - asciidoc --attribute stylesheet=article.css article.txt - -Will include the following `article.css` file in the output document: - -------------------------------------------------- -div#toc, div.sect1 { page-break-before: always; } -------------------------------------------------- - -Which will ensure the table of contents and all top level sections -start on a new printed page. --- - - -== Is it possible to reposition the Table of Contents in HTML outputs? -By default the 'xhtml11' and 'html5' backends auto-position the TOC -after the header. You can manually position the TOC by setting the -'toc-placement' attribute value to 'manual' and then inserting the -`toc::[]` block macro where you want the TOC to appear. For example, -put this in the document header: - ----------------------- -:toc: -:toc-placement: manual ----------------------- - -The put this where you want the TOC to appear: - -------- -toc::[] -------- - - -== HTML generated by AsciiDoc fills the width of the browser, how can I limit it to a more readable book width? -You can set the maximum with for outputs generated by 'html5', -'xhtml11' and 'slidy' backends by assigning the -link:userguide.html#X103[max-width] attribute (either from the -command-line or with an attribute entry in the document header). For -example: - - asciidoc -a max-width=55em article.txt - - -== Using roles to select fonts for PDF -Some applications require mixing fonts beyond the set of faces -normally provided by default (normal, monospace, italic etc.) for -example mixed language text where the font used for the majority of -text does not contain suitable glyphs in the minority language. - -As AsciiDoc can not provide presentation markup since it is not -provided by Docbook this is achieved by marking text which should use -a different font with a custom role which can be rendered by the the -docbook toolchain. - -NOTE: For XHTML outputs AsciiDoc translates the role attribute to a -class which can be selected and styled by CSS as described in the -AsciiDoc users guide. - -The Docbook toolchains will have to be configured to render the text -that you mark with the custom role. - -For FOP a small XSL wrapper is needed, say a file called `my_fo.xsl` -containing: - ---------------------------------------------------------------- - - - - - - - - ---------------------------------------------------------------- - -This is used with `a2x` by: - - a2x -f pdf --fop --xsl-file=my_fo.xsl input.txt - -and the AsciiDoc source marked by: - - normal text [f2]#special font is like this# and back to normal - -Thanks to Antonio Borneo for this answer. - - -== How can I place a footnote immediately following quoted text? -A closing quote is not recognised if it is immediately followed by a -letter (the 'f' in 'footnote' in the following example): - - ``Double-quoted text''footnote:[Lorum ipsum...] - -A workaround is to put a word-joiner between the trailing quote -and the footnote (the `{empty}` attribute would also work), for -example: - - ``Double-quoted text''{wj}footnote:[Lorum ipsum...] - diff --git a/source-builder/sb/asciidoc/examples/website/images/highlighter.png b/source-builder/sb/asciidoc/examples/website/images/highlighter.png deleted file mode 100644 index b311459..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/highlighter.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/README b/source-builder/sb/asciidoc/examples/website/images/icons/README deleted file mode 100644 index f12b2a7..0000000 --- a/source-builder/sb/asciidoc/examples/website/images/icons/README +++ /dev/null @@ -1,5 +0,0 @@ -Replaced the plain DocBook XSL admonition icons with Jimmac's DocBook -icons (http://jimmac.musichall.cz/ikony.php3). I dropped transparency -from the Jimmac icons to get round MS IE and FOP PNG incompatibilies. - -Stuart Rackham diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/1.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/1.png deleted file mode 100644 index 7d47343..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/1.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/10.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/10.png deleted file mode 100644 index 997bbc8..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/10.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/11.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/11.png deleted file mode 100644 index ce47dac..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/11.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/12.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/12.png deleted file mode 100644 index 31daf4e..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/12.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/13.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/13.png deleted file mode 100644 index 14021a8..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/13.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/14.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/14.png deleted file mode 100644 index 64014b7..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/14.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/15.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/15.png deleted file mode 100644 index 0d65765..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/15.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/2.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/2.png deleted file mode 100644 index 5d09341..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/2.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/3.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/3.png deleted file mode 100644 index ef7b700..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/3.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/4.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/4.png deleted file mode 100644 index adb8364..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/4.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/5.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/5.png deleted file mode 100644 index 4d7eb46..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/5.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/6.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/6.png deleted file mode 100644 index 0ba694a..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/6.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/7.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/7.png deleted file mode 100644 index 472e96f..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/7.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/8.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/8.png deleted file mode 100644 index 5e60973..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/8.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/9.png b/source-builder/sb/asciidoc/examples/website/images/icons/callouts/9.png deleted file mode 100644 index a0676d2..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/callouts/9.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/caution.png b/source-builder/sb/asciidoc/examples/website/images/icons/caution.png deleted file mode 100644 index 9a8c515..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/caution.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/example.png b/source-builder/sb/asciidoc/examples/website/images/icons/example.png deleted file mode 100644 index 1199e86..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/example.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/home.png b/source-builder/sb/asciidoc/examples/website/images/icons/home.png deleted file mode 100644 index 37a5231..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/home.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/important.png b/source-builder/sb/asciidoc/examples/website/images/icons/important.png deleted file mode 100644 index be685cc..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/important.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/next.png b/source-builder/sb/asciidoc/examples/website/images/icons/next.png deleted file mode 100644 index 64e126b..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/next.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/note.png b/source-builder/sb/asciidoc/examples/website/images/icons/note.png deleted file mode 100644 index 7c1f3e2..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/note.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/prev.png b/source-builder/sb/asciidoc/examples/website/images/icons/prev.png deleted file mode 100644 index 3e8f12f..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/prev.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/tip.png b/source-builder/sb/asciidoc/examples/website/images/icons/tip.png deleted file mode 100644 index f087c73..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/tip.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/up.png b/source-builder/sb/asciidoc/examples/website/images/icons/up.png deleted file mode 100644 index 2db1ce6..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/up.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/icons/warning.png b/source-builder/sb/asciidoc/examples/website/images/icons/warning.png deleted file mode 100644 index d41edb9..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/icons/warning.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/smallnew.png b/source-builder/sb/asciidoc/examples/website/images/smallnew.png deleted file mode 100644 index 411c2e1..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/smallnew.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/images/tiger.png b/source-builder/sb/asciidoc/examples/website/images/tiger.png deleted file mode 100644 index 332b11f..0000000 Binary files a/source-builder/sb/asciidoc/examples/website/images/tiger.png and /dev/null differ diff --git a/source-builder/sb/asciidoc/examples/website/index.txt b/source-builder/sb/asciidoc/examples/website/index.txt deleted file mode 100644 index 1967b2d..0000000 --- a/source-builder/sb/asciidoc/examples/website/index.txt +++ /dev/null @@ -1,510 +0,0 @@ -AsciiDoc Home Page -================== -// Web page meta data. -:keywords: AsciiDoc, DocBook, EPUB, PDF, ebooks, slideshow, slidy, man page -:description: AsciiDoc is a text document format for writing notes, + - documentation, articles, books, ebooks, slideshows, + - web pages, man pages and blogs. AsciiDoc files can be + - translated to many formats including HTML, PDF, EPUB, + - man page. - - -.{revdate}: AsciiDoc {revnumber} Released -************************************************************************ -Read the link:CHANGELOG.html[CHANGELOG] for release highlights and a -full list of all additions, changes and bug fixes. Changes are -documented in the updated link:userguide.html[User Guide]. See the -link:INSTALL.html[Installation page] for downloads and and -installation instructions. - -'Stuart Rackham' -************************************************************************ - -Introduction ------------- -{description} - -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. - -AsciiDoc is free software and is licenced under the terms of the 'GNU -General Public License version 2' (GPLv2). - -TIP: The pages you are reading 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, EPUB, DVI, LaTeX, roff, and Postscript -using readily available Open Source tools. - -Example Articles -~~~~~~~~~~~~~~~~ -- This XHTML 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]. - -- AsciiDoc generated this link:article-standalone.html[stand-alone - HTML file] containing embedded CSS, JavaScript and images from this - link:article.txt[AsciiDoc article template] with this command: - - asciidoc -a data-uri -a icons -a toc -a max-width=55em article.txt - -- The same link:article.txt[AsciiDoc article template] generated - link:article-html5-toc2.html[this HTML 5] (the 'toc2' attribute puts - a table of contents in the left margin) from this command: - - asciidoc -b html5 -a icons -a toc2 -a theme=flask article.txt - -- The same 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. - -[[X7]] -Example Books -~~~~~~~~~~~~~ -AsciiDoc markup supports all the standard DocBook frontmatter and -backmatter sections (dedication, preface, bibliography, glossary, -index, colophon) plus footnotes and index entries. - -- This link:book.txt[AsciiDoc book] produced link:book.html[this HTML - file] using the 'DocBook XSL Stylesheets'. -- The link:asciidoc.pdf[PDF formatted AsciiDoc User Guide] was - generated from asciidoc(1) DocBook output. -- The link:asciidoc.epub[EPUB formatted AsciiDoc User Guide] was - generated using link:a2x.1.html[a2x]. -- This link:book.epub[EPUB formatted book skeleton] was generated - using link:a2x.1.html[a2x]. -- This link:book-multi.txt[multi-part AsciiDoc book] 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. - -[[X8]] -Example Slideshows -~~~~~~~~~~~~~~~~~~ -The http://www.w3.org/Talks/Tools/Slidy2/[Slidy] backend generates -HTML slideshows that can be viewed in any web browser. What's nice is -that you can create completely self contained slideshows including -embedded images. - -- Here is the link:slidy.html[slidy backend documentation] slideshow - and here is it's link:slidy.txt[AsciiDoc source]. -- An link:slidy-example.html[example slidy slideshow] and the - link:slidy-example.txt[AsciiDoc source]. - -Example Web Site -~~~~~~~~~~~~~~~~ -The link:README-website.html[AsciiDoc website] is included in the -AsciiDoc distribution (in `./examples/website/`) as an example website -built using AsciiDoc. See `./examples/website/README-website.txt`. - -More examples -~~~~~~~~~~~~~ -- See below: <>. -- Example link:newtables.html[Tables]. - - -eBook Publication ------------------ -The two most popular open eBook formats are -http://en.wikipedia.org/wiki/EPUB[EPUB] and PDF. -The AsciiDoc link:a2x.1.html[a2x] toolchain wrapper makes it easy to -link:publishing-ebooks-with-asciidoc.html[publish EPUB and PDF eBooks -with AsciiDoc]. See also <> and -link:epub-notes.html[AsciiDoc EPUB Notes]). - - -Blogpost weblog client ----------------------- -http://srackham.wordpress.com/blogpost-readme/[blogpost] is a -command-line weblog client for publishing AsciiDoc documents to -http://wordpress.org/[WordPress] blog hosts. It creates and updates -weblog posts and pages directly from AsciiDoc source documents. - - -Source code highlighter ------------------------ -AsciiDoc includes a link:source-highlight-filter.html[source code -highlighter filter] that uses -http://www.gnu.org/software/src-highlite/[GNU source-highlight] to -highlight HTML outputs. You also have the option of using the -http://pygments.org/[Pygments] highlighter. - - -[[X3]] -Mathematical Formulae ---------------------- -You can include mathematical formulae in AsciiDoc XHTML documents using -link:asciimathml.html[ASCIIMathML] or link:latexmathml.html[LaTeXMathML] -notation. - -The link:latex-filter.html[AsciiDoc LaTeX filter] translates LaTeX -source to a PNG image that is automatically inserted into the AsciiDoc -output documents. - -AsciiDoc also has 'latexmath' macros for DocBook outputs -- they are -documented in link:latexmath.pdf[this PDF file] and can be used in -AsciiDoc documents processed by `dblatex(1)`. - - -Editor Support --------------- -- An AsciiDoc syntax highlighter for the Vim text editor is included in the - AsciiDoc distribution (see 'Appendix F' of the 'AsciiDoc User Guide' for - details). -+ -.Syntax highlighter screenshot -image::images/highlighter.png[height=400,caption="",link="images/highlighter.png"] - -- Dag Wieers has implemented an alternative Vim syntax file for - AsciiDoc which can be found here - http://svn.rpmforge.net/svn/trunk/tools/asciidoc-vim/. -- David Avsajanishvili has written a source highlighter for AsciiDoc - files for http://projects.gnome.org/gtksourceview/[GtkSourceView] - (used by http://projects.gnome.org/gedit/[gedit] and a number of - other applications). The project is hosted here: - https://launchpad.net/asciidoc-gtk-highlight -- Florian Kaufman has written 'adoc-mode.el' -- a major-mode for - editing AsciiDoc files in Emacs, you can find it - http://code.google.com/p/sensorflo-emacs/[here]. -- The http://xpt.sourceforge.net/[*Nix Power Tools project] has - released an http://xpt.sourceforge.net/tools/doc-mode/[AsciiDoc - syntax highlighter for Emacs]. -- Terrence Brannon has written - http://github.com/metaperl/asciidoc-el[AsciiDoc functions for - Emacs]. -- Christian Zuckschwerdt has written a - https://github.com/zuckschwerdt/asciidoc.tmbundle[TextMate bundle] - for AsciiDoc. - - -Try AsciiDoc on the Web ------------------------ -Andrew Koster has written a Web based application to interactively -convert and display AsciiDoc source: -http://andrewk.webfactional.com/asciidoc.php - - -[[X2]] -External Resources and Applications ------------------------------------ -Here are resources that I know of, if you know of more drop me a line -and I'll add them to the list. - -- Check the link:INSTALL.html#X2[installation page] for packaged versions - of AsciiDoc. -- Alex Efros has written an HTML formatted - http://powerman.name/doc/asciidoc[AsciiDoc Cheatsheet] using - Asciidoc. -- Thomas Berker has written an - http://liksom.info/blog/?q=node/114[AsciiDoc Cheatsheet] in Open - Document and PDF formats. -- The http://www.wikimatrix.org/[WikiMatrix] website has an excellent - http://www.wikimatrix.org/syntax.php[web page] that compares the - various Wiki markup syntaxes. An interesting attempt at Wiki markup - standardization is http://www.wikicreole.org/[CREOLE]. -- Franck Pommereau has written - http://www.univ-paris12.fr/lacl/pommereau/soft/asciidoctest.html[Asciidoctest], - a program that doctests snippets of Python code within your Asciidoc - documents. -- The http://remips.sourceforge.net/[ReMIPS] project website has been - built using AsciiDoc. -- Here are some link:asciidoc-docbook-xsl.html[DocBook XSL Stylesheets - Notes]. -- Karl Mowatt-Wilson has developed an http://ikiwiki.info/[ikiwiki] - plugin for AsciiDoc which he uses to render - http://mowson.org/karl[his website]. The plugin is available - http://www.mowson.org/karl/colophon/[here] and there is some - discussion of the ikiwiki integration - http://ikiwiki.info/users/KarlMW/discussion/[here]. -- Glenn Eychaner has - http://groups.google.com/group/asciidoc/browse_thread/thread/bf04b55628efe214[reworked - the Asciidoc plugin for ikiwiki] that was created by Karl Mowson, - the source can be downloaded from - http://dl.dropbox.com/u/11256359/asciidoc.pm -- David Hajage has written an AsciiDoc package for the - http://www.r-project.org/[R Project] (R is a free software - environment for statistical computing). 'ascii' is available on - 'CRAN' (just run `install.package("ascii")` from R). Briefly, - 'ascii' replaces R results in AsciiDoc document with AsciiDoc - markup. More information and examples here: - http://eusebe.github.com/ascii/. -- 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. -- Jared Henley has written - http://jared.henley.id.au/software/awb/documentation.html[AsciiDoc - Website Builder]. 'AsciiDoc Website Builder' (awb) is a python - program that automates the building of of a website written in - AsciiDoc. All you need to write is the AsciiDoc source plus a few - simple configuration files. -- Brad Adkins has written - http://dbixjcl.org/jcl/asciidocgen/asciidocgen.html[AsciiDocGen], a - web site generation and deployment tool that allows you write your - web site content in AsciiDoc. The - http://dbixjcl.org/jcl/asciidocgen/asciidocgen.html[AsciiDocGen web - site] is managed using 'AsciiDocGen'. -- Filippo Negroni has developed a set of tools to facilitate 'literate - programming' using AsciiDoc. The set of tools is called - http://eweb.sourceforge.net/[eWEB]. -- http://vanderwijk.info/2009/4/23/full-text-based-document-generation-using-asciidoc-and-ditaa[Ivo's - blog] describes a http://ditaa.sourceforge.net/[ditaa] filter for - AsciiDoc which converts http://en.wikipedia.org/wiki/ASCII_art[ASCII - art] into graphics. -- http://github.com/github/gollum[Gollum] is a git-powered wiki, it - supports various formats, including AsciiDoc. -- Gregory Romé has written an - http://github.com/gpr/redmine_asciidoc_formatter[AsciiDoc plugin] - for the http://www.redmine.org/[Redmine] project management - application. -- Paul Hsu has started a - http://github.com/paulhsu/AsciiDoc.CHT.userguide[Chinese translation - of the AsciiDoc User Guide]. -- Dag Wieers has written - http://dag.wieers.com/home-made/unoconv/[UNOCONV]. 'UNOCONV' can - export AsciiDoc outputs to OpenOffice export formats. -- Ed Keith has written http://codeextactor.berlios.de/[Code - Extractor], it extracts code snippets from source code files and - inserts them into AsciiDoc documents. -- The http://csrp.iut-blagnac.fr/jmiwebsite/home/[JMI website] hosts - a number of extras for AsciiDoc and Slidy written by Jean-Michel - Inglebert. -- Ryan Tomayko has written an number of - http://tomayko.com/src/adoc-themes/[themes for AsciiDoc] along with - a http://tomayko.com/src/adoc-themes/hacking.html[script for - combining the CSS files] into single CSS theme files for AsciiDoc - embedded CSS documents. -- Ilya Portnov has written a - https://gitorious.org/doc-building-system[document building system - for AsciiDoc], here is - http://iportnov.blogspot.com/2011/03/asciidoc-beamer.html[short - article in Russian] describing it. -- Lex Trotman has written - https://github.com/elextr/codiicsa[codiicsa], a program that - converts DocBook to AsciiDoc. -- Qingping Hou has written http://houqp.github.com/asciidoc-deckjs/[an - AsciiDoc backend for deck.js]. - http://imakewebthings.github.com/deck.js/[deck.js] is a JavaScript - library for building modern HTML presentations (slideshows). -- The guys from O'Reilly Media have posted an - https://github.com/oreillymedia/docbook2asciidoc[XSL Stylesheet to -github] that converts DocBook to AsciiDoc. -- Lex Trotman has written - https://github.com/elextr/flexndex[flexndex], an index generator - tool that be used with AsciiDoc. - -Please let me know if any of these links need updating. - - -[[X6]] -Documents written using AsciiDoc --------------------------------- -Here are some documents I know of, if you know of more drop me a line -and I'll add them to the list. - -- The book http://practicalunittesting.com/[Practical Unit Testing] by - Tomek Kaczanowski was - https://groups.google.com/group/asciidoc/browse_frm/thread/4ba13926262efa23[written - using Asciidoc]. - -- The book http://oreilly.com/catalog/9781449397296[Programming iOS 4] - by Matt Neuburg was written using AsciiDoc. Matt has - http://www.apeth.net/matt/iosbooktoolchain.html[written an article] - describing how he used AsciiDoc and other tools to write the book. - -- The book - http://oreilly.com/catalog/9780596155957/index.html[Programming - Scala] by Dean Wampler and Alex Payne (O'Reilly) was - http://groups.google.com/group/asciidoc/browse_frm/thread/449f1199343f0e27[written - using Asciidoc]. - -- The http://www.ncfaculty.net/dogle/fishR/index.html[fishR] website - has a number of - http://www.ncfaculty.net/dogle/fishR/bookex/AIFFD/AIFFD.html[book - examples] written using AsciiDoc. - -- The Neo4j graph database project uses Asciidoc, and the output is - published here: http://docs.neo4j.org/. The build process includes - live tested source code snippets and is described - http://groups.google.com/group/asciidoc/browse_thread/thread/49d570062fd3ff52[here]. - -- http://frugalware.org/[Frugalware Linux] uses AsciiDoc for - http://frugalware.org/docs[documentation]. -- http://www.cherokee-project.com/doc/[Cherokee documentation]. - -- Henrik Maier produced this professional User manual using AsciiDoc: - http://www.proconx.com/assets/files/products/modg100/UMMBRG300-1101.pdf - -- Henrik also produced this folded single page brochure format - example: - http://www.proconx.com/assets/files/products/modg100/IGMBRG300-1101-up.pdf -+ -See this -http://groups.google.com/group/asciidoc/browse_thread/thread/16ab5a06864b934f[AsciiDoc -discussion group thread] for details. - -- The - http://www.kernel.org/pub/software/scm/git/docs/user-manual.html[Git - User's Manual]. -- 'Git Magic' + - http://www-cs-students.stanford.edu/~blynn/gitmagic/ + - http://github.com/blynn/gitmagic/tree/1e5780f658962f8f9b01638059b27275cfda095c -- 'CouchDB: The Definitive Guide' + - http://books.couchdb.org/relax/ + - http://groups.google.com/group/asciidoc/browse_thread/thread/a60f67cbbaf862aa/d214bf7fa2d538c4?lnk=gst&q=book#d214bf7fa2d538c4 -- 'Ramaze Manual' + - http://book.ramaze.net/ + - http://github.com/manveru/ramaze-book/tree/master -- Some documentation about git by Nico Schottelius (in German) - http://nico.schotteli.us/papers/linux/git-firmen/. -- The http://www.netpromi.com/kirbybase_ruby.html[KirbyBase for Ruby] - database management system manual. -- The http://xpt.sourceforge.net/[*Nix Power Tools project] uses - AsciiDoc for documentation. -- The http://www.wesnoth.org/[Battle for Wesnoth] project uses - AsciiDoc for its http://www.wesnoth.org/wiki/WesnothManual[Manual] - in a number of different languages. -- Troy Hanson uses AsciiDoc to generate user guides for the - http://tpl.sourceforge.net/[tpl] and - http://uthash.sourceforge.net/[uthash] projects (the HTML versions - have a customised contents sidebar). -- http://volnitsky.com/[Leonid Volnitsky's site] is generated using - AsciiDoc and includes Leonid's matplotlib filter. -- http://www.weechat.org/[WeeChat] uses AsciiDoc for - http://www.weechat.org/doc[project documentation]. -- http://www.clansuite.com/[Clansuite] uses AsciiDoc for - http://www.clansuite.com/documentation/[project documentation]. -- The http://fc-solve.berlios.de/[Freecell Solver program] uses - AsciiDoc for its - http://fc-solve.berlios.de/docs/#distributed-docs[distributed - documentation]. -- Eric Raymond's http://gpsd.berlios.de/AIVDM.html[AIVDM/AIVDO - protocol decoding] documentation is written using AsciiDoc. -- Dwight Schauer has written an http://lxc.teegra.net/[LXC HOWTO] in - AsciiDoc. -- The http://www.rowetel.com/ucasterisk/[Free Telephony Project] - website is generated using AsciiDoc. -- Warren Block has http://www.wonkity.com/~wblock/docs/[posted a - number of articles written using AsciiDoc]. -- The http://code.google.com/p/waf/[Waf project's] 'Waf Book' is - written using AsciiDoc, there is an - http://waf.googlecode.com/svn/docs/wafbook/single.html[HTML] and a - http://waf.googlecode.com/svn/docs/wafbook/waf.pdf[PDF] version. -- The http://www.diffkit.org/[DiffKit] project's documentation and - website have been written using Asciidoc. -- The http://www.networkupstools.org[Network UPS Tools] project - http://www.networkupstools.org/documentation.html[documentation] is - an example of a large documentation project written using AsciiDoc. -- http://www.archlinux.org/pacman/[Pacman], the - http://www.archlinux.org/[Arch Linux] package manager, has been - documented using AsciiDoc. -- Suraj Kurapati has written a number of customized manuals for his - Open Source projects using AsciiDoc: - - * http://snk.tuxfamily.org/lib/detest/ - * http://snk.tuxfamily.org/lib/ember/ - * http://snk.tuxfamily.org/lib/inochi/ - * http://snk.tuxfamily.org/lib/rumai/ - -- The http://cxxtest.com/[CxxTest] project (unit testing for C++ - language) has written its User Guide using AsciiDoc. - -Please let me know if any of these links need updating. - - -DocBook 5.0 Backend -------------------- -Shlomi Fish has begun work on a DocBook 5.0 `docbook50.conf` backend -configuration file, you can find it -http://bitbucket.org/shlomif/asciidoc[here]. See also: -http://groups.google.com/group/asciidoc/browse_thread/thread/4386c7cc053d51a9 - - -[[X1]] -LaTeX Backend -------------- -An experimental LaTeX backend was written for AsciiDoc in 2006 by -Benjamin Klum. Benjamin did a superhuman job (I admit it, I didn't -think this was doable due to AsciiDoc's SGML/XML bias). Owning to to -other commitments, Benjamin was unable to maintain this backend. -Here's link:latex-backend.html[Benjamin's original documentation]. -Incompatibilities introduced after AsciiDoc 8.2.7 broke the LaTeX -backend. - -In 2009 Geoff Eddy stepped up and updated the LaTeX backend, thanks to -Geoff's efforts it now works with AsciiDoc 8.4.3. Geoff's updated -`latex.conf` file shipped with AsciiDoc version 8.4.4. The backend -still has limitations and remains experimental (see -link:latex-bugs.html[Geoff's notes]). - -It's probably also worth pointing out that LaTeX output can be -generated by passing AsciiDoc generated DocBook through `dblatex(1)`. - - -Patches and bug reports ------------------------ -Patches and bug reports are are encouraged, but please try to follow -these guidelines: - -- Post bug reports and patches to the - http://groups.google.com/group/asciidoc[asciidoc discussion list], - this keeps things transparent and gives everyone a chance to - comment. -- The email subject line should be a specific and concise topic - summary. Commonly accepted subject line prefixes such as '[ANN]', - '[PATCH]' and '[SOLVED]' are good. - -=== Bug reports -- When reporting problems please illustrate the problem with the - smallest possible example that replicates the issue (and please test - your example before posting). This technique will also help to - eliminate red herrings prior to posting. -- Paste the commands that you executed along with any relevant - outputs. -- Include the version of AsciiDoc and the platform you're running it - on. -- If you can program please consider writing a patch to fix the - problem. - -=== Patches -- Keep patches small and atomic (one issue per patch) -- no patch - bombs. -- If possible test your patch against the current trunk. -- If your patch adds or modifies functionality include a short example - that illustrates the changes. -- Send patches in `diff -u` format, inline inside the mail message is - usually best; if it is a very long patch then send it as an - attachment. -- Include documentation updates if you're up to it; otherwise insert - 'TODO' comments at relevant places in the documentation. - diff --git a/source-builder/sb/asciidoc/examples/website/latex-backend.txt b/source-builder/sb/asciidoc/examples/website/latex-backend.txt deleted file mode 100644 index 32d87df..0000000 --- a/source-builder/sb/asciidoc/examples/website/latex-backend.txt +++ /dev/null @@ -1,192 +0,0 @@ -LaTeX backend for Asciidoc -========================== -Benjamin Klum -v1.0, June 2006 - -== Introduction - - -LaTeX backend is a configuration file for Stuart Rackham's http://www.methods.co.nz/asciidoc/[Asciidoc]. It generates high-level LaTeX markup from Asciidoc documents. LaTeX is a document preparation system for TeX which in turn is a popular typesetting system. It is well known for producing excellently typesetted high quality printouts, especially suited for scientific text. - -== Tutorial -Getting a ready-to-print document from an Asciidoc document using the LaTeX backend involves at least two steps: - -1. Conversion of the Asciidoc document into a LaTeX document (this is done by Asciidoc using the LaTeX backend) -2. Conversion of the LaTeX document into a PDF document (this is done by the TeX system) - -Try to create a PDF document from the Asciidoc document `article.txt` which resides in the `doc` directory of Asciidoc: - -.. Make a copy of `article.txt` in a directory of your choice, let's call it `latex-test`. -.. Make sure that all images referenced in `article.txt` exist in `latex-test`. Brute force approach: Copy the whole `images` directory from Asciidoc directory into `latex-test`. -.. Change directory to `latex-test` and type following commands: -+ - asciidoc --unsafe --backend=latex article.txt - pdflatex article.tex -+ -.. Now there should be a file `article.pdf` in the `latex-test` directory. - -[IMPORTANT] -============================== -- Asciidoc has to be started in 'unsafe mode' when using LaTeX backend. -- Note that some special LaTeX packages are necessary, see <>. -============================== - -== General notes - -=== Quality of LaTeX output -High-level LaTeX is not very straightforward to generate. Therefore there's no guarantee that the generated output is valid and compiles successfully. At all, this backend should be considered as rather experimental. You should have been already in touch with LaTeX in order to use the backend effectively because LaTeX compilation errors can be really nasty. - -Nevertheless good results can be achieved by using LaTeX backend. Try for example to compile Stuart Rackham's Asciidoc documentation, a rather large document. It should compile without problems. However, the code filter might have to be reconfigured for the code filter example to work. - -=== Configuration file customization -Like every other Asciidoc backend the LaTeX backend can be customized easily to fit the user's needs. Actually it is very important to have this option since LaTeX doesn't have a companion language like CSS which allows to put styling information in a separate file. Read more about the LaTeX backend configuration file <>. - -=== Output optimization -The LaTeX output is optimized for creating PDF documents using 'pdflatex'. - -[[unicodeSupport]] -=== Unicode support -Unfortunately TeX/LaTeX does not have native unicode support. The package 'ucs' adds elementary unicode support by introducing UTF-8 input encoding recognition and by defining lookup tables which contain the corresponding LaTeX commands for unicode characters. But these lookup tables are far from being complete. When a unicode character is found which is not defined in the lookup tables an error is raised by the TeX/LaTeX compiler. Note that TeX/LaTeX compilation errors caused by missing unicode character definitions are not fatal, that means the result is probably readable but undefined unicode characters are replaced with `[U+...]`. You may (de)activate the recognition of escaped unicode characters. See the <> backend option. - -== Backend specific features - -=== Special sections - -LaTeX backend supports the following special sections and replaces them with corresponding LaTeX commands or environments: - -- Abstract (only for document type 'article') -- Dedication (only for document type 'book') -- Index -- Bibliography (only when the attribute 'latex-use-bibliography-environment' is set) -- Appendix -- Contents - -[[internalCrossReferences]] -=== Internal cross references - -Macros for internal cross references have been extended by the attribute 'style'. - - xref:[
- -i.e. epub is not generating CSS borders (same for generated th elements). - -Compare this with the (correct) xhtml DocBook XSL generates the correct border -styles: - - - - - -=== epub: htmltoc is not generated -https://sourceforge.net/tracker/?func=detail&aid=2849686&group_id=21935&atid=373747 - -Environment: DocBook XSL 1.75.2; Xubuntu 8.04 - -If DocBook XSL TOC generation is specified the generated -'contents.opf' contains an 'htmltoc' element but the referenced TOC file -is not generated by DocBook XSL. For example the contents.opf contains: - - - -but the actual TOC file `OEBPS/ar01-toc.html` is missing and epubcheck -generates validation errors like: - - ERROR: doc/article.epub: OPS/XHTML file OEBPS/ar01-toc.html is missing - - -=== epub: leading dot in directory name error -https://sourceforge.net/tracker/?func=detail&aid=2849683&group_id=21935&atid=373747 - -Environment: DocBook XSL 1.75.2; Xubuntu 8.04 - -Specifying paths with a leading dot causes problems, for example: - - - -This generates validation errors like: - - ERROR: article.epub/OEBPS/index.html(4): - 'OEBPS/./docbook-xsl.css': referenced resource missing in the package - -The file is in the archive at the correct location, just doesn't -seem to like './' in the path name -- the path needs to be normalized -before being written to the contents.opf. - -It's not just the validator, the file is missing when the EPUB is viewed -(in bookworm). - -This works fine: - - - - -[[X2]] -=== epub: admonition icon images missing from contents.opf -NOTE: A workaround for this problem was added in `a2x(1)` version -8.6.5. - -https://sourceforge.net/tracker/?func=detail&aid=2849681&group_id=21935&atid=373747 - -Environment: DocBook XSL 1.75.2; Xubuntu 8.04 - -When admonition icons are specified epubcheck generates validation -errors like: - - ERROR: article.epub/OEBPS/index.html(4): - 'OEBPS/images/icons/note.png': referenced resource exists, - but not declared in the OPF file - -i.e. The admonition icon is in the EPUB file but DocBook XSL has not -been added to the content.opf manifest. Compare this with callout icons -which are processed correctly. - - -[[X3]] -=== Table width attribute validation error -https://sourceforge.net/tracker/?func=detail&aid=2848734&group_id=21935&atid=373747 - -Environment: DocBook XSL 1.75.2; Xubuntu 8.04 - -I get the following validation errors when navigation headers are in -included in the generated XHTML: - - ERROR: article.epub/OEBPS/ix01.html(3): attribute "width" not allowed - at this point; ignored - -This is because DocBook XSL has emitted invalid XHTML 1.1: tables -using the 'width' element are generated automatically in navigation -headers. - -Though, admittedly, navigation is redundant if you're reading with an -EPUB reader. Suppress by setting the suppress.navigation param to 1. - -Is this a DocBook XSL bug? - - -The Linux zip(1) command ------------------------- -If you use the Linux `zip(1)` command to update or create EPUB files -you must use the `-X`, `--no-extra` command-line option, if you do not -the platform dependent extra fields will confuse `epubcheck(1)` which -will emit errors like ``extra field length for first filename must be -0, but was 28''. diff --git a/source-builder/sb/asciidoc/examples/website/faq.txt b/source-builder/sb/asciidoc/examples/website/faq.txt deleted file mode 100644 index 2723f20..0000000 --- a/source-builder/sb/asciidoc/examples/website/faq.txt +++ /dev/null @@ -1,1358 +0,0 @@ -AsciiDoc Frequently Asked Questions -=================================== - - -NOTE: New FAQs are appended to the bottom of this document. - -///////////////////////////////////////////////////////////////// -ADD NEW FAQS TO THE BOTTOM OF THIS DOCUMENT TO MAINTAIN NUMBERING -///////////////////////////////////////////////////////////////// - -== How do you handle spaces in included file names? -Spaces are not allowed in macro targets so this include macro will not -be processed: - - include::my document.txt[] - -The work-around is to replace the spaces with the `{sp}` (space -character) attribute, for example: - - include::my{sp}document.txt[] - - -== How do I number all paragraphs? -Some documents such as specifications and legalese require all -paragraphs to be sequentially numbered through the document, and to be -able to reference these numbers. - -This can be achieved by using the DocBook toolchain but numbering the -paragraphs with AsciiDoc using a custom config file containing the -following (see http://www.methods.co.nz/asciidoc/userguide.html#X27 -for ways to include such a file): - ---------------------------------------------------------------------- -[paragraph] -{title} -{title%} -{paracounter} | -{title%} -{title#} -{counter2:paracounter} -{empty} ---------------------------------------------------------------------- - -References to the paragraphs operate in the normal way, you label the -paragraph: - ------------------------------ -[[some_label_you_understand]] -paragraph contents ------------------------------ - -and reference it in the normal manner: - ------------------------------ -<> ------------------------------ - -The text of the reference will be the paragraph number. - -For this to work for HTML you have to generate it via the DocBook -toolchain. - - -== Sources of information on configuring DocBook toolchains -DocBook is a content and structure markup language, therefore -AsciiDoc generated DocBook markup is also limited to content and -structure. Layout and formatting definition is specific to the -DocBook toolchain. - -The dblatex toolchain can be configured by setting parameters defined -at http://dblatex.sourceforge.net/doc/manual/sec-params.html or for -more complex styling by custom Latex stylesheets described at -http://dblatex.sourceforge.net/doc/manual/sec-custom-latex.html. - -Similarly FOP can be configured by parameters described at -http://sagehill.net/docbookxsl/OptionsPart.html and with custom xsl -stylesheets generating formatting objects as described at -http://sagehill.net/docbookxsl/CustomizingPart.html. - - -[[X5]] -== How can I include embedded fonts in an EPUB document? -This is a two step process: - -1. Declare the font files and their use in your document's CSS - stylesheet. For example: -+ -[listing] -......................................... -@font-face { - font-family : LiberationSerif-Regular; - font-weight : normal; - font-style: normal; - src : url(LiberationSerif-Regular.ttf); -} - -body { - font-family: LiberationSerif-Regular, serif; -} -......................................... - -2. Declare the font file as resource when you use `a2x(1)` to - compile the EPUB. For example: - - a2x -f epub -d book --epubcheck --stylesheet epubtest.css --resource .ttf=application/x-font-ttf --resource LiberationSerif-Regular.ttf epubtest.txt - -[NOTE] -====== -- Requires AsciiDoc 8.6.5 or better. -- The True Type Font mimetype had to be declared explicitly with the - `--resource .ttf=application/x-font-ttf` option because it wasn't - registered on my Linux system. -- In the above example the font file is in the same directory as the - AsciiDoc source file and is installed to the same relative location - in the EPUB archive OEBPS directory -- if your font file resides in - a different location you'll need to adjust the `--resource` option - accordingly (see the 'RESOURCES' section in the `a2x(1)` man page - for details). -- The URL value of the CSS 'src' property is set to the destination - font file relative to the CSS file. -- The `--resource` option allows you to inject any file (not just font - files) into the EPUB output document. -- Using the CSS '@font-face' rule is a complex subject and is outside - the scope of this FAQ. -- Many EPUB readers do not process embedded fonts. -====== - - -== What's the difference between + quoted text and ` quoted monospaced text? -`+` (plus) quoted text is implemented as an AsciiDoc 'quotes' whereas -+`+ (grave accent or backtick) quoted text is implemented as an -AsciiDoc 'inline literal' passthrough macro. The semantics are -different: - -1. Inline passthrough macros are processed before any other inline - substitutions e.g. all of the following line will be processed as a - single inline passthrough and rendered as monospaced text (which is - not the intended result): -+ --- - `single quoted text' and `monospaced quoted text` - -This line works as expected: - - `single quoted text' and +monospaced quoted text+ --- - -2. Backtick quoted text is rendered literally i.e. no substitutions - are performed on the enclosed text. Here are some examples that - would have to be escaped if plus quoting were used (<>): - - The `++i` and `++j` auto-increments. - Paths `~/.vim` and `~/docs`. - The `__init__` method. - The `{id}` attribute. - - -== Why is the generated HTML title element text invalid? -Probably because your document title contains formatting that has -generated HTML title markup. You can resolve this by explicitly -defining the 'title' attribute in your document's header. - - -== AsciiDoc sometimes generates invalid output markup, why? -AsciiDoc is backend agnostic, the 'asciidoc' command has no knowledge -of the syntax or structure of the backend format that it generates. -Output document validation (syntactic and structural) should be -performed separately by external validation tools. For example, -AsciiDoc's 'a2x' toolchain command automatically performs validation -checks using 'xmllint'. - - -== The AsciiDoc toclevels attribute does not work with DocBook outputs, why? -DocBook has no provision for specifying table of contents levels but -you can set the TOC level further down the toolchain by passing the -DocBook XSL Stylesheets -http://docbook.sourceforge.net/release/xsl/current/doc/html/toc.section.depth.html[toc.section.depth] -parameter to 'dblatex' (using the `--param` option) or 'xsltproc' -(using the `--stringparam` option). For example to show only chapter -titles in the TOC of a 'book' document set 'toc.section.depth' to '0'. -Increment the 'toc.section.depth' value to show more sub-section -titles. If you are using 'a2x' you can set the options in the source -file, for example: - - // a2x: --xsltproc-opts "--stringparam toc.section.depth 0" - // a2x: --dblatex-opts "--param toc.section.depth=0" - -If the document is of type 'article' use the value '1' to show only -top level section titles in the TOC, use the value '2' for two levels -etc. - - -== How can I include chapter and section tables of contents? -DocBook outputs processed by DocBook XSL Stylesheets (either manually -or via 'a2x') can generate additional separate section and chapter -tables of contents using combinations of the -http://www.sagehill.net/docbookxsl/TOCcontrol.html[TOC parameters]. -Here are some examples using combinations of the -`generate.section.toc.level` and `toc.section.depth` DocBook XSL -Stylesheets parameters: - -[cols="2*l,4",width="90%",frame="topbot",options="header"] -|====================================================== -|generate.section.toc.level |toc.section.depth | -|1 | -|Single level book chapter TOCs or article section TOCs - -|1 | 3 -|Article section TOCs with two levels - -|1 | 2 -|Book chapter TOCs with two levels -|====================================================== - - -== How can I customize the appearance of XHTML and EPUB documents generated by a2x? -You can customize the appearance of an EPUB document with CSS. See -the link:publishing-ebooks-with-asciidoc.html[Sherlock Holmes eBook -example] on the AsciiDoc website. - - -== DocBook has many elements for document meta-data -- how can I use them from AsciiDoc? -The 'docinfo', 'docinfo1' and 'docinfo2' attributes allow you include -link:userguide.html#X97[document information files] containing DocBook -XML into the header of the output file. - - -== Do element titles automatically generate link captions? -If you go the DocBook route then yes -- just omit the caption from the -AsciiDoc 'xref' (`<<...>>`) macro. Both dblatex and DocBook XSL will -use the target element's title text. Examples: - -[listing] -.................................................................. -[[X1]] -Section One ------------ -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas -ultrices justo porttitor augue. Vestibulum pretium. Donec porta - -See also <> (this link displays the text 'A titled paragraph'). - -[id="X2",reftext="2nd section"] -Section Two ------------ -See also <> (this link displays the text 'Section One'). - -[[X3]] -.A titled paragraph -Lorem ipsum dolor sit amet, consectetuer adipiscing elit. - -See also <> (this link displays the text '2nd section'). -.................................................................. - -The AsciiDoc 'reftext' attribute has been used to explicitly set the -link text to '2nd section' for 'Section Two'. - - -== Can I define my own table styles? -In addition to the built-in styles you can define your own. This -(simplified) example for HTML backends defines a table style called -'red' which sets the background cell color to red. First put the -definition in a configuration file: - -[listing] -......................................... -[tabledef-default] -red-style=tags="red" - -[tabletags-red] -bodydata=|
, style=