LaTeXML
view release on metacpan or search on metacpan
lib/LaTeXML/Package/mathabx.sty.ltxml view on Meta::CPAN
# -*- mode: Perl -*-
# /=====================================================================\ #
# | mathabx.sty | #
# | Implementation for LaTeXML | #
# |=====================================================================| #
# | Part of LaTeXML: | #
# | Public domain software, produced as part of work done by the | #
# | United States Government & not subject to copyright in the US. | #
# |---------------------------------------------------------------------| #
# | Bruce Miller <bruce.miller@nist.gov> #_# | #
# | http://dlmf.nist.gov/LaTeXML/ (o o) | #
# \=========================================================ooo==U==ooo=/ #
package LaTeXML::Package::Pool;
use strict;
use warnings;
use LaTeXML::Package;
#======================================================================
# Specials (matha/mathb)
# These are intended to overlay to show negation,
# but they're not going to work well for that.
DefMath('\notsign', '|', role => 'OPERATOR', meaning => 'not');
DefMath('\varnotsign', '/', role => 'OPERATOR', meaning => 'not');
DefPrimitive('\changenotsign', sub {
Info('unexpected', '\\changenotsign', $_[0],
"The \\changenotsign operation of mathabx is not implemented."); });
# \cdotp
#======================================================================
# Usual binary operators (matha)
# +, -
# \times, \div
# \cdot, \circ
# *, \ast
DefMath('\asterisk', "\x{2217}", role => 'MULOP');
# DefMath('\coasterisk',Tokens());
DefMath('\ltimes', "\x{22C9}", role => 'MULOP', meaning => 'left-normal-factor-semidirect-product');
DefMath('\rtimes', "\x{22CA}", role => 'MULOP', meaning => 'right-normal-factor-semidirect-product');
# \diamond, \bullet
# \star
DefMathI('\varstar', undef, "\x{2736}", role => 'MULOP');
# Next two probably text style or small size?
DefMathI('\ssum', undef, "\x{2211}", role => 'SUMOP', meaning => 'sum');
DefMathI('\sprod', undef, "\x{220F}", role => 'SUMOP', meaning => 'product');
# \amalg
#======================================================================
# Unusual binary operators (mathb)
DefMath('\dotplus', "\x{2214}", role => 'ADDOP');
DefMath('\dotdiv', "\x{2238}", role => 'MULOP');
DefMath('\dottimes', "\x{2A30}", role => 'MULOP');
DefMath('\divdot', "\x{2A2A}", role => 'MULOP');
DefMath('\udot', "\x{22C5}", role => 'MULOP'); # Same as \cdot, but should shift to left
DefMath('\square', "\x{25A1}", role => 'MULOP');
DefMath('\Asterisk', "\x{273D}", role => 'MULOP');
DefMath('\bigast', "\x{273D}", role => 'MULOP');
# DefMath('\coAsterisk',Tokens());
# DefMath('\bigcoast',Tokens());
DefMath('\circplus', "\x{2A22}", role => 'MULOP');
DefMath('\pluscirc', "\x{2295}", role => 'MULOP'); # Not quite right glyph
DefMath('\convolution', "\x{2733}", role => 'MULOP');
DefMath('\divideontimes', "\x{22C7}", role => 'MULOP');
DefMath('\blackdiamond', "\x{25C6}", role => 'MULOP');
DefMath('\sqbullet', "\x{2BC0}", role => 'MULOP');
DefMath('\bigstar', "\x{1F7CA}", role => 'MULOP');
DefMath('\bigvarstar', "\x{1F7CC}", role => 'MULOP');
#======================================================================
# Usual relations (matha)
# =, \equiv
# \sim, \approx
# \simeq, \cong
# \asymp
DefMath('\divides', "\x{2223}", role => 'RELOP');
# \neq, \ne,
DefMath('\nequiv', "\x{2262}", meaning => 'not-equivalent-to', role => 'RELOP');
Let('\notequiv', '\nequiv');
DefMath('\nsim', "\x{2241}", role => 'RELOP',
meaning => 'not-similar-to'); # NOTE TILDE
DefMath('\napprox', "\x{2249}", meaning => 'not-approximately-equals', role => 'RELOP');
( run in 0.842 second using v1.01-cache-2.11-cpan-f56aa216473 )