* Add detail about colorbox third text parameter
As stated in issue #1766
* Change colorbox example to use math
* Upgrade remarkable-katex to 1.1.5
Co-authored-by: Erik Demaine <edemaine@mit.edu>
* \boldsymbol not italic for textords such as Greek
Fix#2225: `\boldsymbol{\Omega}` will now produce a bold upright Omega
instead of a bold italic Omega. This only affects `textord` symbols within
`\boldsymbol`, mimicking the no-font case in `makeOrd` which distinguishes
`textord` from `mathord` in a similar way.
* Update screenshots
Co-authored-by: Ron Kok <ronkok@comcast.net>
* Use babel-plugin-preval instead of own unicodeMake for unicodeSymbols
* Fix circular dependency transpiling issue
* Flow type unicodeSymbols.js
Co-authored-by: Erik Demaine <edemaine@mit.edu>
I noticed that the docs said there were "two auto-render-specific
keys" and then proceeded to list 5 extra keys that could be passed. I
updated the language in all of the versions of docs because they were
all incorrect.
Co-authored-by: Erik Demaine <edemaine@mit.edu>
* Add support for \expandafter
* Add support for \noexpand
* Add support for \edef
* Update comments
* Allow \long before macro definition
* Update documentation
* Update comments
* Fix defPrefix
* Add support for \let
* Update documentation
* Print error token
* Update documentation
* Check whether command is expandable
* Add tests
* Fix token order
* Make noexpand a Token property
* Throw error if control sequence is undefined when expanding
* Rename expandableOnly to expandOnly
* Make unexpandable macro property
* Move \expandafter to macros.js
* Add TODO
* Fix merge conflict
* Update a test case
* Remove unused functions in MacroContextInterface
* Update comments
* Refactor code
* Move \noexpand to macros
* Update MacroExpander.js
* Add a test case
* Separate control sequence check to a function
* Add support for \futurelet
* Separate RHS getter to a function
* Update documentation
* Move expandOnly logic to expandOnce
* Refactor code and update comments
Co-authored-by: Kevin Barabash <kevinb@khanacademy.org>
* Fix delimiter error message
Avoid "circular structure" error message by avoiding JSON.stringify on a
parse structure when getting an invalid delimiter type (e.g. ordgroup).
Instead, report type of delimiter when it's invalid. Fixes#2184.
* Fix and add tests
* Add bra-ket notation
* Fix typo
* Remove ketbra
* Remove ketbra, add Bra and Ket
* Add Bra/Ket and fix a typo in bra's source
* Fix bra-ket typo in docs
* Fix bra-ket escape typo in docs
* Replace bra-ket pipe with \vert in docs
* Set acceptUnicodeChar for quote symbols
* Remove \oiint and \oiiint which have no glyphs
* Make symbols.js ASCII-safe
* Remove duplicate entries
* Use acceptUnicodeChar where applicable
* Add parseNode type `internal`
* Move \def and \newcommand to functions
* Fix Flow error
* Separate \global
Move \newcommand back to macros for now
* Rename assignment.js to def.js
* Update test cases
* Add comments
* Update a test case
We used functions with $FlowFixMe as Flow couldn't refine ParseNode
using its type. It seems the issue has been fixed and complicated
function calls can be removed.
* Update LICENSE to acknowledge individual copyrights as well
* Update copyright year
* Update website to acknowledge individual copyrights as well
* Update LICENSE
* Update siteConfig.js
* \@ifnextchar consumes spaces
Fix#2117 by fixing our implementation of \@ifnextchar to match LaTeX's:
consuming spaces before checking the next character. See #2117 for details.
* Update MacroContextInterface