mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/Math
synced 2024-12-01 10:46:36 +00:00
ffcfdf488e
Insert required backslash to LaTeX commands. This should help to avoid that users ommit the backslash for LaTeX commands unintentionally. Change-Id: I970cec2cb597815cc4272ed573ac1a2ee2682e55
166 lines
9.4 KiB
JavaScript
166 lines
9.4 KiB
JavaScript
/*!
|
|
* VisualEditor user interface MWMathDialog class.
|
|
*
|
|
* @copyright 2015 VisualEditor Team and others; see AUTHORS.txt
|
|
* @license MIT
|
|
*/
|
|
|
|
/**
|
|
* Dialog for inserting and editing math formulas.
|
|
*
|
|
* @class
|
|
* @extends ve.ui.MWExtensionPreviewDialog
|
|
*
|
|
* @constructor
|
|
* @param {Object} [config] Configuration options
|
|
*/
|
|
|
|
ve.ui.MWMathDialog = function VeUiMWMathDialog( config ) {
|
|
// Parent constructor
|
|
ve.ui.MWMathDialog.super.call( this, config );
|
|
|
|
};
|
|
|
|
/* Inheritance */
|
|
|
|
OO.inheritClass( ve.ui.MWMathDialog, ve.ui.MWLatexDialog );
|
|
|
|
/* Static properties */
|
|
|
|
ve.ui.MWMathDialog.static.name = 'mathDialog';
|
|
|
|
ve.ui.MWMathDialog.static.title = OO.ui.deferMsg( 'math-visualeditor-mwmathdialog-title' );
|
|
|
|
ve.ui.MWMathDialog.static.modelClasses = [ ve.dm.MWMathNode ];
|
|
|
|
ve.ui.MWMathDialog.static.symbolsModule = 'ext.math.visualEditor.mathSymbols';
|
|
|
|
ve.ui.MWMathDialog.static.autocompleteWordList = [ '\\AA', '\\acute',
|
|
'\\alef', '\\alefsym', '\\aleph', '\\alpha', '\\Alpha', '\\amalg', '\\And',
|
|
'\\and', '\\ang', '\\angle', '\\approx', '\\approxeq', '\\arccos', '\\arccot',
|
|
'\\arccsc', '\\arcsec', '\\arcsin', '\\arctan', '\\arg', '\\ast',
|
|
'\\asymp', '\\atop', '\\backepsilon', '\\backprime', '\\backsim',
|
|
'\\backsimeq', '\\backslash', '\\bar', '\\barwedge', '\\Bbb', '\\Bbbk',
|
|
'\\bcancel', '\\because', '\\beta', '\\Beta', '\\beth', '\\between',
|
|
'\\big', '\\Big', '\\bigcap', '\\bigcirc', '\\bigcup', '\\bigg', '\\Bigg',
|
|
'\\biggl', '\\Biggl', '\\biggr', '\\Biggr', '\\bigl', '\\Bigl',
|
|
'\\bigodot', '\\bigoplus', '\\bigotimes', '\\bigr', '\\Bigr', '\\bigsqcup',
|
|
'\\bigstar', '\\bigtriangledown', '\\bigtriangleup', '\\biguplus',
|
|
'\\bigvee', '\\bigwedge', '\\binom', '\\blacklozenge', '\\blacksquare',
|
|
'\\blacktriangle', '\\blacktriangledown', '\\blacktriangleleft',
|
|
'\\blacktriangleright', '\\bmod', '\\bold', '\\boldsymbol', '\\bot',
|
|
'\\bowtie', '\\Box', '\\boxdot', '\\boxminus', '\\boxplus', '\\boxtimes',
|
|
'\\breve', '\\bull', '\\bullet', '\\bumpeq', '\\Bumpeq', '\\C', '\\cancel',
|
|
'\\cancelto', '\\cap', '\\Cap', '\\cdot', '\\cdots', '\\centerdot',
|
|
'\\cfrac', '\\check', '\\checkmark', '\\chi', '\\Chi', '\\choose',
|
|
'\\circ', '\\circeq', '\\circlearrowleft', '\\circlearrowright',
|
|
'\\circledast', '\\circledcirc', '\\circleddash', '\\circledS', '\\clubs',
|
|
'\\clubsuit', '\\cnums', '\\colon', '\\color', '\\complement', '\\Complex',
|
|
'\\cong', '\\Coppa', '\\coppa', '\\coprod', '\\cos', '\\cosh', '\\cot',
|
|
'\\coth', '\\csc', '\\cup', '\\Cup', '\\curlyeqprec', '\\curlyeqsucc',
|
|
'\\curlyvee', '\\curlywedge', '\\curvearrowleft', '\\curvearrowright',
|
|
'\\dagger', '\\Dagger', '\\daleth', '\\darr', '\\dArr', '\\Darr', '\\dashv',
|
|
'\\dbinom', '\\ddagger', '\\ddot', '\\ddots', '\\definecolor', '\\deg',
|
|
'\\delta', '\\Delta', '\\det', '\\dfrac', '\\diagdown', '\\diagup',
|
|
'\\diamond', '\\Diamond', '\\diamonds', '\\diamondsuit', '\\digamma',
|
|
'\\Digamma', '\\dim', '\\displaystyle', '\\div', '\\divideontimes',
|
|
'\\dot', '\\doteq', '\\Doteq', '\\doteqdot', '\\dotplus', '\\dots', '\\dotsb',
|
|
'\\dotsc', '\\dotsi', '\\dotsm', '\\dotso', '\\doublebarwedge',
|
|
'\\doublecap', '\\doublecup', '\\downarrow', '\\Downarrow',
|
|
'\\downdownarrows', '\\downharpoonleft', '\\downharpoonright', '\\ell',
|
|
'\\emph', '\\empty', '\\emptyset', '\\epsilon', '\\Epsilon', '\\eqcirc',
|
|
'\\eqsim', '\\eqslantgtr', '\\eqslantless', '\\equiv', '\\eta', '\\Eta',
|
|
'\\eth', '\\euro', '\\exist', '\\exists', '\\exp', '\\fallingdotseq',
|
|
'\\Finv', '\\flat', '\\forall', '\\frac', '\\frown', '\\Game', '\\gamma',
|
|
'\\Gamma', '\\gcd', '\\ge', '\\geneuro', '\\geneuronarrow',
|
|
'\\geneurowide', '\\geq', '\\geqq', '\\geqslant', '\\gets', '\\gg', '\\ggg',
|
|
'\\gggtr', '\\gimel', '\\gnapprox', '\\gneq', '\\gneqq', '\\gnsim',
|
|
'\\grave', '\\gtrapprox', '\\gtrdot', '\\gtreqless', '\\gtreqqless',
|
|
'\\gtrless', '\\gtrsim', '\\gvertneqq', '\\H', '\\hAar', '\\harr', '\\Harr',
|
|
'\\hat', '\\hbar', '\\hearts', '\\heartsuit', '\\hline', '\\hom',
|
|
'\\hookleftarrow', '\\hookrightarrow', '\\hslash', '\\iff', '\\iiiint',
|
|
'\\iiint', '\\iint', '\\Im', '\\image', '\\imath', '\\implies', '\\in',
|
|
'\\inf', '\\infin', '\\infty', '\\injlim', '\\int', '\\intercal',
|
|
'\\iota', '\\Iota', '\\isin', '\\jmath', '\\kappa', '\\Kappa', '\\ker',
|
|
'\\Koppa', '\\koppa', '\\lambda', '\\Lambda', '\\land', '\\lang',
|
|
'\\langle', '\\larr', '\\Larr', '\\lArr', '\\lbrace', '\\lbrack',
|
|
'\\lceil', '\\ldots', '\\le', '\\leftarrow', '\\Leftarrow', '\\leftarrowtail',
|
|
'\\leftharpoondown', '\\leftharpoonup', '\\leftleftarrows',
|
|
'\\leftrightarrow', '\\Leftrightarrow', '\\leftrightarrows',
|
|
'\\leftrightharpoons', '\\leftrightsquigarrow', '\\leftthreetimes', '\\leq',
|
|
'\\leqq', '\\leqslant', '\\lessapprox', '\\lessdot', '\\lesseqgtr',
|
|
'\\lesseqqgtr', '\\lessgtr', '\\lesssim', '\\lfloor', '\\lg', '\\lim',
|
|
'\\liminf', '\\limits', '\\limsup', '\\ll', '\\llcorner', '\\Lleftarrow',
|
|
'\\lll', '\\ln', '\\lnapprox', '\\lneq', '\\lneqq', '\\lnot', '\\lnsim',
|
|
'\\log', '\\longleftarrow', '\\Longleftarrow', '\\longleftrightarrow',
|
|
'\\Longleftrightarrow', '\\longmapsto', '\\longrightarrow',
|
|
'\\Longrightarrow', '\\looparrowleft', '\\looparrowright', '\\lor',
|
|
'\\lozenge', '\\lrarr', '\\Lrarr', '\\lrArr', '\\lrcorner', '\\Lsh',
|
|
'\\ltimes', '\\lVert', '\\lvertneqq', '\\mapsto', '\\mathbb', '\\mathbf',
|
|
'\\mathbin', '\\mathcal', '\\mathclose', '\\mathfrak', '\\mathit', '\\mathop',
|
|
'\\mathopen', '\\mathord', '\\mathpunct', '\\mathrel', '\\mathrm',
|
|
'\\mathsf', '\\mathtt', '\\max', '\\measuredangle', '\\mho', '\\mid',
|
|
'\\min', '\\mod', '\\models', '\\mp', '\\mu', '\\Mu', '\\multimap', '\\N',
|
|
'\\nabla', '\\natnums', '\\natural', '\\ncong', '\\ne', '\\nearrow',
|
|
'\\neg', '\\neq', '\\nexists', '\\ngeq', '\\ngeqq', '\\ngeqslant',
|
|
'\\ngtr', '\\ni', '\\nleftarrow', '\\nLeftarrow', '\\nleftrightarrow',
|
|
'\\nLeftrightarrow', '\\nleq', '\\nleqq', '\\nleqslant', '\\nless',
|
|
'\\nmid', '\\nolimits', '\\not', '\\notin', '\\nparallel', '\\nprec',
|
|
'\\npreceq', '\\nrightarrow', '\\nRightarrow', '\\nshortmid',
|
|
'\\nshortparallel', '\\nsim', '\\nsubseteq', '\\nsubseteqq', '\\nsucc',
|
|
'\\nsucceq', '\\nsupseteq', '\\nsupseteqq', '\\ntriangleleft',
|
|
'\\ntrianglelefteq', '\\ntriangleright', '\\ntrianglerighteq', '\\nu',
|
|
'\\Nu', '\\nvdash', '\\nVdash', '\\nvDash', '\\nVDash', '\\nwarrow', '\\O',
|
|
'\\odot', '\\officialeuro', '\\oint', '\\omega', '\\Omega', '\\omicron',
|
|
'\\Omicron', '\\ominus', '\\operatorname', '\\oplus', '\\or', '\\oslash',
|
|
'\\otimes', '\\over', '\\overbrace', '\\overleftarrow',
|
|
'\\overleftrightarrow', '\\overline', '\\overrightarrow', '\\overset',
|
|
'\\P', '\\pagecolor', '\\parallel', '\\part', '\\partial', '\\perp', '\\phi',
|
|
'\\Phi', '\\pi', '\\Pi', '\\pitchfork', '\\plusmn', '\\pm', '\\pmod',
|
|
'\\Pr', '\\prec', '\\precapprox', '\\preccurlyeq', '\\preceq',
|
|
'\\precnapprox', '\\precneqq', '\\precnsim', '\\precsim', '\\prime',
|
|
'\\prod', '\\projlim', '\\propto', '\\psi', '\\Psi', '\\Q', '\\qquad',
|
|
'\\quad', '\\R', '\\rang', '\\rangle', '\\rarr', '\\Rarr', '\\rArr',
|
|
'\\rbrace', '\\rbrack', '\\rceil', '\\Re', '\\real', '\\reals', '\\Reals',
|
|
'\\restriction', '\\rfloor', '\\rho', '\\Rho', '\\rightarrow',
|
|
'\\Rightarrow', '\\rightarrowtail', '\\rightharpoondown', '\\rightharpoonup',
|
|
'\\rightleftarrows', '\\rightleftharpoons', '\\rightrightarrows',
|
|
'\\rightsquigarrow', '\\rightthreetimes', '\\risingdotseq',
|
|
'\\Rrightarrow', '\\Rsh', '\\rtimes', '\\rVert', '\\S', '\\Sampi', '\\sampi',
|
|
'\\scriptscriptstyle', '\\scriptstyle', '\\sdot', '\\searrow', '\\sec',
|
|
'\\sect', '\\sen', '\\setminus', '\\sgn', '\\sharp', '\\shortmid',
|
|
'\\shortparallel', '\\sigma', '\\Sigma', '\\sim', '\\simeq', '\\sin',
|
|
'\\sinh', '\\smallfrown', '\\smallsetminus', '\\smallsmile', '\\smile',
|
|
'\\spades', '\\spadesuit', '\\sphericalangle', '\\sqcap', '\\sqcup',
|
|
'\\sqrt', '\\sqsubset', '\\sqsubseteq', '\\sqsupset', '\\sqsupseteq',
|
|
'\\square', '\\stackrel', '\\star', '\\Stigma', '\\stigma', '\\sub',
|
|
'\\sube', '\\subset', '\\Subset', '\\subseteq', '\\subseteqq',
|
|
'\\subsetneq', '\\subsetneqq', '\\succ', '\\succapprox', '\\succcurlyeq',
|
|
'\\succeq', '\\succnapprox', '\\succneqq', '\\succnsim', '\\succsim',
|
|
'\\sum', '\\sup', '\\supe', '\\supset', '\\Supset', '\\supseteq',
|
|
'\\supseteqq', '\\supsetneq', '\\supsetneqq', '\\surd', '\\swarrow',
|
|
'\\tan', '\\tanh', '\\tau', '\\Tau', '\\tbinom', '\\textbf', '\\textit',
|
|
'\\textrm', '\\textsf', '\\textstyle', '\\texttt', '\\textvisiblespace',
|
|
'\\tfrac', '\\therefore', '\\theta', '\\Theta', '\\thetasym', '\\thickapprox',
|
|
'\\thicksim', '\\tilde', '\\times', '\\to', '\\top', '\\triangle',
|
|
'\\triangledown', '\\triangleleft', '\\trianglelefteq', '\\triangleq',
|
|
'\\triangleright', '\\trianglerighteq', '\\twoheadleftarrow',
|
|
'\\twoheadrightarrow', '\\uarr', '\\uArr', '\\Uarr', '\\ulcorner',
|
|
'\\underbrace', '\\underline', '\\underset', '\\uparrow', '\\Uparrow',
|
|
'\\updownarrow', '\\Updownarrow', '\\upharpoonleft', '\\upharpoonright',
|
|
'\\uplus', '\\upsilon', '\\Upsilon', '\\upuparrows', '\\urcorner',
|
|
'\\varcoppa', '\\varepsilon', '\\varinjlim', '\\varkappa', '\\varliminf',
|
|
'\\varlimsup', '\\varnothing', '\\varphi', '\\varpi', '\\varprojlim',
|
|
'\\varpropto', '\\varrho', '\\varsigma', '\\varstigma', '\\varsubsetneq',
|
|
'\\varsubsetneqq', '\\varsupsetneq', '\\varsupsetneqq', '\\vartheta',
|
|
'\\vartriangle', '\\vartriangleleft', '\\vartriangleright', '\\vdash',
|
|
'\\Vdash', '\\vDash', '\\vdots', '\\vec', '\\vee', '\\veebar', '\\Vert',
|
|
'\\vert', '\\vline', '\\Vvdash', '\\wedge', '\\weierp', '\\widehat',
|
|
'\\widetilde', '\\wp', '\\wr', '\\xcancel', '\\xi', '\\Xi',
|
|
'\\xleftarrow', '\\xrightarrow', '\\Z', '\\zeta', '\\Zeta'
|
|
];
|
|
|
|
/* Registration */
|
|
|
|
ve.ui.windowFactory.register( ve.ui.MWMathDialog );
|