starmath: Add Arabic functions to elements panel

Change-Id: I9aa1bdd344dbca078aec683b5fcd93fd07d98521
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157365
Tested-by: Jenkins
Reviewed-by: خالد حسني <khaled@libreoffice.org>
This commit is contained in:
Khaled Hosny
2023-09-28 14:34:43 +02:00
committed by خالد حسني
parent 0eebe81f9d
commit fb0ecd6401
2 changed files with 354 additions and 302 deletions
+313 -288
View File
@@ -20,294 +20,319 @@
inline constexpr OUStringLiteral RID_UNDOFORMATNAME = u"Format";
// clang-format off
#define RID_PLUSX "+<?> "
#define RID_MINUSX "-<?> "
#define RID_PLUSMINUSX "+-<?> "
#define RID_MINUSPLUSX "-+<?> "
#define RID_NEGX "neg <?> "
#define RID_XPLUSY "<?> + <?> "
#define RID_XMINUSY "<?> - <?> "
#define RID_XCDOTY "<?> cdot <?> "
#define RID_XTIMESY "<?> times <?> "
#define RID_XSYMTIMESY "<?> * <?> "
#define RID_XSYMDIVIDEY "<?> / <?> "
#define RID_XDIVY "<?> div <?> "
#define RID_XOVERY "{<?>} over {<?>} "
#define RID_FRACXY "frac {<?>} {<?>} "
#define RID_XODIVIDEY "<?> odivide <?> "
#define RID_XODOTY "<?> odot <?> "
#define RID_XOMINUSY "<?> ominus <?> "
#define RID_XOPLUSY "<?> oplus <?> "
#define RID_XOTIMESY "<?> otimes <?> "
#define RID_XANDY "<?> and <?> "
#define RID_XORY "<?> or <?> "
#define RID_XEQY "<?> = <?> "
#define RID_XNEQY "<?> <> <?> "
#define RID_XLTY "<?> < <?> "
#define RID_XGTY "<?> > <?> "
#define RID_XLEY "<?> <= <?> "
#define RID_XGEY "<?> >= <?> "
#define RID_XLESLANTY "<?> leslant <?> "
#define RID_XGESLANTY "<?> geslant <?> "
#define RID_XLLY "<?> << <?> "
#define RID_XGGY "<?> >> <?> "
#define RID_XDEFY "<?> def <?> "
#define RID_XEQUIVY "<?> equiv <?> "
#define RID_XAPPROXY "<?> approx <?> "
#define RID_XSIMY "<?> sim <?> "
#define RID_XSIMEQY "<?> simeq <?> "
#define RID_XPROPY "<?> prop <?> "
#define RID_XORTHOY "<?> ortho <?> "
#define RID_XPARALLELY "<?> parallel <?> "
#define RID_XTOWARDY "<?> toward <?> "
#define RID_XTRANSLY "<?> transl <?> "
#define RID_XTRANSRY "<?> transr <?> "
#define RID_XINY "<?> in <?> "
#define RID_XNOTINY "<?> notin <?> "
#define RID_XOWNSY "<?> owns <?> "
#define RID_XUNIONY "<?> union <?> "
#define RID_XINTERSECTIONY "<?> intersection <?> "
#define RID_XSETMINUSY "<?> setminus <?> "
#define RID_XSETQUOTIENTY "<?> setquotient <?> "
#define RID_XSUBSETY "<?> subset <?> "
#define RID_XSUBSETEQY "<?> subseteq <?> "
#define RID_XSUPSETY "<?> supset <?> "
#define RID_XSUPSETEQY "<?> supseteq <?> "
#define RID_XNSUBSETY "<?> nsubset <?> "
#define RID_XNSUBSETEQY "<?> nsubseteq <?> "
#define RID_XNSUPSETY "<?> nsupset <?> "
#define RID_XNSUPSETEQY "<?> nsupseteq <?> "
#define RID_FUNCX "func <?>(<?>) "
#define RID_ABSX "abs{<?>} "
#define RID_FACTX "fact{<?>} "
#define RID_SQRTX "sqrt{<?>} "
#define RID_NROOTXY "nroot{<?>}{<?>} "
#define RID_EX "func e^{<?>} "
#define RID_EXPX "exp(<?>) "
#define RID_LNX "ln(<?>) "
#define RID_LOGX "log(<?>) "
#define RID_SINX "sin(<?>) "
#define RID_COSX "cos(<?>) "
#define RID_TANX "tan(<?>) "
#define RID_COTX "cot(<?>) "
#define RID_ARCSINX "arcsin(<?>) "
#define RID_ARCCOSX "arccos(<?>) "
#define RID_ARCTANX "arctan(<?>) "
#define RID_ARCCOTX "arccot(<?>) "
#define RID_SINHX "sinh(<?>) "
#define RID_COSHX "cosh(<?>) "
#define RID_TANHX "tanh(<?>) "
#define RID_COTHX "coth(<?>) "
#define RID_ARSINHX "arsinh(<?>) "
#define RID_ARCOSHX "arcosh(<?>) "
#define RID_ARTANHX "artanh(<?>) "
#define RID_ARCOTHX "arcoth(<?>) "
#define RID_OPERX "oper oper <?> "
#define RID_OPER_FROMX "oper oper from{<?>} <?> "
#define RID_OPER_TOX "oper oper to{<?>} <?> "
#define RID_OPER_FROMTOX "oper oper from{<?>} to{<?>} <?> "
#define RID_SUMX "sum <?> "
#define RID_SUM_FROMX "sum from{<?>} <?> "
#define RID_SUM_TOX "sum to{<?>} <?> "
#define RID_SUM_FROMTOX "sum from{<?>} to{<?>} <?> "
#define RID_MAJX "maj <?> "
#define RID_MAJ_FROMX "maj from{<?>} <?> "
#define RID_MAJ_TOX "maj to{<?>} <?> "
#define RID_MAJ_FROMTOX "maj from{<?>} to{<?>} <?> "
#define RID_PRODX "prod <?> "
#define RID_PROD_FROMX "prod from{<?>} <?> "
#define RID_PROD_TOX "prod to{<?>} <?> "
#define RID_PROD_FROMTOX "prod from{<?>} to{<?>} <?> "
#define RID_COPRODX "coprod <?> "
#define RID_COPROD_FROMX "coprod from{<?>} <?> "
#define RID_COPROD_TOX "coprod to{<?>} <?> "
#define RID_COPROD_FROMTOX "coprod from{<?>} to{<?>} <?> "
#define RID_LIMX "lim <?> "
#define RID_LIM_FROMX "lim from{<?>} <?> "
#define RID_LIM_TOX "lim to{<?>} <?> "
#define RID_LIM_FROMTOX "lim from{<?>} to{<?>} <?> "
#define RID_LIMINFX "liminf <?> "
#define RID_LIMINF_FROMX "liminf from{<?>} <?> "
#define RID_LIMINF_TOX "liminf to{<?>} <?> "
#define RID_LIMINF_FROMTOX "liminf from{<?>} to{<?>} <?> "
#define RID_LIMSUPX "limsup <?> "
#define RID_LIMSUP_FROMX "limsup from{<?>} <?> "
#define RID_LIMSUP_TOX "limsup to{<?>} <?> "
#define RID_LIMSUP_FROMTOX "limsup from{<?>} to{<?>} <?> "
#define RID_HADDX "hadd <?> "
#define RID_HADD_FROMX "hadd from{<?>} <?> "
#define RID_HADD_TOX "hadd to{<?>} <?> "
#define RID_HADD_FROMTOX "hadd from{<?>} to{<?>} <?> "
#define RID_EXISTS "exists "
#define RID_NOTEXISTS "notexists "
#define RID_FORALL "forall "
#define RID_INTX "int <?> "
#define RID_INT_FROMX "int from{<?>} <?> "
#define RID_INT_TOX "int to{<?>} <?> "
#define RID_INT_FROMTOX "int from{<?>} to{<?>} <?> "
#define RID_IINTX "iint <?> "
#define RID_IINT_FROMX "iint from{<?>} <?> "
#define RID_IINT_TOX "iint to{<?>} <?> "
#define RID_IINT_FROMTOX "iint from{<?>} to{<?>} <?> "
#define RID_IIINTX "iiint <?> "
#define RID_IIINT_FROMX "iiint from{<?>} <?> "
#define RID_IIINT_TOX "iiint to{<?>} <?> "
#define RID_IIINT_FROMTOX "iiint from{<?>} to{<?>} <?> "
#define RID_LINTX "lint <?> "
#define RID_LINT_FROMX "lint from{<?>} <?> "
#define RID_LINT_TOX "lint to{<?>} <?> "
#define RID_LINT_FROMTOX "lint from{<?>} to{<?>} <?> "
#define RID_LLINTX "llint <?> "
#define RID_LLINT_FROMX "llint from{<?>} <?> "
#define RID_LLINT_TOX "llint to{<?>} <?> "
#define RID_LLINT_FROMTOX "llint from{<?>} to{<?>} <?> "
#define RID_LLLINTX "lllint <?> "
#define RID_LLLINT_FROMX "lllint from{<?>} <?> "
#define RID_LLLINT_TOX "lllint to{<?>} <?> "
#define RID_LLLINT_FROMTOX "lllint from{<?>} to{<?>} <?> "
#define RID_FROMX "from{<?>} <?> "
#define RID_TOX "to{<?>} <?> "
#define RID_FROMXTOY "from{<?>} to{<?>} <?> "
#define RID_ACUTEX "acute <?> "
#define RID_BARX "bar <?> "
#define RID_BREVEX "breve <?> "
#define RID_CHECKX "check <?> "
#define RID_CIRCLEX "circle <?> "
#define RID_DOTX "dot <?> "
#define RID_DDOTX "ddot <?> "
#define RID_DDDOTX "dddot <?> "
#define RID_GRAVEX "grave <?> "
#define RID_HATX "hat <?> "
#define RID_TILDEX "tilde <?> "
#define RID_VECX "vec <?> "
#define RID_HARPOONX "harpoon <?> "
#define RID_UNDERLINEX "underline {<?>} "
#define RID_OVERLINEX "overline {<?>} "
#define RID_OVERSTRIKEX "overstrike {<?>} "
#define RID_PHANTOMX "phantom {<?>} "
#define RID_BOLDX "bold <?> "
#define RID_ITALX "ital <?> "
#define RID_SIZEXY "size <?> {<?>} "
#define RID_FONTXY "font <?> {<?>} "
#define RID_COLORX_BLACK "color black {<?>} "
#define RID_COLORX_BLUE "color blue {<?>} "
#define RID_COLORX_GREEN "color green {<?>} "
#define RID_COLORX_RED "color red {<?>} "
#define RID_COLORX_AQUA "color aqua {<?>} "
#define RID_COLORX_FUCHSIA "color fuchsia {<?>} "
#define RID_COLORX_GRAY "color gray {<?>} "
#define RID_COLORX_LIME "color lime {<?>} "
#define RID_COLORX_MAROON "color maroon {<?>} "
#define RID_COLORX_NAVY "color navy {<?>} "
#define RID_COLORX_OLIVE "color olive {<?>} "
#define RID_COLORX_PURPLE "color purple {<?>} "
#define RID_COLORX_SILVER "color silver {<?>} "
#define RID_COLORX_TEAL "color teal {<?>} "
#define RID_COLORX_YELLOW "color yellow {<?>} "
#define RID_COLORX_RGB "color rgb 0 0 0 {<?>} "
#define RID_COLORX_RGBA "color rgba 0 0 0 0 {<?>} "
#define RID_COLORX_HEX "color hex 000000 {<?>} "
#define RID_COLORX_CORAL "color coral {<?>} "
#define RID_COLORX_CRIMSON "color crimson {<?>} "
#define RID_COLORX_MIDNIGHT "color midnightblue {<?>} "
#define RID_COLORX_VIOLET "color violet {<?>} "
#define RID_COLORX_ORANGE "color orange {<?>} "
#define RID_COLORX_ORANGERED "color orangered {<?>} "
#define RID_COLORX_SEAGREEN "color seagreen {<?>} "
#define RID_COLORX_INDIGO "color indigo {<?>} "
#define RID_COLORX_HOTPINK "color hotpink {<?>} "
#define RID_COLORX_LAVENDER "color lavender {<?>} "
#define RID_COLORX_SNOW "color snow {<?>} "
#define RID_LRGROUPX "{<?>} "
#define RID_LRPARENTX "(<?>) "
#define RID_LRBRACKETX "[<?>] "
#define RID_LRDBRACKETX "ldbracket <?> rdbracket "
#define RID_LRBRACEX "lbrace <?> rbrace "
#define RID_LRANGLEX "langle <?> rangle "
#define RID_LRCEILX "lceil <?> rceil "
#define RID_LRFLOORX "lfloor <?> rfloor "
#define RID_LRLINEX "lline <?> rline "
#define RID_LRDLINEX "ldline <?> rdline "
#define RID_LMRANGLEXY "langle <?> mline <?> rangle "
#define RID_SLRPARENTX "left ( <?> right ) "
#define RID_SLRBRACKETX "left [ <?> right ] "
#define RID_SLRDBRACKETX "left ldbracket <?> right rdbracket "
#define RID_SLRBRACEX "left lbrace <?> right rbrace "
#define RID_SLRANGLEX "left langle <?> right rangle "
#define RID_SLRCEILX "left lceil <?> right rceil "
#define RID_SLRFLOORX "left lfloor <?> right rfloor "
#define RID_SLRLINEX "left lline <?> right rline "
#define RID_SLRDLINEX "left ldline <?> right rdline "
#define RID_SLMRANGLEXY "left langle <?> mline <?> right rangle "
#define RID_XOVERBRACEY "{<?>} overbrace {<?>} "
#define RID_XUNDERBRACEY "{<?>} underbrace {<?>} "
#define RID_EVALX "evaluate <?> "
#define RID_EVAL_FROMX "evaluate {<?>} from{<?>} "
#define RID_EVAL_TOX "evaluate {<?>} to{<?>} "
#define RID_EVAL_FROMTOX "evaluate {<?>} from{<?>} to{<?>} "
#define RID_RSUBX "<?>_{<?>} "
#define RID_RSUPX "<?>^{<?>} "
#define RID_LSUBX "<?> lsub{<?>} "
#define RID_LSUPX "<?> lsup{<?>} "
#define RID_CSUBX "<?> csub{<?>} "
#define RID_CSUPX "<?> csup{<?>} "
#define RID_SBLANK "` "
#define RID_BLANK "~ "
#define RID_NEWLINE "newline "
#define RID_BINOMXY "binom{<?>}{<?>} "
#define RID_STACK "stack{<?> # <?> # <?>} "
#define RID_MATRIX "matrix{<?> # <?> ## <?> # <?>} "
#define RID_ALIGNLX "alignl <?> "
#define RID_ALIGNCX "alignc <?> "
#define RID_ALIGNRX "alignr <?> "
#define RID_ALEPH "aleph "
#define RID_EMPTYSET "emptyset "
#define RID_RE "Re "
#define RID_IM "Im "
#define RID_INFINITY "infinity "
#define RID_PARTIAL "partial "
#define RID_NABLA "nabla "
#define RID_WP "wp "
#define RID_LAPLACE "laplace "
#define RID_BACKEPSILON "backepsilon "
#define RID_FOURIER "fourier "
#define RID_DOTSAXIS "dotsaxis "
#define RID_DOTSUP "dotsup "
#define RID_DOTSDOWN "dotsdown "
#define RID_DOTSLOW "dotslow "
#define RID_DOTSVERT "dotsvert "
#define RID_XCIRCY "<?> circ <?> "
#define RID_XWIDESLASHY "{<?>} wideslash {<?>} "
#define RID_XWIDEBSLASHY "{<?>} widebslash {<?>} "
#define RID_XDIVIDESY "<?> divides <?> "
#define RID_XNDIVIDESY "<?> ndivides <?> "
#define RID_DLARROW "<?> dlarrow <?> "
#define RID_DLRARROW "<?> dlrarrow <?> "
#define RID_DRARROW "<?> drarrow <?> "
#define RID_SETN "setN "
#define RID_SETZ "setZ "
#define RID_SETQ "setQ "
#define RID_SETR "setR "
#define RID_SETC "setC "
#define RID_WIDEHATX "widehat {<?>} "
#define RID_WIDETILDEX "widetilde {<?>} "
#define RID_WIDEVECX "widevec {<?>} "
#define RID_WIDEHARPOONX "wideharpoon {<?>} "
#define RID_HBAR "hbar "
#define RID_LAMBDABAR "lambdabar "
#define RID_LEFTARROW "leftarrow "
#define RID_RIGHTARROW "rightarrow "
#define RID_UPARROW "uparrow "
#define RID_DOWNARROW "downarrow "
#define RID_NOSPACE "nospace {<?>} "
#define RID_XPRECEDESY "<?> prec <?> "
#define RID_XPRECEDESEQUALY "<?> preccurlyeq <?> "
#define RID_XPRECEDESEQUIVY "<?> precsim <?> "
#define RID_XSUCCEEDSY "<?> succ <?> "
#define RID_XSUCCEEDSEQUALY "<?> succcurlyeq <?> "
#define RID_XSUCCEEDSEQUIVY "<?> succsim <?> "
#define RID_XNOTPRECEDESY "<?> nprec <?> "
#define RID_XNOTSUCCEEDSY "<?> nsucc <?> "
#define RID_PLUSX u"+<?> "
#define RID_MINUSX u"-<?> "
#define RID_PLUSMINUSX u"+-<?> "
#define RID_MINUSPLUSX u"-+<?> "
#define RID_NEGX u"neg <?> "
#define RID_XPLUSY u"<?> + <?> "
#define RID_XMINUSY u"<?> - <?> "
#define RID_XCDOTY u"<?> cdot <?> "
#define RID_XTIMESY u"<?> times <?> "
#define RID_XSYMTIMESY u"<?> * <?> "
#define RID_XSYMDIVIDEY u"<?> / <?> "
#define RID_XDIVY u"<?> div <?> "
#define RID_XOVERY u"{<?>} over {<?>} "
#define RID_FRACXY u"frac {<?>} {<?>} "
#define RID_XODIVIDEY u"<?> odivide <?> "
#define RID_XODOTY u"<?> odot <?> "
#define RID_XOMINUSY u"<?> ominus <?> "
#define RID_XOPLUSY u"<?> oplus <?> "
#define RID_XOTIMESY u"<?> otimes <?> "
#define RID_XANDY u"<?> and <?> "
#define RID_XORY u"<?> or <?> "
#define RID_XEQY u"<?> = <?> "
#define RID_XNEQY u"<?> <> <?> "
#define RID_XLTY u"<?> < <?> "
#define RID_XGTY u"<?> > <?> "
#define RID_XLEY u"<?> <= <?> "
#define RID_XGEY u"<?> >= <?> "
#define RID_XLESLANTY u"<?> leslant <?> "
#define RID_XGESLANTY u"<?> geslant <?> "
#define RID_XLLY u"<?> << <?> "
#define RID_XGGY u"<?> >> <?> "
#define RID_XDEFY u"<?> def <?> "
#define RID_XEQUIVY u"<?> equiv <?> "
#define RID_XAPPROXY u"<?> approx <?> "
#define RID_XSIMY u"<?> sim <?> "
#define RID_XSIMEQY u"<?> simeq <?> "
#define RID_XPROPY u"<?> prop <?> "
#define RID_XORTHOY u"<?> ortho <?> "
#define RID_XPARALLELY u"<?> parallel <?> "
#define RID_XTOWARDY u"<?> toward <?> "
#define RID_XTRANSLY u"<?> transl <?> "
#define RID_XTRANSRY u"<?> transr <?> "
#define RID_XINY u"<?> in <?> "
#define RID_XNOTINY u"<?> notin <?> "
#define RID_XOWNSY u"<?> owns <?> "
#define RID_XUNIONY u"<?> union <?> "
#define RID_XINTERSECTIONY u"<?> intersection <?> "
#define RID_XSETMINUSY u"<?> setminus <?> "
#define RID_XSETQUOTIENTY u"<?> setquotient <?> "
#define RID_XSUBSETY u"<?> subset <?> "
#define RID_XSUBSETEQY u"<?> subseteq <?> "
#define RID_XSUPSETY u"<?> supset <?> "
#define RID_XSUPSETEQY u"<?> supseteq <?> "
#define RID_XNSUBSETY u"<?> nsubset <?> "
#define RID_XNSUBSETEQY u"<?> nsubseteq <?> "
#define RID_XNSUPSETY u"<?> nsupset <?> "
#define RID_XNSUPSETEQY u"<?> nsupseteq <?> "
#define RID_FUNCX u"func <?>(<?>) "
#define RID_ABSX u"abs{<?>} "
#define RID_FACTX u"fact{<?>} "
#define RID_SQRTX u"sqrt{<?>} "
#define RID_NROOTXY u"nroot{<?>}{<?>} "
#define RID_EX u"func e^{<?>} "
#define RID_EXPX u"exp(<?>) "
#define RID_LNX u"ln(<?>) "
#define RID_LOGX u"log(<?>) "
#define RID_SINX u"sin(<?>) "
#define RID_COSX u"cos(<?>) "
#define RID_TANX u"tan(<?>) "
#define RID_COTX u"cot(<?>) "
#define RID_ARCSINX u"arcsin(<?>) "
#define RID_ARCCOSX u"arccos(<?>) "
#define RID_ARCTANX u"arctan(<?>) "
#define RID_ARCCOTX u"arccot(<?>) "
#define RID_SINHX u"sinh(<?>) "
#define RID_COSHX u"cosh(<?>) "
#define RID_TANHX u"tanh(<?>) "
#define RID_COTHX u"coth(<?>) "
#define RID_ARSINHX u"arsinh(<?>) "
#define RID_ARCOSHX u"arcosh(<?>) "
#define RID_ARTANHX u"artanh(<?>) "
#define RID_ARCOTHX u"arcoth(<?>) "
#define RID_OPERX u"oper oper <?> "
#define RID_OPER_FROMX u"oper oper from{<?>} <?> "
#define RID_OPER_TOX u"oper oper to{<?>} <?> "
#define RID_OPER_FROMTOX u"oper oper from{<?>} to{<?>} <?> "
#define RID_SUMX u"sum <?> "
#define RID_SUM_FROMX u"sum from{<?>} <?> "
#define RID_SUM_TOX u"sum to{<?>} <?> "
#define RID_SUM_FROMTOX u"sum from{<?>} to{<?>} <?> "
#define RID_MAJX u"maj <?> "
#define RID_MAJ_FROMX u"maj from{<?>} <?> "
#define RID_MAJ_TOX u"maj to{<?>} <?> "
#define RID_MAJ_FROMTOX u"maj from{<?>} to{<?>} <?> "
#define RID_PRODX u"prod <?> "
#define RID_PROD_FROMX u"prod from{<?>} <?> "
#define RID_PROD_TOX u"prod to{<?>} <?> "
#define RID_PROD_FROMTOX u"prod from{<?>} to{<?>} <?> "
#define RID_COPRODX u"coprod <?> "
#define RID_COPROD_FROMX u"coprod from{<?>} <?> "
#define RID_COPROD_TOX u"coprod to{<?>} <?> "
#define RID_COPROD_FROMTOX u"coprod from{<?>} to{<?>} <?> "
#define RID_LIMX u"lim <?> "
#define RID_LIM_FROMX u"lim from{<?>} <?> "
#define RID_LIM_TOX u"lim to{<?>} <?> "
#define RID_LIM_FROMTOX u"lim from{<?>} to{<?>} <?> "
#define RID_LIMINFX u"liminf <?> "
#define RID_LIMINF_FROMX u"liminf from{<?>} <?> "
#define RID_LIMINF_TOX u"liminf to{<?>} <?> "
#define RID_LIMINF_FROMTOX u"liminf from{<?>} to{<?>} <?> "
#define RID_LIMSUPX u"limsup <?> "
#define RID_LIMSUP_FROMX u"limsup from{<?>} <?> "
#define RID_LIMSUP_TOX u"limsup to{<?>} <?> "
#define RID_LIMSUP_FROMTOX u"limsup from{<?>} to{<?>} <?> "
#define RID_HADDX u"hadd <?> "
#define RID_HADD_FROMX u"hadd from{<?>} <?> "
#define RID_HADD_TOX u"hadd to{<?>} <?> "
#define RID_HADD_FROMTOX u"hadd from{<?>} to{<?>} <?> "
#define RID_EXISTS u"exists "
#define RID_NOTEXISTS u"notexists "
#define RID_FORALL u"forall "
#define RID_INTX u"int <?> "
#define RID_INT_FROMX u"int from{<?>} <?> "
#define RID_INT_TOX u"int to{<?>} <?> "
#define RID_INT_FROMTOX u"int from{<?>} to{<?>} <?> "
#define RID_IINTX u"iint <?> "
#define RID_IINT_FROMX u"iint from{<?>} <?> "
#define RID_IINT_TOX u"iint to{<?>} <?> "
#define RID_IINT_FROMTOX u"iint from{<?>} to{<?>} <?> "
#define RID_IIINTX u"iiint <?> "
#define RID_IIINT_FROMX u"iiint from{<?>} <?> "
#define RID_IIINT_TOX u"iiint to{<?>} <?> "
#define RID_IIINT_FROMTOX u"iiint from{<?>} to{<?>} <?> "
#define RID_LINTX u"lint <?> "
#define RID_LINT_FROMX u"lint from{<?>} <?> "
#define RID_LINT_TOX u"lint to{<?>} <?> "
#define RID_LINT_FROMTOX u"lint from{<?>} to{<?>} <?> "
#define RID_LLINTX u"llint <?> "
#define RID_LLINT_FROMX u"llint from{<?>} <?> "
#define RID_LLINT_TOX u"llint to{<?>} <?> "
#define RID_LLINT_FROMTOX u"llint from{<?>} to{<?>} <?> "
#define RID_LLLINTX u"lllint <?> "
#define RID_LLLINT_FROMX u"lllint from{<?>} <?> "
#define RID_LLLINT_TOX u"lllint to{<?>} <?> "
#define RID_LLLINT_FROMTOX u"lllint from{<?>} to{<?>} <?> "
#define RID_FROMX u"from{<?>} <?> "
#define RID_TOX u"to{<?>} <?> "
#define RID_FROMXTOY u"from{<?>} to{<?>} <?> "
#define RID_ACUTEX u"acute <?> "
#define RID_BARX u"bar <?> "
#define RID_BREVEX u"breve <?> "
#define RID_CHECKX u"check <?> "
#define RID_CIRCLEX u"circle <?> "
#define RID_DOTX u"dot <?> "
#define RID_DDOTX u"ddot <?> "
#define RID_DDDOTX u"dddot <?> "
#define RID_GRAVEX u"grave <?> "
#define RID_HATX u"hat <?> "
#define RID_TILDEX u"tilde <?> "
#define RID_VECX u"vec <?> "
#define RID_HARPOONX u"harpoon <?> "
#define RID_UNDERLINEX u"underline {<?>} "
#define RID_OVERLINEX u"overline {<?>} "
#define RID_OVERSTRIKEX u"overstrike {<?>} "
#define RID_PHANTOMX u"phantom {<?>} "
#define RID_BOLDX u"bold <?> "
#define RID_ITALX u"ital <?> "
#define RID_SIZEXY u"size <?> {<?>} "
#define RID_FONTXY u"font <?> {<?>} "
#define RID_COLORX_BLACK u"color black {<?>} "
#define RID_COLORX_BLUE u"color blue {<?>} "
#define RID_COLORX_GREEN u"color green {<?>} "
#define RID_COLORX_RED u"color red {<?>} "
#define RID_COLORX_AQUA u"color aqua {<?>} "
#define RID_COLORX_FUCHSIA u"color fuchsia {<?>} "
#define RID_COLORX_GRAY u"color gray {<?>} "
#define RID_COLORX_LIME u"color lime {<?>} "
#define RID_COLORX_MAROON u"color maroon {<?>} "
#define RID_COLORX_NAVY u"color navy {<?>} "
#define RID_COLORX_OLIVE u"color olive {<?>} "
#define RID_COLORX_PURPLE u"color purple {<?>} "
#define RID_COLORX_SILVER u"color silver {<?>} "
#define RID_COLORX_TEAL u"color teal {<?>} "
#define RID_COLORX_YELLOW u"color yellow {<?>} "
#define RID_COLORX_RGB u"color rgb 0 0 0 {<?>} "
#define RID_COLORX_RGBA u"color rgba 0 0 0 0 {<?>} "
#define RID_COLORX_HEX u"color hex 000000 {<?>} "
#define RID_COLORX_CORAL u"color coral {<?>} "
#define RID_COLORX_CRIMSON u"color crimson {<?>} "
#define RID_COLORX_MIDNIGHT u"color midnightblue {<?>} "
#define RID_COLORX_VIOLET u"color violet {<?>} "
#define RID_COLORX_ORANGE u"color orange {<?>} "
#define RID_COLORX_ORANGERED u"color orangered {<?>} "
#define RID_COLORX_SEAGREEN u"color seagreen {<?>} "
#define RID_COLORX_INDIGO u"color indigo {<?>} "
#define RID_COLORX_HOTPINK u"color hotpink {<?>} "
#define RID_COLORX_LAVENDER u"color lavender {<?>} "
#define RID_COLORX_SNOW u"color snow {<?>} "
#define RID_LRGROUPX u"{<?>} "
#define RID_LRPARENTX u"(<?>) "
#define RID_LRBRACKETX u"[<?>] "
#define RID_LRDBRACKETX u"ldbracket <?> rdbracket "
#define RID_LRBRACEX u"lbrace <?> rbrace "
#define RID_LRANGLEX u"langle <?> rangle "
#define RID_LRCEILX u"lceil <?> rceil "
#define RID_LRFLOORX u"lfloor <?> rfloor "
#define RID_LRLINEX u"lline <?> rline "
#define RID_LRDLINEX u"ldline <?> rdline "
#define RID_LMRANGLEXY u"langle <?> mline <?> rangle "
#define RID_SLRPARENTX u"left ( <?> right ) "
#define RID_SLRBRACKETX u"left [ <?> right ] "
#define RID_SLRDBRACKETX u"left ldbracket <?> right rdbracket "
#define RID_SLRBRACEX u"left lbrace <?> right rbrace "
#define RID_SLRANGLEX u"left langle <?> right rangle "
#define RID_SLRCEILX u"left lceil <?> right rceil "
#define RID_SLRFLOORX u"left lfloor <?> right rfloor "
#define RID_SLRLINEX u"left lline <?> right rline "
#define RID_SLRDLINEX u"left ldline <?> right rdline "
#define RID_SLMRANGLEXY u"left langle <?> mline <?> right rangle "
#define RID_XOVERBRACEY u"{<?>} overbrace {<?>} "
#define RID_XUNDERBRACEY u"{<?>} underbrace {<?>} "
#define RID_EVALX u"evaluate <?> "
#define RID_EVAL_FROMX u"evaluate {<?>} from{<?>} "
#define RID_EVAL_TOX u"evaluate {<?>} to{<?>} "
#define RID_EVAL_FROMTOX u"evaluate {<?>} from{<?>} to{<?>} "
#define RID_RSUBX u"<?>_{<?>} "
#define RID_RSUPX u"<?>^{<?>} "
#define RID_LSUBX u"<?> lsub{<?>} "
#define RID_LSUPX u"<?> lsup{<?>} "
#define RID_CSUBX u"<?> csub{<?>} "
#define RID_CSUPX u"<?> csup{<?>} "
#define RID_SBLANK u"` "
#define RID_BLANK u"~ "
#define RID_NEWLINE u"newline "
#define RID_BINOMXY u"binom{<?>}{<?>} "
#define RID_STACK u"stack{<?> # <?> # <?>} "
#define RID_MATRIX u"matrix{<?> # <?> ## <?> # <?>} "
#define RID_ALIGNLX u"alignl <?> "
#define RID_ALIGNCX u"alignc <?> "
#define RID_ALIGNRX u"alignr <?> "
#define RID_ALEPH u"aleph "
#define RID_EMPTYSET u"emptyset "
#define RID_RE u"Re "
#define RID_IM u"Im "
#define RID_INFINITY u"infinity "
#define RID_PARTIAL u"partial "
#define RID_NABLA u"nabla "
#define RID_WP u"wp "
#define RID_LAPLACE u"laplace "
#define RID_BACKEPSILON u"backepsilon "
#define RID_FOURIER u"fourier "
#define RID_DOTSAXIS u"dotsaxis "
#define RID_DOTSUP u"dotsup "
#define RID_DOTSDOWN u"dotsdown "
#define RID_DOTSLOW u"dotslow "
#define RID_DOTSVERT u"dotsvert "
#define RID_XCIRCY u"<?> circ <?> "
#define RID_XWIDESLASHY u"{<?>} wideslash {<?>} "
#define RID_XWIDEBSLASHY u"{<?>} widebslash {<?>} "
#define RID_XDIVIDESY u"<?> divides <?> "
#define RID_XNDIVIDESY u"<?> ndivides <?> "
#define RID_DLARROW u"<?> dlarrow <?> "
#define RID_DLRARROW u"<?> dlrarrow <?> "
#define RID_DRARROW u"<?> drarrow <?> "
#define RID_SETN u"setN "
#define RID_SETZ u"setZ "
#define RID_SETQ u"setQ "
#define RID_SETR u"setR "
#define RID_SETC u"setC "
#define RID_WIDEHATX u"widehat {<?>} "
#define RID_WIDETILDEX u"widetilde {<?>} "
#define RID_WIDEVECX u"widevec {<?>} "
#define RID_WIDEHARPOONX u"wideharpoon {<?>} "
#define RID_HBAR u"hbar "
#define RID_LAMBDABAR u"lambdabar "
#define RID_LEFTARROW u"leftarrow "
#define RID_RIGHTARROW u"rightarrow "
#define RID_UPARROW u"uparrow "
#define RID_DOWNARROW u"downarrow "
#define RID_NOSPACE u"nospace {<?>} "
#define RID_XPRECEDESY u"<?> prec <?> "
#define RID_XPRECEDESEQUALY u"<?> preccurlyeq <?> "
#define RID_XPRECEDESEQUIVY u"<?> precsim <?> "
#define RID_XSUCCEEDSY u"<?> succ <?> "
#define RID_XSUCCEEDSEQUALY u"<?> succcurlyeq <?> "
#define RID_XSUCCEEDSEQUIVY u"<?> succsim <?> "
#define RID_XNOTPRECEDESY u"<?> nprec <?> "
#define RID_XNOTSUCCEEDSY u"<?> nsucc <?> "
#define RID_ARALOGX u"لو(<?>) "
#define RID_ARASINX u"حا(<?>) "
#define RID_ARACOSX u"حتا(<?>) "
#define RID_ARATANX u"طا(<?>) "
#define RID_ARACOTX u"طتا(<?>) "
#define RID_ARASECX u"ٯا(<?>) "
#define RID_ARACSCX u"ٯتا(<?>) "
#define RID_ARASINHX u"حاز(<?>) "
#define RID_ARACOSHX u"حتاز(<?>) "
#define RID_ARATANHX u"طاز(<?>) "
#define RID_ARACOTHX u"طتاز(<?>) "
#define RID_ARASECHX u"ٯاز(<?>) "
#define RID_ARACSCHX u"ٯتاز(<?>) "
#define RID_ARASIN2X u"جا(<?>) "
#define RID_ARACOS2X u"جتا(<?>) "
#define RID_ARATAN2X u"ظا(<?>) "
#define RID_ARACOT2X u"ظتا(<?>) "
#define RID_ARASEC2X u"قا(<?>) "
#define RID_ARACSC2X u"قتا(<?>) "
#define RID_ARASINH2X u"جاز(<?>) "
#define RID_ARACOSH2X u"جتاز(<?>) "
#define RID_ARATANH2X u"ظاز(<?>) "
#define RID_ARACOTH2X u"ظتاز(<?>) "
#define RID_ARASECH2X u"قاز(<?>) "
#define RID_ARACSCH2X u"قتاز(<?>) "
// clang-format on
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
+41 -14
View File
@@ -44,7 +44,7 @@
namespace
{
// element, element help, element visual, element visual's translatable
typedef std::tuple<std::string_view, TranslateId, std::u16string_view, TranslateId> SmElementDescr;
typedef std::tuple<std::u16string_view, TranslateId, std::u16string_view, TranslateId> SmElementDescr;
// SmParser 5 elements
@@ -158,6 +158,7 @@ const SmElementDescr s_a5FunctionsList[] =
{RID_LNX, RID_LNX_HELP, {}, {}},
{RID_EXPX, RID_EXPX_HELP, {}, {}},
{RID_LOGX, RID_LOGX_HELP, {}, {}},
{RID_ARALOGX, RID_SINX_HELP, {}, {}},
{},
{RID_SINX, RID_SINX_HELP, {}, {}},
{RID_COSX, RID_COSX_HELP, {}, {}},
@@ -168,6 +169,32 @@ const SmElementDescr s_a5FunctionsList[] =
{RID_TANHX, RID_TANHX_HELP, {}, {}},
{RID_COTHX, RID_COTHX_HELP, {}, {}},
{},
{RID_ARASINX, RID_SINX_HELP, {}, {}},
{RID_ARACOSX, RID_COSX_HELP, {}, {}},
{RID_ARATANX, RID_TANX_HELP, {}, {}},
{RID_ARACOTX, RID_COTX_HELP, {}, {}},
{RID_ARASECX, RID_COTX_HELP, {}, {}},
{RID_ARACSCX, RID_COTX_HELP, {}, {}},
{RID_ARASINHX, RID_SINHX_HELP, {}, {}},
{RID_ARACOSHX, RID_COSHX_HELP, {}, {}},
{RID_ARATANHX, RID_TANHX_HELP, {}, {}},
{RID_ARACOTHX, RID_COTHX_HELP, {}, {}},
{RID_ARASECHX, RID_COTX_HELP, {}, {}},
{RID_ARACSCHX, RID_COTX_HELP, {}, {}},
{},
{RID_ARASIN2X, RID_SINX_HELP, {}, {}},
{RID_ARACOS2X, RID_COSX_HELP, {}, {}},
{RID_ARATAN2X, RID_TANX_HELP, {}, {}},
{RID_ARACOT2X, RID_COTX_HELP, {}, {}},
{RID_ARASEC2X, RID_COTX_HELP, {}, {}},
{RID_ARACSC2X, RID_COTX_HELP, {}, {}},
{RID_ARASINH2X, RID_SINHX_HELP, {}, {}},
{RID_ARACOSH2X, RID_COSHX_HELP, {}, {}},
{RID_ARATANH2X, RID_TANHX_HELP, {}, {}},
{RID_ARACOTH2X, RID_COTHX_HELP, {}, {}},
{RID_ARASECH2X, RID_COTX_HELP, {}, {}},
{RID_ARACSCH2X, RID_COTX_HELP, {}, {}},
{},
{RID_ARCSINX, RID_ARCSINX_HELP, {}, {}},
{RID_ARCCOSX, RID_ARCCOSX_HELP, {}, {}},
{RID_ARCTANX, RID_ARCTANX_HELP, {}, {}},
@@ -408,18 +435,18 @@ const SmElementDescr s_a5OthersList[] =
const SmElementDescr s_a5ExamplesList[] =
{
{"{func e}^{i %pi} + 1 = 0", RID_EXAMPLE_EULER_IDENTITY_HELP, {}, {}},
{"C = %pi cdot d = 2 cdot %pi cdot r", RID_EXAMPLE_CIRCUMFERENCE_HELP, {}, {}},
{"c = sqrt{ a^2 + b^2 }", RID_EXAMPLE_PYTHAGOREAN_THEO_HELP, {}, {}},
{"vec F = m times vec a", RID_EXAMPLE_2NEWTON, {}, {}},
{"E = m c^2", RID_EXAMPLE_MASS_ENERGY_EQUIV_HELP, {}, {}},
{"G_{%mu %nu} + %LAMBDA g_{%mu %nu}= frac{8 %pi G}{c^4} T_{%mu %nu}", RID_EXAMPLE_GENERAL_RELATIVITY_HELP, {}, {}},
{"%DELTA t' = { %DELTA t } over sqrt{ 1 - v^2 over c^2 }", RID_EXAMPLE_SPECIAL_RELATIVITY_HELP, {}, {}},
{"d over dt left( {partial L}over{partial dot q} right) = {partial L}over{partial q}", RID_EXAMPLE_EULER_LAGRANGE_HELP, {}, {}},
{"int from a to b f'(x) dx = f(b) - f(a)", RID_EXAMPLE_FTC_HELP, {}, {}},
{"ldline %delta bold{r}(t) rdline approx e^{%lambda t} ldline %delta { bold{r} }_0 rdline", RID_EXAMPLE_CHAOS_HELP, {}, {}},
{"f(x) = sum from { n=0 } to { infinity } { {f^{(n)}(x_0) } over { fact{n} } (x-x_0)^n }", RID_EXAMPLE_A_TAYLOR_SERIES_HELP, {}, {}},
{"f(x) = {1} over { %sigma sqrt{2 %pi} } func e^-{ {(x-%mu)^2} over {2 %sigma^2} }", RID_EXAMPLE_GAUSS_DISTRIBUTION_HELP, {}, {}},
{u"{func e}^{i %pi} + 1 = 0", RID_EXAMPLE_EULER_IDENTITY_HELP, {}, {}},
{u"C = %pi cdot d = 2 cdot %pi cdot r", RID_EXAMPLE_CIRCUMFERENCE_HELP, {}, {}},
{u"c = sqrt{ a^2 + b^2 }", RID_EXAMPLE_PYTHAGOREAN_THEO_HELP, {}, {}},
{u"vec F = m times vec a", RID_EXAMPLE_2NEWTON, {}, {}},
{u"E = m c^2", RID_EXAMPLE_MASS_ENERGY_EQUIV_HELP, {}, {}},
{u"G_{%mu %nu} + %LAMBDA g_{%mu %nu}= frac{8 %pi G}{c^4} T_{%mu %nu}", RID_EXAMPLE_GENERAL_RELATIVITY_HELP, {}, {}},
{u"%DELTA t' = { %DELTA t } over sqrt{ 1 - v^2 over c^2 }", RID_EXAMPLE_SPECIAL_RELATIVITY_HELP, {}, {}},
{u"d over dt left( {partial L}over{partial dot q} right) = {partial L}over{partial q}", RID_EXAMPLE_EULER_LAGRANGE_HELP, {}, {}},
{u"int from a to b f'(x) dx = f(b) - f(a)", RID_EXAMPLE_FTC_HELP, {}, {}},
{u"ldline %delta bold{r}(t) rdline approx e^{%lambda t} ldline %delta { bold{r} }_0 rdline", RID_EXAMPLE_CHAOS_HELP, {}, {}},
{u"f(x) = sum from { n=0 } to { infinity } { {f^{(n)}(x_0) } over { fact{n} } (x-x_0)^n }", RID_EXAMPLE_A_TAYLOR_SERIES_HELP, {}, {}},
{u"f(x) = {1} over { %sigma sqrt{2 %pi} } func e^-{ {(x-%mu)^2} over {2 %sigma^2} }", RID_EXAMPLE_GAUSS_DISTRIBUTION_HELP, {}, {}},
};
const std::vector<TranslateId> s_a5Categories{
@@ -603,7 +630,7 @@ void SmElementsControl::addElements(int nCategory)
}
else
{
OUString aElement(OUString::createFromAscii(element));
OUString aElement(element);
OUString aVisual(elementVisual.empty() ? aElement : OUString(elementVisual));
if (visualTranslatable)
aVisual = aVisual.replaceFirst("$1", SmResId(visualTranslatable));