
* add coverage calculation and push Signed-off-by: Michele Dolfi <dol@zurich.ibm.com> * new codecov version and usage of token Signed-off-by: Michele Dolfi <dol@zurich.ibm.com> * enable ruff formatter instead of black and isort Signed-off-by: Michele Dolfi <dol@zurich.ibm.com> * apply ruff lint fixes Signed-off-by: Michele Dolfi <dol@zurich.ibm.com> * apply ruff unsafe fixes Signed-off-by: Michele Dolfi <dol@zurich.ibm.com> * add removed imports Signed-off-by: Michele Dolfi <dol@zurich.ibm.com> * runs 1 on linter issues Signed-off-by: Michele Dolfi <dol@zurich.ibm.com> * finalize linter fixes Signed-off-by: Michele Dolfi <dol@zurich.ibm.com> * Update pyproject.toml Co-authored-by: Cesar Berrospi Ramis <75900930+ceberam@users.noreply.github.com> Signed-off-by: Michele Dolfi <97102151+dolfim-ibm@users.noreply.github.com> --------- Signed-off-by: Michele Dolfi <dol@zurich.ibm.com> Signed-off-by: Michele Dolfi <97102151+dolfim-ibm@users.noreply.github.com> Co-authored-by: Cesar Berrospi Ramis <75900930+ceberam@users.noreply.github.com>
270 lines
6.4 KiB
Python
270 lines
6.4 KiB
Python
"""
|
|
Adapted from https://github.com/xiilei/dwml/blob/master/dwml/latex_dict.py
|
|
On 23/01/2025
|
|
"""
|
|
|
|
CHARS = ("{", "}", "_", "^", "#", "&", "$", "%", "~")
|
|
|
|
BLANK = ""
|
|
BACKSLASH = "\\"
|
|
ALN = "&"
|
|
|
|
CHR = {
|
|
# Unicode : Latex Math Symbols
|
|
# Top accents
|
|
"\u0300": "\\grave{{{0}}}",
|
|
"\u0301": "\\acute{{{0}}}",
|
|
"\u0302": "\\hat{{{0}}}",
|
|
"\u0303": "\\tilde{{{0}}}",
|
|
"\u0304": "\\bar{{{0}}}",
|
|
"\u0305": "\\overbar{{{0}}}",
|
|
"\u0306": "\\breve{{{0}}}",
|
|
"\u0307": "\\dot{{{0}}}",
|
|
"\u0308": "\\ddot{{{0}}}",
|
|
"\u0309": "\\ovhook{{{0}}}",
|
|
"\u030a": "\\ocirc{{{0}}}}",
|
|
"\u030c": "\\check{{{0}}}}",
|
|
"\u0310": "\\candra{{{0}}}",
|
|
"\u0312": "\\oturnedcomma{{{0}}}",
|
|
"\u0315": "\\ocommatopright{{{0}}}",
|
|
"\u031a": "\\droang{{{0}}}",
|
|
"\u0338": "\\not{{{0}}}",
|
|
"\u20d0": "\\leftharpoonaccent{{{0}}}",
|
|
"\u20d1": "\\rightharpoonaccent{{{0}}}",
|
|
"\u20d2": "\\vertoverlay{{{0}}}",
|
|
"\u20d6": "\\overleftarrow{{{0}}}",
|
|
"\u20d7": "\\vec{{{0}}}",
|
|
"\u20db": "\\dddot{{{0}}}",
|
|
"\u20dc": "\\ddddot{{{0}}}",
|
|
"\u20e1": "\\overleftrightarrow{{{0}}}",
|
|
"\u20e7": "\\annuity{{{0}}}",
|
|
"\u20e9": "\\widebridgeabove{{{0}}}",
|
|
"\u20f0": "\\asteraccent{{{0}}}",
|
|
# Bottom accents
|
|
"\u0330": "\\wideutilde{{{0}}}",
|
|
"\u0331": "\\underbar{{{0}}}",
|
|
"\u20e8": "\\threeunderdot{{{0}}}",
|
|
"\u20ec": "\\underrightharpoondown{{{0}}}",
|
|
"\u20ed": "\\underleftharpoondown{{{0}}}",
|
|
"\u20ee": "\\underledtarrow{{{0}}}",
|
|
"\u20ef": "\\underrightarrow{{{0}}}",
|
|
# Over | group
|
|
"\u23b4": "\\overbracket{{{0}}}",
|
|
"\u23dc": "\\overparen{{{0}}}",
|
|
"\u23de": "\\overbrace{{{0}}}",
|
|
# Under| group
|
|
"\u23b5": "\\underbracket{{{0}}}",
|
|
"\u23dd": "\\underparen{{{0}}}",
|
|
"\u23df": "\\underbrace{{{0}}}",
|
|
}
|
|
|
|
CHR_BO = {
|
|
# Big operators,
|
|
"\u2140": "\\Bbbsum",
|
|
"\u220f": "\\prod",
|
|
"\u2210": "\\coprod",
|
|
"\u2211": "\\sum",
|
|
"\u222b": "\\int",
|
|
"\u22c0": "\\bigwedge",
|
|
"\u22c1": "\\bigvee",
|
|
"\u22c2": "\\bigcap",
|
|
"\u22c3": "\\bigcup",
|
|
"\u2a00": "\\bigodot",
|
|
"\u2a01": "\\bigoplus",
|
|
"\u2a02": "\\bigotimes",
|
|
}
|
|
|
|
T = {
|
|
# Greek letters
|
|
"\U0001d6fc": "\\alpha ",
|
|
"\U0001d6fd": "\\beta ",
|
|
"\U0001d6fe": "\\gamma ",
|
|
"\U0001d6ff": "\\theta ",
|
|
"\U0001d700": "\\epsilon ",
|
|
"\U0001d701": "\\zeta ",
|
|
"\U0001d702": "\\eta ",
|
|
"\U0001d703": "\\theta ",
|
|
"\U0001d704": "\\iota ",
|
|
"\U0001d705": "\\kappa ",
|
|
"\U0001d706": "\\lambda ",
|
|
"\U0001d707": "\\m ",
|
|
"\U0001d708": "\\n ",
|
|
"\U0001d709": "\\xi ",
|
|
"\U0001d70a": "\\omicron ",
|
|
"\U0001d70b": "\\pi ",
|
|
"\U0001d70c": "\\rho ",
|
|
"\U0001d70d": "\\varsigma ",
|
|
"\U0001d70e": "\\sigma ",
|
|
"\U0001d70f": "\\ta ",
|
|
"\U0001d710": "\\upsilon ",
|
|
"\U0001d711": "\\phi ",
|
|
"\U0001d712": "\\chi ",
|
|
"\U0001d713": "\\psi ",
|
|
"\U0001d714": "\\omega ",
|
|
"\U0001d715": "\\partial ",
|
|
"\U0001d716": "\\varepsilon ",
|
|
"\U0001d717": "\\vartheta ",
|
|
"\U0001d718": "\\varkappa ",
|
|
"\U0001d719": "\\varphi ",
|
|
"\U0001d71a": "\\varrho ",
|
|
"\U0001d71b": "\\varpi ",
|
|
# Relation symbols
|
|
"\u2190": "\\leftarrow ",
|
|
"\u2191": "\\uparrow ",
|
|
"\u2192": "\\rightarrow ",
|
|
"\u2193": "\\downright ",
|
|
"\u2194": "\\leftrightarrow ",
|
|
"\u2195": "\\updownarrow ",
|
|
"\u2196": "\\nwarrow ",
|
|
"\u2197": "\\nearrow ",
|
|
"\u2198": "\\searrow ",
|
|
"\u2199": "\\swarrow ",
|
|
"\u22ee": "\\vdots ",
|
|
"\u22ef": "\\cdots ",
|
|
"\u22f0": "\\adots ",
|
|
"\u22f1": "\\ddots ",
|
|
"\u2260": "\\ne ",
|
|
"\u2264": "\\leq ",
|
|
"\u2265": "\\geq ",
|
|
"\u2266": "\\leqq ",
|
|
"\u2267": "\\geqq ",
|
|
"\u2268": "\\lneqq ",
|
|
"\u2269": "\\gneqq ",
|
|
"\u226a": "\\ll ",
|
|
"\u226b": "\\gg ",
|
|
"\u2208": "\\in ",
|
|
"\u2209": "\\notin ",
|
|
"\u220b": "\\ni ",
|
|
"\u220c": "\\nni ",
|
|
# Ordinary symbols
|
|
"\u221e": "\\infty ",
|
|
# Binary relations
|
|
"\u00b1": "\\pm ",
|
|
"\u2213": "\\mp ",
|
|
# Italic, Latin, uppercase
|
|
"\U0001d434": "A",
|
|
"\U0001d435": "B",
|
|
"\U0001d436": "C",
|
|
"\U0001d437": "D",
|
|
"\U0001d438": "E",
|
|
"\U0001d439": "F",
|
|
"\U0001d43a": "G",
|
|
"\U0001d43b": "H",
|
|
"\U0001d43c": "I",
|
|
"\U0001d43d": "J",
|
|
"\U0001d43e": "K",
|
|
"\U0001d43f": "L",
|
|
"\U0001d440": "M",
|
|
"\U0001d441": "N",
|
|
"\U0001d442": "O",
|
|
"\U0001d443": "P",
|
|
"\U0001d444": "Q",
|
|
"\U0001d445": "R",
|
|
"\U0001d446": "S",
|
|
"\U0001d447": "T",
|
|
"\U0001d448": "U",
|
|
"\U0001d449": "V",
|
|
"\U0001d44a": "W",
|
|
"\U0001d44b": "X",
|
|
"\U0001d44c": "Y",
|
|
"\U0001d44d": "Z",
|
|
# Italic, Latin, lowercase
|
|
"\U0001d44e": "a",
|
|
"\U0001d44f": "b",
|
|
"\U0001d450": "c",
|
|
"\U0001d451": "d",
|
|
"\U0001d452": "e",
|
|
"\U0001d453": "f",
|
|
"\U0001d454": "g",
|
|
"\U0001d456": "i",
|
|
"\U0001d457": "j",
|
|
"\U0001d458": "k",
|
|
"\U0001d459": "l",
|
|
"\U0001d45a": "m",
|
|
"\U0001d45b": "n",
|
|
"\U0001d45c": "o",
|
|
"\U0001d45d": "p",
|
|
"\U0001d45e": "q",
|
|
"\U0001d45f": "r",
|
|
"\U0001d460": "s",
|
|
"\U0001d461": "t",
|
|
"\U0001d462": "u",
|
|
"\U0001d463": "v",
|
|
"\U0001d464": "w",
|
|
"\U0001d465": "x",
|
|
"\U0001d466": "y",
|
|
"\U0001d467": "z",
|
|
}
|
|
|
|
FUNC = {
|
|
"sin": "\\sin({fe})",
|
|
"cos": "\\cos({fe})",
|
|
"tan": "\\tan({fe})",
|
|
"arcsin": "\\arcsin({fe})",
|
|
"arccos": "\\arccos({fe})",
|
|
"arctan": "\\arctan({fe})",
|
|
"arccot": "\\arccot({fe})",
|
|
"sinh": "\\sinh({fe})",
|
|
"cosh": "\\cosh({fe})",
|
|
"tanh": "\\tanh({fe})",
|
|
"coth": "\\coth({fe})",
|
|
"sec": "\\sec({fe})",
|
|
"csc": "\\csc({fe})",
|
|
"mod": "\\mod {fe}",
|
|
"max": "\\max({fe})",
|
|
"min": "\\min({fe})",
|
|
}
|
|
|
|
FUNC_PLACE = "{fe}"
|
|
|
|
BRK = "\\\\"
|
|
|
|
CHR_DEFAULT = {
|
|
"ACC_VAL": "\\hat{{{0}}}",
|
|
}
|
|
|
|
POS = {
|
|
"top": "\\overline{{{0}}}", # not sure
|
|
"bot": "\\underline{{{0}}}",
|
|
}
|
|
|
|
POS_DEFAULT = {
|
|
"BAR_VAL": "\\overline{{{0}}}",
|
|
}
|
|
|
|
SUB = "_{{{0}}}"
|
|
|
|
SUP = "^{{{0}}}"
|
|
|
|
F = {
|
|
"bar": "\\frac{{{num}}}{{{den}}}",
|
|
"skw": r"^{{{num}}}/_{{{den}}}",
|
|
"noBar": "\\genfrac{{}}{{}}{{0pt}}{{}}{{{num}}}{{{den}}}",
|
|
"lin": "{{{num}}}/{{{den}}}",
|
|
}
|
|
F_DEFAULT = "\\frac{{{num}}}{{{den}}}"
|
|
|
|
D = "\\left{left}{text}\\right{right}"
|
|
|
|
D_DEFAULT = {
|
|
"left": "(",
|
|
"right": ")",
|
|
"null": ".",
|
|
}
|
|
|
|
RAD = "\\sqrt[{deg}]{{{text}}}"
|
|
RAD_DEFAULT = "\\sqrt{{{text}}}"
|
|
ARR = "{text}"
|
|
|
|
LIM_FUNC = {
|
|
"lim": "\\lim_{{{lim}}}",
|
|
"max": "\\max_{{{lim}}}",
|
|
"min": "\\min_{{{lim}}}",
|
|
}
|
|
|
|
LIM_TO = ("\\rightarrow", "\\to")
|
|
|
|
LIM_UPP = "\\overset{{{lim}}}{{{text}}}"
|
|
|
|
M = "\\begin{{matrix}}{text}\\end{{matrix}}"
|