mirror of
https://github.com/Smaug123/KaTeX
synced 2025-10-08 12:38:39 +00:00
Move custom colors used by Khan into macros.js (#1933)
This commit is contained in:
committed by
Kevin Barabash
parent
41dd71c241
commit
e7193227f6
@@ -299,81 +299,13 @@ class Options {
|
||||
return this._fontMetrics;
|
||||
}
|
||||
|
||||
/**
|
||||
* A map of color names to CSS colors.
|
||||
* TODO(emily): Remove this when we have real macros
|
||||
*/
|
||||
static colorMap = {
|
||||
"katex-blue": "#6495ed",
|
||||
"katex-orange": "#ffa500",
|
||||
"katex-pink": "#ff00af",
|
||||
"katex-red": "#df0030",
|
||||
"katex-green": "#28ae7b",
|
||||
"katex-gray": "gray",
|
||||
"katex-purple": "#9d38bd",
|
||||
"katex-blueA": "#ccfaff",
|
||||
"katex-blueB": "#80f6ff",
|
||||
"katex-blueC": "#63d9ea",
|
||||
"katex-blueD": "#11accd",
|
||||
"katex-blueE": "#0c7f99",
|
||||
"katex-tealA": "#94fff5",
|
||||
"katex-tealB": "#26edd5",
|
||||
"katex-tealC": "#01d1c1",
|
||||
"katex-tealD": "#01a995",
|
||||
"katex-tealE": "#208170",
|
||||
"katex-greenA": "#b6ffb0",
|
||||
"katex-greenB": "#8af281",
|
||||
"katex-greenC": "#74cf70",
|
||||
"katex-greenD": "#1fab54",
|
||||
"katex-greenE": "#0d923f",
|
||||
"katex-goldA": "#ffd0a9",
|
||||
"katex-goldB": "#ffbb71",
|
||||
"katex-goldC": "#ff9c39",
|
||||
"katex-goldD": "#e07d10",
|
||||
"katex-goldE": "#a75a05",
|
||||
"katex-redA": "#fca9a9",
|
||||
"katex-redB": "#ff8482",
|
||||
"katex-redC": "#f9685d",
|
||||
"katex-redD": "#e84d39",
|
||||
"katex-redE": "#bc2612",
|
||||
"katex-maroonA": "#ffbde0",
|
||||
"katex-maroonB": "#ff92c6",
|
||||
"katex-maroonC": "#ed5fa6",
|
||||
"katex-maroonD": "#ca337c",
|
||||
"katex-maroonE": "#9e034e",
|
||||
"katex-purpleA": "#ddd7ff",
|
||||
"katex-purpleB": "#c6b9fc",
|
||||
"katex-purpleC": "#aa87ff",
|
||||
"katex-purpleD": "#7854ab",
|
||||
"katex-purpleE": "#543b78",
|
||||
"katex-mintA": "#f5f9e8",
|
||||
"katex-mintB": "#edf2df",
|
||||
"katex-mintC": "#e0e5cc",
|
||||
"katex-grayA": "#f6f7f7",
|
||||
"katex-grayB": "#f0f1f2",
|
||||
"katex-grayC": "#e3e5e6",
|
||||
"katex-grayD": "#d6d8da",
|
||||
"katex-grayE": "#babec2",
|
||||
"katex-grayF": "#888d93",
|
||||
"katex-grayG": "#626569",
|
||||
"katex-grayH": "#3b3e40",
|
||||
"katex-grayI": "#21242c",
|
||||
"katex-kaBlue": "#314453",
|
||||
"katex-kaGreen": "#71B307",
|
||||
};
|
||||
|
||||
/**
|
||||
* Gets the CSS color of the current options object, accounting for the
|
||||
* `colorMap`.
|
||||
* Gets the CSS color of the current options object
|
||||
*/
|
||||
getColor(): string | void {
|
||||
if (this.phantom) {
|
||||
return "transparent";
|
||||
} else if (
|
||||
this.color != null &&
|
||||
Options.colorMap.hasOwnProperty(this.color)
|
||||
) {
|
||||
return Options.colorMap[this.color];
|
||||
} else {
|
||||
return this.color;
|
||||
}
|
||||
|
@@ -55,42 +55,6 @@ defineFunction({
|
||||
mathmlBuilder,
|
||||
});
|
||||
|
||||
// TODO(kevinb): define these using macros
|
||||
defineFunction({
|
||||
type: "color",
|
||||
names: [
|
||||
"\\blue", "\\orange", "\\pink", "\\red",
|
||||
"\\green", "\\gray", "\\purple",
|
||||
"\\blueA", "\\blueB", "\\blueC", "\\blueD", "\\blueE",
|
||||
"\\tealA", "\\tealB", "\\tealC", "\\tealD", "\\tealE",
|
||||
"\\greenA", "\\greenB", "\\greenC", "\\greenD", "\\greenE",
|
||||
"\\goldA", "\\goldB", "\\goldC", "\\goldD", "\\goldE",
|
||||
"\\redA", "\\redB", "\\redC", "\\redD", "\\redE",
|
||||
"\\maroonA", "\\maroonB", "\\maroonC", "\\maroonD", "\\maroonE",
|
||||
"\\purpleA", "\\purpleB", "\\purpleC", "\\purpleD", "\\purpleE",
|
||||
"\\mintA", "\\mintB", "\\mintC",
|
||||
"\\grayA", "\\grayB", "\\grayC", "\\grayD", "\\grayE",
|
||||
"\\grayF", "\\grayG", "\\grayH", "\\grayI",
|
||||
"\\kaBlue", "\\kaGreen",
|
||||
],
|
||||
props: {
|
||||
numArgs: 1,
|
||||
allowedInText: true,
|
||||
greediness: 3,
|
||||
},
|
||||
handler({parser, funcName}, args) {
|
||||
const body = args[0];
|
||||
return {
|
||||
type: "color",
|
||||
mode: parser.mode,
|
||||
color: "katex-" + funcName.slice(1),
|
||||
body: ordargument(body),
|
||||
};
|
||||
},
|
||||
htmlBuilder,
|
||||
mathmlBuilder,
|
||||
});
|
||||
|
||||
defineFunction({
|
||||
type: "color",
|
||||
names: ["\\color"],
|
||||
|
@@ -925,3 +925,61 @@ defineMacro("\\Zeta", "\\mathrm{Z}");
|
||||
|
||||
defineMacro("\\argmin", "\\DOTSB\\mathop{\\operatorname{arg\\,min}}\\limits");
|
||||
defineMacro("\\argmax", "\\DOTSB\\mathop{\\operatorname{arg\\,max}}\\limits");
|
||||
|
||||
// Custom Khan Academy colors, should be moved to an optional package
|
||||
defineMacro("\\blue", "\\textcolor{##6495ed}{#1}");
|
||||
defineMacro("\\orange", "\\textcolor{##ffa500}{#1}");
|
||||
defineMacro("\\pink", "\\textcolor{##ff00af}{#1}");
|
||||
defineMacro("\\red", "\\textcolor{##df0030}{#1}");
|
||||
defineMacro("\\green", "\\textcolor{##28ae7b}{#1}");
|
||||
defineMacro("\\gray", "\\textcolor{gray}{##1}");
|
||||
defineMacro("\\purple", "\\textcolor{##9d38bd}{#1}");
|
||||
defineMacro("\\blueA", "\\textcolor{##ccfaff}{#1}");
|
||||
defineMacro("\\blueB", "\\textcolor{##80f6ff}{#1}");
|
||||
defineMacro("\\blueC", "\\textcolor{##63d9ea}{#1}");
|
||||
defineMacro("\\blueD", "\\textcolor{##11accd}{#1}");
|
||||
defineMacro("\\blueE", "\\textcolor{##0c7f99}{#1}");
|
||||
defineMacro("\\tealA", "\\textcolor{##94fff5}{#1}");
|
||||
defineMacro("\\tealB", "\\textcolor{##26edd5}{#1}");
|
||||
defineMacro("\\tealC", "\\textcolor{##01d1c1}{#1}");
|
||||
defineMacro("\\tealD", "\\textcolor{##01a995}{#1}");
|
||||
defineMacro("\\tealE", "\\textcolor{##208170}{#1}");
|
||||
defineMacro("\\greenA", "\\textcolor{##b6ffb0}{#1}");
|
||||
defineMacro("\\greenB", "\\textcolor{##8af281}{#1}");
|
||||
defineMacro("\\greenC", "\\textcolor{##74cf70}{#1}");
|
||||
defineMacro("\\greenD", "\\textcolor{##1fab54}{#1}");
|
||||
defineMacro("\\greenE", "\\textcolor{##0d923f}{#1}");
|
||||
defineMacro("\\goldA", "\\textcolor{##ffd0a9}{#1}");
|
||||
defineMacro("\\goldB", "\\textcolor{##ffbb71}{#1}");
|
||||
defineMacro("\\goldC", "\\textcolor{##ff9c39}{#1}");
|
||||
defineMacro("\\goldD", "\\textcolor{##e07d10}{#1}");
|
||||
defineMacro("\\goldE", "\\textcolor{##a75a05}{#1}");
|
||||
defineMacro("\\redA", "\\textcolor{##fca9a9}{#1}");
|
||||
defineMacro("\\redB", "\\textcolor{##ff8482}{#1}");
|
||||
defineMacro("\\redC", "\\textcolor{##f9685d}{#1}");
|
||||
defineMacro("\\redD", "\\textcolor{##e84d39}{#1}");
|
||||
defineMacro("\\redE", "\\textcolor{##bc2612}{#1}");
|
||||
defineMacro("\\maroonA", "\\textcolor{##ffbde0}{#1}");
|
||||
defineMacro("\\maroonB", "\\textcolor{##ff92c6}{#1}");
|
||||
defineMacro("\\maroonC", "\\textcolor{##ed5fa6}{#1}");
|
||||
defineMacro("\\maroonD", "\\textcolor{##ca337c}{#1}");
|
||||
defineMacro("\\maroonE", "\\textcolor{##9e034e}{#1}");
|
||||
defineMacro("\\purpleA", "\\textcolor{##ddd7ff}{#1}");
|
||||
defineMacro("\\purpleB", "\\textcolor{##c6b9fc}{#1}");
|
||||
defineMacro("\\purpleC", "\\textcolor{##aa87ff}{#1}");
|
||||
defineMacro("\\purpleD", "\\textcolor{##7854ab}{#1}");
|
||||
defineMacro("\\purpleE", "\\textcolor{##543b78}{#1}");
|
||||
defineMacro("\\mintA", "\\textcolor{##f5f9e8}{#1}");
|
||||
defineMacro("\\mintB", "\\textcolor{##edf2df}{#1}");
|
||||
defineMacro("\\mintC", "\\textcolor{##e0e5cc}{#1}");
|
||||
defineMacro("\\grayA", "\\textcolor{##f6f7f7}{#1}");
|
||||
defineMacro("\\grayB", "\\textcolor{##f0f1f2}{#1}");
|
||||
defineMacro("\\grayC", "\\textcolor{##e3e5e6}{#1}");
|
||||
defineMacro("\\grayD", "\\textcolor{##d6d8da}{#1}");
|
||||
defineMacro("\\grayE", "\\textcolor{##babec2}{#1}");
|
||||
defineMacro("\\grayF", "\\textcolor{##888d93}{#1}");
|
||||
defineMacro("\\grayG", "\\textcolor{##626569}{#1}");
|
||||
defineMacro("\\grayH", "\\textcolor{##3b3e40}{#1}");
|
||||
defineMacro("\\grayI", "\\textcolor{##21242c}{#1}");
|
||||
defineMacro("\\kaBlue", "\\textcolor{##314453}{#1}");
|
||||
defineMacro("\\kaGreen", "\\textcolor{##71B307}{#1}");
|
||||
|
Reference in New Issue
Block a user