mirror of
https://github.com/Smaug123/KaTeX
synced 2025-10-06 11:48:41 +00:00
Add support for \lparen
and \rparen
delimiters. (#1741)
* Add support for `\lparen` and `\rparen` delimiters. * Add missing math delimiter. Fix alphabetic order. * Add test. * Add spaces between parenthesis and square brackets.
This commit is contained in:
@@ -587,6 +587,7 @@ table td {
|
||||
|\lor|$\lor$||
|
||||
|\lower|<span style="color:firebrick;">Not supported</span>||
|
||||
|\lozenge|$\lozenge$||
|
||||
|\lparen|$\lparen$||
|
||||
|\Lrarr|$\Lrarr$||
|
||||
|\lrArr|$\lrArr$||
|
||||
|\lrarr|$\lrarr$||
|
||||
@@ -864,6 +865,7 @@ table td {
|
||||
|\rmoustache|$\rmoustache$||
|
||||
|\root|<span style="color:firebrick;">Not supported</span>||
|
||||
|\rotatebox|<span style="color:firebrick;">Not supported</span>|[Issue #681](https://github.com/Khan/KaTeX/issues/681)|
|
||||
|\rparen|$\rparen$||
|
||||
|\rq|$\rq$||
|
||||
|\Rrightarrow|$\Rrightarrow$||
|
||||
|\Rsh|$\Rsh$||
|
||||
|
@@ -53,14 +53,14 @@ See also [letters](#letters)
|
||||
|
||||
||||||
|
||||
|:-----------------------------------|:---------------------------------------|:----------|:-------------------------------------------------------|:-----
|
||||
|$( )$ `( )` |$\lt~\gt$ `\lt \gt` |$⌈~⌉$ `⌈ ⌉`|$\lceil~\rceil$ `\lceil`<br>$~~~~~$`\rceil` |$\uparrow$ `\uparrow`
|
||||
|$[ ]$ `[ ]` |$\lbrack~\rbrack$ `\lbrack`<br>$~~~~$`\rbrack`|$⌊~⌋$ `⌊ ⌋`|$\lfloor~\rfloor$ `\lfloor`<br>$~~~~~$`\rfloor` |$\downarrow$ `\downarrow`
|
||||
|$(~)$ `( )` |$\lparen~\rparen$ `\lparen`<br>$~~~~$`\rparen`|$⌈~⌉$ `⌈ ⌉`|$\lceil~\rceil$ `\lceil`<br>$~~~~~$`\rceil` |$\uparrow$ `\uparrow`
|
||||
|$[~]$ `[ ]` |$\lbrack~\rbrack$ `\lbrack`<br>$~~~~$`\rbrack`|$⌊~⌋$ `⌊ ⌋`|$\lfloor~\rfloor$ `\lfloor`<br>$~~~~~$`\rfloor` |$\downarrow$ `\downarrow`
|
||||
|$\{ \}$ `\{ \}`|$\lbrace \rbrace$ `\lbrace`<br>$~~~~$`\rbrace`|$⎰⎱$ `⎰⎱` |$\lmoustache \rmoustache$ `\lmoustache`<br>$~~~~$`\rmoustache`|$\updownarrow$ `\updownarrow`
|
||||
|$⟨~⟩$ `⟨ ⟩` |$\langle~\rangle$ `\langle`<br>$~~~~$`\rangle`|$⟮~⟯$ `⟮ ⟯`|$\lgroup~\rgroup$ `\lgroup`<br>$~~~~~$`\rgroup` |$\Uparrow$ `\Uparrow`
|
||||
|$\vert$ <code>|</code> |$\vert$ `\vert` |$┌ ┐$ `┌ ┐`|$\ulcorner \urcorner$ `\ulcorner`<br>$~~~~$`\urcorner` |$\Downarrow$ `\Downarrow`
|
||||
|$\Vert$ <code>\|</code> |$\Vert$ `\Vert` |$└ ┘$ `└ ┘`|$\llcorner \lrcorner$ `\llcorner`<br>$~~~~$`\lrcorner` |$\Updownarrow$ `\Updownarrow`
|
||||
|$\lvert~\rvert$ `\lvert`<br>$~~~~$`\rvert`|$\lVert~\rVert$ `\lVert`<br>$~~~~~$`\rVert` |`\left.`| `\right.` |$\backslash$ `\backslash`
|
||||
|$\lang~\rang$ `\lang`<br>$~~~~$`\rang`
|
||||
|$\lang~\rang$ `\lang`<br>$~~~~$`\rang`|$\lt~\gt$ `\lt \gt`|
|
||||
|
||||
**Delimiter Sizing**
|
||||
|
||||
|
@@ -245,12 +245,12 @@ const makeStackedDelim = function(
|
||||
top = "\u23a4";
|
||||
repeat = bottom = "\u23a5";
|
||||
font = "Size4-Regular";
|
||||
} else if (delim === "(") {
|
||||
} else if (delim === "(" || delim === "\\lparen") {
|
||||
top = "\u239b";
|
||||
repeat = "\u239c";
|
||||
bottom = "\u239d";
|
||||
font = "Size4-Regular";
|
||||
} else if (delim === ")") {
|
||||
} else if (delim === ")" || delim === "\\rparen") {
|
||||
top = "\u239e";
|
||||
repeat = "\u239f";
|
||||
bottom = "\u23a0";
|
||||
@@ -489,7 +489,8 @@ const makeSqrtImage = function(
|
||||
// There are three kinds of delimiters, delimiters that stack when they become
|
||||
// too large
|
||||
const stackLargeDelimiters = [
|
||||
"(", ")", "[", "\\lbrack", "]", "\\rbrack",
|
||||
"(", "\\lparen", ")", "\\rparen",
|
||||
"[", "\\lbrack", "]", "\\rbrack",
|
||||
"\\{", "\\lbrace", "\\}", "\\rbrace",
|
||||
"\\lfloor", "\\rfloor", "\u230a", "\u230b",
|
||||
"\\lceil", "\\rceil", "\u2308", "\u2309",
|
||||
|
@@ -35,7 +35,8 @@ const delimiterSizes = {
|
||||
};
|
||||
|
||||
const delimiters = [
|
||||
"(", ")", "[", "\\lbrack", "]", "\\rbrack",
|
||||
"(", "\\lparen", ")", "\\rparen",
|
||||
"[", "\\lbrack", "]", "\\rbrack",
|
||||
"\\{", "\\lbrace", "\\}", "\\rbrace",
|
||||
"\\lfloor", "\\rfloor", "\u230a", "\u230b",
|
||||
"\\lceil", "\\rceil", "\u2308", "\u2309",
|
||||
|
@@ -625,6 +625,8 @@ defineSymbol(math, main, open, "[", "\\lbrack");
|
||||
defineSymbol(text, main, textord, "[", "\\lbrack");
|
||||
defineSymbol(math, main, close, "]", "\\rbrack");
|
||||
defineSymbol(text, main, textord, "]", "\\rbrack");
|
||||
defineSymbol(math, main, open, "(", "\\lparen");
|
||||
defineSymbol(math, main, close, ")", "\\rparen");
|
||||
defineSymbol(text, main, textord, "<", "\\textless"); // in T1 fontenc
|
||||
defineSymbol(text, main, textord, ">", "\\textgreater"); // in T1 fontenc
|
||||
defineSymbol(math, main, open, "\u230a", "\\lfloor", true);
|
||||
|
@@ -1198,6 +1198,7 @@ describe("left/right builder", () => {
|
||||
const cases = [
|
||||
[r`\left\langle \right\rangle`, r`\left< \right>`],
|
||||
[r`\left\langle \right\rangle`, '\\left\u27e8 \\right\u27e9'],
|
||||
[r`\left\lparen \right\rparen`, r`\left( \right)`],
|
||||
];
|
||||
|
||||
for (const [actual, expected] of cases) {
|
||||
|
Reference in New Issue
Block a user