Authoring with ASCII Math

Most technical writers grapple with complex equation creation/updating and resort to purchasing a MathML Editor add-on for their existing structured authoring software. Nothing wrong with using a MathML Editor but ASCII Math (http://asciimath.org/) is a great alternative as an easy-to-write markup language for mathematics … and it’s free!

I guess the options to weigh up are to purchase and try to install a MathML Editor add-on (not always easy) to existing software or web app and learning the interface, give up and resort to screen grabs of the equations and insert as images (does not make your content very rich) or learn a bit of ASCII Math markup … it is not only effective and efficient but it is fun!

If you every looked at MathML in an Editor like Notepad++ you will notice how hard it is to read (unless you know the MathML vocab back to front) and the markup is extensive, resulting in large markup overheads from an editing/authoring perspective.

Here is an example of some ASCII Math markup:

(2n_p)/(sqrt([1 + (2e “/” s_g)/(1 + (1/3) (n_p + 1)/(n_p – 1) [(1)/(s_(pg))]^2)]^2 + [1 + (2e “/” (s_(pg) s_g))/(1 + (1/3) (n_p + 1)/(n_p – 1) [(1)/(s_(pg))]^2)]^2))

If anyone used InterLeaf in the early 90’s then this markup will look familiar. The key to it all is inserting the markup in organised brackets (). Create the brackets in a logical order depending on the overall structure of the equation and then add the markup inside them. This is the best way to go.

This what it looks like using our online editor called tekAuthor (equation at the bottom):

No alt text provided for this image

… and this is the result when published to our HTML5 eReader called tekReader:

No alt text provided for this image

The person using tekReader to read the publication can select the equation to enlarge, or right-click on the equation to display the MathJax menu. MathJax allows readers to view equations autonomously. On our publish out of tekAuthor we convert the ASCII Math markup to MathML and then use MathJax (https://www.mathjax.org/) to display.

I hope this article provides some good insight to ASCII Math.