Changes file for ASCIIMathML.js
===============================

Sep 27, 2007 Version 2.0
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML20.js)

- included LaTeXMathML.js and ASCIIsvg.js in the ASCIIMathML script

- changed license to GNU LGPL 2.1

- Added auto-math-recognize mode (amath ... endamath)

- Added some LaTeX environments and simple formatting

- Created Moodle filter and PmWiki cookbook

- Added MathML text labels to SVG graphs

- Fixed SVG cursor tracking in Firefox

- Added stroke/fillopacity to graphs

- Simplified syntax for graph inclusion

- SVG mouseevents are now added in the scope of the graph code

- MathML fontsize can now be magnified relative to surrounding text

-------------------------------

Aug 7, 2005 Version 1.4.7
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML147.js)

- changed IE MathML prefix from mml: to m: (default of MathPlayer, so now
  <html> works without the xmlns attribute)

- for IE the script now writes out the <object ...> and <?import ...> tags
  simplifying the header file significantly 

- script now uses a generic onload (by www.brothercake.com) so 
  no need for onload="translate()" in <body> (but earlier pages still work)

- ASCIIMathML.js can now be used on any HTML page by just adding one line to
  load the script. So validating your HTML pages is now possible, and use
  of HTML editors is simple.

- added unparametrized macros: put <script>newcommand("short","long")</script>
  on your webpage and each occurrence of "short" is replaced by "long"

- added /_ (\angle) and :. (\therefore) as symbols

- made an ASCIIMath plugin for Xinha HTML editor (see editor link on homepage)
  with instant preview, template popup and builtin calculator

-------------------------------

Apr 23, 2005 Version 1.4.6
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML146.js)

- added "showasciiformulaonhover" variable; if true then pointing at a MathML 
  expression shows the ascii form that produces the expression

- added "decimalsign" variable; default is "."

- removed "separatetokens" option (to speed up token recognition)

- changed |-, |=, |_, _| to |--, |==, |__, __| to avoid parsing problems
  e.g. |-x|, |x|=a, ||A||_1 now parse as expected

- changed parser so that "-" is unary if previous token is INFIX
  e.g. now x^-y works like x^(-y) (but x-y is same as x - y)

- added "spanclassAM" option; invoked by translate(true), all math should
  then be delimited by <span class="AM">...</span>; translate() works as before

-------------------------------

Jan 30, 2005 Version 1.4.5
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML145.js)

- added TEXT token type for \text{...}, \mbox{...} and "..."

- changed sin, cos, tan, ..., lcm to UNARY type (func); now 1/sinx works

- changed parser so that ^, _ have priority over /
  now x_1/3^2 works like (x_1)/(3^2)

-------------------------------

Jan 14, 2005 Version 1.4.4
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML144.js)

- added "mathfontfamily" variable (default "serif")

- mathcolor and mathfontfamily can be "" to inherit values of surrounding text

- added "AMdelimiter" variables to set math delimiters (default "`" and "$")

- added LEFTRIGHT token type for "|"; now `|x|` displays like `{:|x|:}`;
  a single | still parses as \mid e.g. in {x | x > 0}

-------------------------------

Dec 28, 2004 Version 1.4.3
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML143.js)

- added mapsto |->

- fixed a parsing error that was generated by incomplete fractions (1/)

- fixed parsing of negative numbers (<mn>-1</mn> is now translated to
  <mrow><mo>-</mo><mn>1</mn></mrow>)

- added notifyIfNoMathML flag. If false, no note is inserted at top of page.

- included ASCIIMathCalculator.js: a small script that implements a
  webpage calculator with live MathML preview

-------------------------------

Nov 12, 2004 Version 1.4.2
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML142.js)

- added constants for: setminus, vdots, ddots, glb, lub

-------------------------------

Aug 16, 2004 Version 1.4.1
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML141.js)

- fixed a typo to make the check for MathML capability work correctly

- added stackrel command (mover in MathML), e.g. stackrel{def}{=}

- added := as binary relation to get spacing right in Mozilla/Firefox/Netscape

-------------------------------

July 13, 2004 Version 1.4
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML4.js)

- cleaned up the js code, thanks to some very helpful suggestions by Alex V. 

- most global variables prefixed with "AM" to avoid conflict with ASCIIsvg.js

- added macro definition ability to define dx, dy, dz, ...
  e.g. now dx is replaced by {d x}, so `d/dx` can be used rather than `d/(dx)`.
  Users can add their own (parameterless) macros.

- added check for MathML capability. If absent, inserts note at top of page.

- unmatched right bracket no longer ends expression. E.g. in `cosx]_0^1`
  the "]" is treated simply as a constant symbol (better to use `{:cosx]_0^1`).

- numeric unicode entity names can be used for unnamed symbols, e.g. `&#x2270;`

-------------------------------

Mar 26, 2004 Version 1.3
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML3.js)

- fixed parser so that unary/binary symbols without arguments are treated 
  as constants (previously generated js error)

- noticed that ASCIIMathML.js does not require XML, actually works in HTML
  on multiple browsers (required no change to the script)

- added `"any"` as alternative to `text{any}`

- added  min, max  as standard function names (subscripts go underneath)

- added o. (\odot) as symbol

- added separatetokens flag: lowercase tokens must be separated by nonletters
  (if true, `sinx` is a sequence of 4 variables, instead use `sin x`)
  switched off by default, can be switched on (see top of ASCIIMathML.js)

- added (experimental) doubleblankmathdelimiter so  a+b  is same as `a+b`
  switched off by default, can be switched on (see top of ASCIIMathML.js)

-------------------------------

Feb 8, 2004 Version 1.2
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML2.js)

- added accents: hat bar ul vec dot ddot

- added sans-serif font: sf

- both `...` and $...$ are now allowed as math delimiters

- \$ and \` can now be used to insert $ or ` in plain text

- `a text{ sometext }b` now shows the space around "sometext"

- blocks of ASCIIMathML + text can be enclosed in comments <!-- -->
  in which case blank lines are converted to paragraph breaks;
  inside comments the < character can be used (does not cause XML error)
  (use this "comment mode" with caution; future versions of IE or
   Mozilla may not display it the same way)

-------------------------------

Jan 9, 2004 Version 1.1
(at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML1.js)

- added \vdash, \models (actually &vDash;!), \vartheta, \bigwedge, \bigvee,
  \bigcup, \bigcap, \propto, \oint to symbol table, with ASCII equivalents

- renamed "subset, supset" to their entity names "sube, supe", 
  added "sub, sup" and their LaTeX equivalents \subset, \supset

- updated webpages

-------------------------------

Jan 6, 2004 Version 1.0 
(now at http://www.chapman.edu/~jipsen/mathml/ASCIIMathML0.js)

- calligraphic, black board bold and fraktur fonts are finally working 
  also in Mozilla/Netscape 7

- added a download page

- added GNU GPL notices

===============================