CHANGE HISTORY ============== ## v0.8r (2023/08/13) * Revise definitions of `\\setminus` and `\\smallsetminus` (#181, #583) — long overdue. Note that there are compatibility considerations with this change. * Add `\\diagup` and `\\diagdown` (#604). * Make `\\operator@font` protected to allow operators (e.g., `\\cos`) in section headings (etc). (#550) * Allow `\\symcal` to handle lowercase Latin (#589). * Add additional fonts to the symbol listing document (#597). ## v0.8q (2020/01/31) * Update to adapt to / support new features in the upcoming 2e kernel. * Give a better error message if used on non-supported engines that are not pdfTeX. ## v0.8p (2019/09/26) * Remove dependency on `filehook` package. Just to simplify. * Remove patch code for the `colonequals` package; now if you use that package you will simply receive its standard ‘constructed’ symbols. * Load `amsmath` automatically. This is not intended to save time for the user, but to simplify the code logic. Users should continue to load `amsmath` explicitly IMO. ## v0.8o (2019/03/04) * Avoid `'Dimension too large' error` for some (unpredictable) combinations of font choice and the `Scale` option. Problems are still known to occur for very large or very small values of `Scale`. * Documentation is now run through ‘continuous integration’ (viz, *Travis* for the time being) as well as the test suite. ## v0.8n (2019/01/26) * Add note to readme that the `lm-math` package is required for minimal functionality. * Spacing fixed for maths fonts loaded with the `Scale` fontspec feature (#287). * Commands like `\crampedtextstyle` now longer lead to an infinite loop under XeTeX (#505). * Improvements to the functionality of the test suite. (Although more tests would be nice.) * Test suite is now (successfully) run with `expl3` debug mode enabled. ## v0.8m (2018/07/29) * Restore behaviour of legacy syntax `x_\mathrm{x}` (i.e., with no braces). While strictly ‘incorrectly’, this usage is widely used. N.B. this syntax is not supported for the `\symXX` commands. * Add `\cuberoot` and `\fourthroot` as proper radicals. * Some additional input subscripts/superscripts. * Some documentation additions (thanks for the contributions). * Deprecation warning: the *internal* `\__um_switchto_XX:` commands will be dropped in a future release in favour of `\__um_switch_to:n {XX}` (or similar). These are internal commands and shouldn't be used by third-parties; please write if you have a use case. ## v0.8l (2018/02/02) * Issue an error message if `\setmathfont{...}[range=...]` is used first; a `range` declaration inherently implies a subset, so a ‘main’ math font needs to be set up first. * Fix issue when nesting `\mathXX` and `\symZZ` commands. (#356, #435, #438) * Fix another issue when using `mathXX` or `\symXX` inside `\DeclareMathOperator`. (#449) * Document incompatibility with the `mathspec` package. (#436) * Fix bugs for using `range=\partial` and `range=\nabla`. (#441) ## v0.8k (2018/01/13) * Eliminate warnings `Variant form 'NV' invalid for base form`... (#430). * Fix issue when loading the `cal` range (#431). * Fix issue with `\sqrt[n]{x}` with `amsmath` (#432). * Error when loading on (really) old versions of XeTeX/LuaTeX removed. * More UM fonts listed in the README (#425). ## v0.8j (2018/01/07) - NEW * Numbers and latin letters in the fullwidth Unicode range are now supported as aliases to their ASCII counterparts (#337). * New commands `\(New|Renew)NegationCommand \foo` for defining custom negations accessed via `\not\foo`. - SYMBOLS * `\typecolon` is now `\mathrel` instead of `\mathbin` (#360). * New symbol `\mathhyphen` which acts like a ‘letter’ (#313). * `\nabla` and `\partial` have corrected documentation (#257). * The following legacy commands are listed as ‘unsupported’ and will result in sensible error messages rather than the old behaviour of meaningless output: `\arrowvert`, `\Arrowvert`, `\bracevert`. (#411). - BUGS * LuaTeX bug with shifted `\underbrace` when it contains accented symbols worked around (#391). * When using the `range` feature, users commonly found they needed to call `\setmathfont` a final time with the original font to ensure correct formatting and correct selection of symbol alphabets. I hope the issues that required this have now been corrected (#331, #387). * If `\setmathfont` is called a second time in a document, it tries harder to more properly reset the maths font setup for the new font (#224). * Properly hard-coded the `\delcode` of the period to ensure `\left`/`\right` behave correctly in all circumstances (#344, #351, #420). * Correct `\mathrm` (etc.) situation when no fonts loaded explicitly by the user (#330). * Various bug fixes to `\not` (#126, #343, #363) * `\std@minus` & `\std@equal` now properly corrected (#332). * Fix problem with infinite loop with `\cdots` when `amsmath` loaded after `unicode-math` (#227). * If `\setmath(rm|sf|tt)` is called *before* loading `unicode-math`, the setting is now remembered (#407). - INTERNALS * A number of improvements to efficiency when loading subsequent math fonts using the `range` feature. * No longer loads the `ucharcat` package. * Test suite re-implemented for better portability and use with Travis CI. See for the up-to-date status of whether the test suite is passing. ## v0.8i (2017/11/18) * Many internal changes to support future work. * Improved documentation describing the `\mathXX` and `\symXX` commands. * Documentation is now split into `unicode-math.pdf` (for the user) and `unicode-math-code.pdf` (for the typeset source code). ## v0.8h (2017/10/09) * Some bugs crept in in the last update due to some code rearrangement: * package version wasn't set; * some code was being executed at the wrong time; * `\sqrt[]{}` in LuaLaTeX gave incorrect output. * The layout of the code is now structured far more sensibly. * Remove (long deprecated) `\resetmathfont`; for years it has been a synonym for `\setmathfont`. ## v0.8g (2017/10/02) * Better use of scriptstyle sizes in LuaTeX (I think a regression). * Fix regression (`\mathbf` etc. not being set automatically) caused by the renaming of a `fontspec` internal command. * Minor documentation improvements. * (Only relevant for me: I've also disabled the test suite almost entirely to begin a re-write for ‘continuous integration’.) ## v0.8f (2017/08/02) * Emergency fix (thanks Bruno) for another bug revealed by `expl3` update. ## v0.8e (2017/07/30) * Add `\surd` to access the sqrt symbol. * Fix bug exposed by `expl3` update to booleans. * Add Deja Vu Math TeX Gyre in list of symbols. * Add `\sime` alias for `\simeq` and `\nsimeq` for `\nsime`. (For negations it's helpful when they have consistent naming.) ## v0.8d (2017/01/25) * `vargreek-shape=TeX` and `vargreek-shape=unicode` package options dropped; for consistency and compatibility, `\phi` and `\epsilon` should and will now behave the same as in `TeX`. * On that note, when using control sequences such as `\mbfitsansvarphi` (and so on), there were a few faulty definitions. The new behaviour is to consistently define the `varphi` and `varepsilon` ones as those with the "curly" designs. * Add `\wideoverbar`, `\widebreve`, `\widecheck`. * Add `\mathsection`, `\mathparagraph`. * Remove `\mupvarbeta`, `upold(Kk)oppa`, `\up(Ss)tigma`, `\up(Kk)oppa`, `\up(Ss)ampi` — none of these are maths symbols. * `!` (`\mathexclam`) changed from `\mathpunct` to `\mathclose` for backwards compatibility with TeX. ## v0.8c (2015/09/24) * Add `\over(left/right)harpoon` as "wide" accents. * Add RTL mathematics operators `\arabicmaj` and `\arabichad`, which correspond to `U+1EEF0` and `U+1EEF1`, resp. * Remove `catchfile` package dependency. * Update some internal names to match expl3 standards. ## v0.8b (2015/09/09) * Bug fix: Use the "ucharcat" package to simplify some code that caused some headaches with \tl_rescan:nn. ## v0.8a (2015/08/06) * Fix bug with \vert, \|, \(l/r)vert, etc., displaying with the wrong characters. * Improve documentation to properly reflect changes in v0.8 and fix some broken examples. * No longer reset catcodes of : and @ during \setmathfont . * Fix remapping of alphabets (needed for Minion Math) in cases such as: \setmathfont[range=bfit->it]{MinionMath-Bold.otf} ## v0.8 (2015/07/29) **Breaking changes in this update!** * `\mathrm` (`\mathup`), `\mathit`, `\mathbf`, `\mathsf`, and `\mathtt` revert to their traditional LaTeX meanings; they are set up to match their equivalent text fonts unless specifically set using `\setmathrm` and friends from `fontspec` or the new `\setmathfontface` in `unicode-math`. These commands should be used for *multi*-letter identifiers. * New "symbol" commands have been added, `\symrm` (`\symup`), `symit`, ..., to replace the behaviour of the old commands. These should be used for *single*-letter identifiers. See the package documentation for more detail on these and related commands. * Package options `mathit=sym`, `mathbf=sym`, etc., reverse the changes above to revert to pre-v0.8 behaviour for `\mathXYZ`. Regardless of package option, `\symXYZ` always maps to symbols and `\mathtextXYZ` is provided for the traditional `\mathXYZ` font switch. * New command `\setoperatorfont` to set the font used for commands such as `\sin` and `\cos`. Usage: `\setoperatorfont\mathbf` or any command defined with `\setmathfontface`. * Traditional LaTeX `\DeclareMathAlphabet` now works again for legacy font-loading packages. * Commands defined to "force" Greek letters with `\upbeta` and `\itbeta`, etc. * Assorted bug fixes and minor changes. ## v0.7e (2014/06/30) * No longer assume fixltx2e has been loaded. * Some ascii math symbols have been renamed with a \math... prefix, such as \mathquestion. * Assume latest luaotfload is being used; no need for a separate unicode-math.lua script. * Assorted typos and minor bugs. ## v0.7e (2013/05/04) * Track luaotfload updates. ## v0.7d (2013/03/16) * More expl3 changes missed first time around. (Sorry again.) ## v0.7c (2013/02/25) * The Latin Modern math font name changed TWICE. Only caught the first one. Sorry for any inconvenience caused. ## v0.7b (2013/02/22) * Keep in sync with Latin Modern Math font name change. * Keep in sync with expl3 changes. ## v0.7a (2012/07/28) * Keep in sync with expl3 changes. ## v0.7 (2012/05/30): The TeX Live 2012 release. * Most changes (and all significant ones) in this release thanks to Khaled Hosny, who is now credited as an author of the package. * Many improvements for XeTeX support to take advantage of the new engine (v0.9998) in TL2012. * As a result, `\resetmathfont` is no longer required. * Improve `\not` to use pre-combined glyphs where possible. * LM Math is loaded by default. * Support bottom accents. * And add `\wideutilde`. * The ‘symbols’ document is somewhat better organised and contains information on whether a symbol is defined in plain TeX or amssymb. * Various other minor fixes and additions: * `\underleftrightarrow` added for fonts that support it. * Don’t overwrite mathtool’s `\overbracket` and `\underbracket`. * Bug in `[range=...]` parsing fixed. * Add `\longdivision`. * Add `\lgroup` and `\rgroup`. * Fix ‘moustache’ delimiters. * `\openbox` renamed to `\mathvisiblespace`, since it is already defined in amsthm as an empty box. ## v0.6a (2011/09/19) * Always a bug that slips through the cracks! Fixes `\left.` and `\right.` * Add experimental package option `warnings-off=...` which allows warnings to be suppressed on an individual basis. ## v0.6 (2011/09/18) * Keep in sync with fontspec internals (sorry for the small delay where things were broken) * Keep in sync with expl3 deprecated functions * Math versions (finally) implemented; can now change maths fonts mid-document without reinitialising everything (thanks to Ulrike Fischer and Ulrik Vieth) * Symbols file `unimath-symbols.pdf` now uses maths versions to compare all of the OpenType maths fonts I currently have access to * Over- and under- braces, brackets, and parentheses now work in XeTeX (thanks to Claudio Beccari) * Many internal changes, including a re-write of the `range` feature; it should now be faster and more robust * Tentative programmer's interface for querying the current math style: `\l_um_mathstyle_tl`. * Remove (outdated) interaction with beamer; you must specify `professionalfonts` manually for now * Quieten the console output when loading maths fonts with incomplete maths style coverage * Synonym added: `\lnot` -> `\neg` * Two added Unicode symbols (names tentative): `\blanksymbol` and `\openbox` (thanks to Apostolos Syropoulos) * Fixed literal sub-/super-script input. ## v0.5e (2011/07/31) * Fix forward compatibility clash with deprecated expl3 functions (sorry) * Command names are now `\protected`; this makes them safe to use in moving arguments and so on * Similarly to the change in v0.5c, the main math font is now loaded in math family zero (equiv. to LaTeX's `operators` math font) * `\mathring` added * Ensure that a math font has been selected in order to prevent problems in minimal documents (this will be unnecessary when the OpenType LM math font is released) * Documentation for which was which of epsilon/varepsilon was backwards! (thank to Rasmus Villemoes for pointing this out) * Spurious `\upUpsilon` removed (the one at U+03A5 is now the correct one) * Typo when defining `\dprime` fixed (thanks to Ulrik Vieth for these last two) * Fix the math class of `\modtwosum`; it is now a large operator (thanks to Michael Ummels) * Move several LuaTeX-related patches to the `lualatex-math` package * Fixed mathtool's `\cramped` in XeLaTeX usage ## v0.5d (2011/01/30) * Assorted improvements to LuaLaTeX support, including non-growing accents available in LuaTeX v0.65 and later * Improved behaviour with reading and using maths font dimensions * Better compatibility with legacy maths packages and environments (always more worked needed, though) * Fix the default setting for "vargreek-shape" ## v0.5c (2010/09/27) * Fix a long-standing bug in XeLaTeX in which the "master" math families 2 and 3 weren't being set; hence fraction rules and many other parameters were not being set correctly * Stay in sync with internal fontspec changes ## v0.5b (2010/09/19): Tune-up * Added missing symbols/synonyms: \diamond \smallint \emptyset \hbar \backepsilon \eth * \overline works for LuaLaTeX * Fix \slash; previously, it overwrote the text definition * \vartriangle now has the correct math class ## v0.5a (2010/07/14): TeX Live 2010 release * Numerous documentation improvements * Bug fix against stray catcode changes * Add `\mathcal` and `\mathbfcal` as distinct from the Script style; these are only supported by the XITS fonts at present * Small changes to the range of symbols offered (especially note that `\ac` is now `\invlazys` to avoid acronym package clash) * Superscripts are allowed after primes (as they should be) * Numerous LuaLaTeX improvements, including roots and over/under braces. ## v0.5 (2010/06/03): Initial CTAN release