diff --git a/.obsidian/plugins/obsidian-latex-suite/main.js b/.obsidian/plugins/obsidian-latex-suite/main.js index ed6ed51..6d8b039 100644 --- a/.obsidian/plugins/obsidian-latex-suite/main.js +++ b/.obsidian/plugins/obsidian-latex-suite/main.js @@ -7020,13 +7020,13 @@ function getSnippetsFromFiles(plugin, files, snippetVariables) { }); } -// _lbka06qby:/home/runner/work/obsidian-latex-suite/obsidian-latex-suite/src/default_snippets.js +// _cido53poa:/home/runner/work/obsidian-latex-suite/obsidian-latex-suite/src/default_snippets.js var default_snippets_default = '[\n // Math mode\n {trigger: "mk", replacement: "$$0$", options: "tA"},\n {trigger: "dm", replacement: "$$\\n$0\\n$$", options: "tAw"},\n {trigger: "beg", replacement: "\\\\begin{$0}\\n$1\\n\\\\end{$0}", options: "mA"},\n\n // Dashes\n // {trigger: "--", replacement: "\u2013", options: "tA"},\n // {trigger: "\u2013-", replacement: "\u2014", options: "tA"},\n // {trigger: "\u2014-", replacement: "---", options: "tA"},\n\n // Greek letters\n {trigger: "@a", replacement: "\\\\alpha", options: "mA"},\n {trigger: "@b", replacement: "\\\\beta", options: "mA"},\n {trigger: "@g", replacement: "\\\\gamma", options: "mA"},\n {trigger: "@G", replacement: "\\\\Gamma", options: "mA"},\n {trigger: "@d", replacement: "\\\\delta", options: "mA"},\n {trigger: "@D", replacement: "\\\\Delta", options: "mA"},\n {trigger: "@e", replacement: "\\\\epsilon", options: "mA"},\n {trigger: ":e", replacement: "\\\\varepsilon", options: "mA"},\n {trigger: "@z", replacement: "\\\\zeta", options: "mA"},\n {trigger: "@t", replacement: "\\\\theta", options: "mA"},\n {trigger: "@T", replacement: "\\\\Theta", options: "mA"},\n {trigger: ":t", replacement: "\\\\vartheta", options: "mA"},\n {trigger: "@i", replacement: "\\\\iota", options: "mA"},\n {trigger: "@k", replacement: "\\\\kappa", options: "mA"},\n {trigger: "@l", replacement: "\\\\lambda", options: "mA"},\n {trigger: "@L", replacement: "\\\\Lambda", options: "mA"},\n {trigger: "@s", replacement: "\\\\sigma", options: "mA"},\n {trigger: "@S", replacement: "\\\\Sigma", options: "mA"},\n {trigger: "@u", replacement: "\\\\upsilon", options: "mA"},\n {trigger: "@U", replacement: "\\\\Upsilon", options: "mA"},\n {trigger: "@o", replacement: "\\\\omega", options: "mA"},\n {trigger: "@O", replacement: "\\\\Omega", options: "mA"},\n {trigger: "ome", replacement: "\\\\omega", options: "mA"},\n {trigger: "Ome", replacement: "\\\\Omega", options: "mA"},\n\n // Text environment\n {trigger: "text", replacement: "\\\\text{$0}$1", options: "mA"},\n {trigger: "\\"", replacement: "\\\\text{$0}$1", options: "mA"},\n\n // Basic operations\n {trigger: "sr", replacement: "^{2}", options: "mA"},\n {trigger: "cb", replacement: "^{3}", options: "mA"},\n {trigger: "rd", replacement: "^{$0}$1", options: "mA"},\n {trigger: "_", replacement: "_{$0}$1", options: "mA"},\n {trigger: "sts", replacement: "_\\\\text{$0}", options: "mA"},\n {trigger: "sq", replacement: "\\\\sqrt{ $0 }$1", options: "mA"},\n {trigger: "//", replacement: "\\\\frac{$0}{$1}$2", options: "mA"},\n {trigger: "ee", replacement: "e^{ $0 }$1", options: "mA"},\n {trigger: "invs", replacement: "^{-1}", options: "mA"},\n {trigger: /([A-Za-z])(\\d)/, replacement: "[[0]]_{[[1]]}", options: "rmA", description: "Auto letter subscript", priority: -1},\n\n {trigger: /([^\\\\])(exp|log|ln)/, replacement: "[[0]]\\\\[[1]]", options: "rmA"},\n {trigger: "conj", replacement: "^{*}", options: "mA"},\n {trigger: "Re", replacement: "\\\\mathrm{Re}", options: "mA"},\n {trigger: "Im", replacement: "\\\\mathrm{Im}", options: "mA"},\n {trigger: "bf", replacement: "\\\\mathbf{$0}", options: "mA"},\n {trigger: "rm", replacement: "\\\\mathrm{$0}$1", options: "mA"},\n\n // Linear algebra\n {trigger: /([^\\\\])(det)/, replacement: "[[0]]\\\\[[1]]", options: "rmA"},\n {trigger: "trace", replacement: "\\\\mathrm{Tr}", options: "mA"},\n\n // More operations\n {trigger: "([a-zA-Z])hat", replacement: "\\\\hat{[[0]]}", options: "rmA"},\n {trigger: "([a-zA-Z])bar", replacement: "\\\\bar{[[0]]}", options: "rmA"},\n {trigger: "([a-zA-Z])dot", replacement: "\\\\dot{[[0]]}", options: "rmA", priority: -1},\n {trigger: "([a-zA-Z])ddot", replacement: "\\\\ddot{[[0]]}", options: "rmA", priority: 1},\n {trigger: "([a-zA-Z])tilde", replacement: "\\\\tilde{[[0]]}", options: "rmA"},\n {trigger: "([a-zA-Z])und", replacement: "\\\\underline{[[0]]}", options: "rmA"},\n {trigger: "([a-zA-Z])vec", replacement: "\\\\vec{[[0]]}", options: "rmA"},\n {trigger: "([a-zA-Z]),\\\\.", replacement: "\\\\mathbf{[[0]]}", options: "rmA"},\n {trigger: "([a-zA-Z])\\\\.,", replacement: "\\\\mathbf{[[0]]}", options: "rmA"},\n {trigger: "\\\\\\\\(${GREEK}),\\\\.", replacement: "\\\\boldsymbol{\\\\[[0]]}", options: "rmA"},\n {trigger: "\\\\\\\\(${GREEK})\\\\.,", replacement: "\\\\boldsymbol{\\\\[[0]]}", options: "rmA"},\n\n {trigger: "hat", replacement: "\\\\hat{$0}$1", options: "mA"},\n {trigger: "bar", replacement: "\\\\bar{$0}$1", options: "mA"},\n {trigger: "dot", replacement: "\\\\dot{$0}$1", options: "mA", priority: -1},\n {trigger: "ddot", replacement: "\\\\ddot{$0}$1", options: "mA"},\n {trigger: "cdot", replacement: "\\\\cdot", options: "mA"},\n {trigger: "tilde", replacement: "\\\\tilde{$0}$1", options: "mA"},\n {trigger: "und", replacement: "\\\\underline{$0}$1", options: "mA"},\n {trigger: "vec", replacement: "\\\\vec{$0}$1", options: "mA"},\n\n // More auto letter subscript\n {trigger: /([A-Za-z])_(\\d\\d)/, replacement: "[[0]]_{[[1]]}", options: "rmA"},\n {trigger: /\\\\hat{([A-Za-z])}(\\d)/, replacement: "\\\\hat{[[0]]}_{[[1]]}", options: "rmA"},\n {trigger: /\\\\vec{([A-Za-z])}(\\d)/, replacement: "\\\\vec{[[0]]}_{[[1]]}", options: "rmA"},\n {trigger: /\\\\mathbf{([A-Za-z])}(\\d)/, replacement: "\\\\mathbf{[[0]]}_{[[1]]}", options: "rmA"},\n\n {trigger: "xnn", replacement: "x_{n}", options: "mA"},\n {trigger: "\\\\xii", replacement: "x_{i}", options: "mA", priority: 1},\n {trigger: "xjj", replacement: "x_{j}", options: "mA"},\n {trigger: "xp1", replacement: "x_{n+1}", options: "mA"},\n {trigger: "ynn", replacement: "y_{n}", options: "mA"},\n {trigger: "yii", replacement: "y_{i}", options: "mA"},\n {trigger: "yjj", replacement: "y_{j}", options: "mA"},\n\n // Symbols\n {trigger: "ooo", replacement: "\\\\infty", options: "mA"},\n {trigger: "sum", replacement: "\\\\sum", options: "mA"},\n {trigger: "prod", replacement: "\\\\prod", options: "mA"},\n {trigger: "\\\\sum", replacement: "\\\\sum_{${0:i}=${1:1}}^{${2:N}} $3", options: "m"},\n {trigger: "\\\\prod", replacement: "\\\\prod_{${0:i}=${1:1}}^{${2:N}} $3", options: "m"},\n {trigger: "lim", replacement: "\\\\lim_{ ${0:n} \\\\to ${1:\\\\infty} } $2", options: "mA"},\n {trigger: "+-", replacement: "\\\\pm", options: "mA"},\n {trigger: "-+", replacement: "\\\\mp", options: "mA"},\n {trigger: "...", replacement: "\\\\dots", options: "mA"},\n {trigger: "nabl", replacement: "\\\\nabla", options: "mA"},\n {trigger: "del", replacement: "\\\\nabla", options: "mA"},\n {trigger: "xx", replacement: "\\\\times", options: "mA"},\n {trigger: "**", replacement: "\\\\cdot", options: "mA"},\n {trigger: "para", replacement: "\\\\parallel", options: "mA"},\n\n {trigger: "===", replacement: "\\\\equiv", options: "mA"},\n {trigger: "!=", replacement: "\\\\neq", options: "mA"},\n {trigger: ">=", replacement: "\\\\geq", options: "mA"},\n {trigger: "<=", replacement: "\\\\leq", options: "mA"},\n {trigger: ">>", replacement: "\\\\gg", options: "mA"},\n {trigger: "<<", replacement: "\\\\ll", options: "mA"},\n {trigger: "simm", replacement: "\\\\sim", options: "mA"},\n {trigger: "sim=", replacement: "\\\\simeq", options: "mA"},\n {trigger: "prop", replacement: "\\\\propto", options: "mA"},\n\n\n {trigger: "<->", replacement: "\\\\leftrightarrow ", options: "mA"},\n {trigger: "->", replacement: "\\\\to", options: "mA"},\n {trigger: "!>", replacement: "\\\\mapsto", options: "mA"},\n {trigger: "=>", replacement: "\\\\implies", options: "mA"},\n {trigger: "=<", replacement: "\\\\impliedby", options: "mA"},\n\n {trigger: "and", replacement: "\\\\cap", options: "mA"},\n {trigger: "orr", replacement: "\\\\cup", options: "mA"},\n {trigger: "inn", replacement: "\\\\in", options: "mA"},\n {trigger: "notin", replacement: "\\\\not\\\\in", options: "mA"},\n {trigger: "\\\\\\\\\\\\", replacement: "\\\\setminus", options: "mA"},\n {trigger: "sub=", replacement: "\\\\subseteq", options: "mA"},\n {trigger: "sup=", replacement: "\\\\supseteq", options: "mA"},\n {trigger: "eset", replacement: "\\\\emptyset", options: "mA"},\n {trigger: "set", replacement: "\\\\{ $0 \\\\}$1", options: "mA"},\n {trigger: "e\\\\xi sts", replacement: "\\\\exists", options: "mA", priority: 1},\n\n {trigger: "LL", replacement: "\\\\mathcal{L}", options: "mA"},\n {trigger: "HH", replacement: "\\\\mathcal{H}", options: "mA"},\n {trigger: "CC", replacement: "\\\\mathbb{C}", options: "mA"},\n {trigger: "RR", replacement: "\\\\mathbb{R}", options: "mA"},\n {trigger: "ZZ", replacement: "\\\\mathbb{Z}", options: "mA"},\n {trigger: "NN", replacement: "\\\\mathbb{N}", options: "mA"},\n\n // Handle spaces and backslashes\n\n // Snippet variables can be used as shortcuts when writing snippets.\n // For example, ${GREEK} below is shorthand for "alpha|beta|gamma|Gamma|delta|..."\n // You can edit snippet variables under the Advanced snippet settings section.\n\n {trigger: "([^\\\\\\\\])(${GREEK})", replacement: "[[0]]\\\\[[1]]", options: "rmA", description: "Add backslash before Greek letters"},\n {trigger: "([^\\\\\\\\])(${SYMBOL})", replacement: "[[0]]\\\\[[1]]", options: "rmA", description: "Add backslash before symbols"},\n\n // Insert space after Greek letters and symbols\n {trigger: "\\\\\\\\(${GREEK}|${SYMBOL}|${MORE_SYMBOLS})([A-Za-z])", replacement: "\\\\[[0]] [[1]]", options: "rmA"},\n {trigger: "\\\\\\\\(${GREEK}|${SYMBOL}) sr", replacement: "\\\\[[0]]^{2}", options: "rmA"},\n {trigger: "\\\\\\\\(${GREEK}|${SYMBOL}) cb", replacement: "\\\\[[0]]^{3}", options: "rmA"},\n {trigger: "\\\\\\\\(${GREEK}|${SYMBOL}) rd", replacement: "\\\\[[0]]^{$0}$1", options: "rmA"},\n {trigger: "\\\\\\\\(${GREEK}|${SYMBOL}) hat", replacement: "\\\\hat{\\\\[[0]]}", options: "rmA"},\n {trigger: "\\\\\\\\(${GREEK}|${SYMBOL}) dot", replacement: "\\\\dot{\\\\[[0]]}", options: "rmA"},\n {trigger: "\\\\\\\\(${GREEK}|${SYMBOL}) bar", replacement: "\\\\bar{\\\\[[0]]}", options: "rmA"},\n {trigger: "\\\\\\\\(${GREEK}|${SYMBOL}) vec", replacement: "\\\\vec{\\\\[[0]]}", options: "rmA"},\n {trigger: "\\\\\\\\(${GREEK}|${SYMBOL}) tilde", replacement: "\\\\tilde{\\\\[[0]]}", options: "rmA"},\n {trigger: "\\\\\\\\(${GREEK}|${SYMBOL}) und", replacement: "\\\\underline{\\\\[[0]]}", options: "rmA"},\n\n\n // Derivatives and integrals\n {trigger: "par", replacement: "\\\\frac{ \\\\partial ${0:y} }{ \\\\partial ${1:x} } $2", options: "m"},\n {trigger: /pa([A-Za-z])([A-Za-z])/, replacement: "\\\\frac{ \\\\partial [[0]] }{ \\\\partial [[1]] } ", options: "rm"},\n {trigger: "ddt", replacement: "\\\\frac{d}{dt} ", options: "mA"},\n\n {trigger: /([^\\\\])int/, replacement: "[[0]]\\\\int", options: "mA", priority: -1},\n {trigger: "\\\\int", replacement: "\\\\int $0 \\\\, d${1:x} $2", options: "m"},\n {trigger: "dint", replacement: "\\\\int_{${0:0}}^{${1:1}} $2 \\\\, d${3:x} $4", options: "mA"},\n {trigger: "oint", replacement: "\\\\oint", options: "mA"},\n {trigger: "iint", replacement: "\\\\iint", options: "mA"},\n {trigger: "iiint", replacement: "\\\\iiint", options: "mA"},\n {trigger: "oinf", replacement: "\\\\int_{0}^{\\\\infty} $0 \\\\, d${1:x} $2", options: "mA"},\n {trigger: "infi", replacement: "\\\\int_{-\\\\infty}^{\\\\infty} $0 \\\\, d${1:x} $2", options: "mA"},\n\n\n // Trigonometry\n {trigger: /([^\\\\])(arcsin|sin|arccos|cos|arctan|tan|csc|sec|cot)/, replacement: "[[0]]\\\\[[1]]", options: "rmA", description: "Add backslash before trig funcs"},\n\n {trigger: /\\\\(arcsin|sin|arccos|cos|arctan|tan|csc|sec|cot)([A-Za-gi-z])/,\n replacement: "\\\\[[0]] [[1]]", options: "rmA",\n description: "Add space after trig funcs. Skips letter h to allow sinh, cosh, etc."},\n\n {trigger: /\\\\(sinh|cosh|tanh|coth)([A-Za-z])/,\n replacement: "\\\\[[0]] [[1]]", options: "rmA",\n description: "Add space after hyperbolic trig funcs"},\n\n\n // Visual operations\n {trigger: "U", replacement: "\\\\underbrace{ ${VISUAL} }_{ $0 }", options: "mA"},\n {trigger: "O", replacement: "\\\\overbrace{ ${VISUAL} }^{ $0 }", options: "mA"},\n {trigger: "B", replacement: "\\\\underset{ $0 }{ ${VISUAL} }", options: "mA"},\n {trigger: "C", replacement: "\\\\cancel{ ${VISUAL} }", options: "mA"},\n {trigger: "K", replacement: "\\\\cancelto{ $0 }{ ${VISUAL} }", options: "mA"},\n {trigger: "S", replacement: "\\\\sqrt{ ${VISUAL} }", options: "mA"},\n\n\n // Physics\n {trigger: "kbt", replacement: "k_{B}T", options: "mA"},\n {trigger: "msun", replacement: "M_{\\\\odot}", options: "mA"},\n\n // Quantum mechanics\n {trigger: "dag", replacement: "^{\\\\dagger}", options: "mA"},\n {trigger: "o+", replacement: "\\\\oplus ", options: "mA"},\n {trigger: "ox", replacement: "\\\\otimes ", options: "mA"},\n {trigger: "bra", replacement: "\\\\bra{$0} $1", options: "mA"},\n {trigger: "ket", replacement: "\\\\ket{$0} $1", options: "mA"},\n {trigger: "brk", replacement: "\\\\braket{ $0 | $1 } $2", options: "mA"},\n {trigger: "outer", replacement: "\\\\ket{${0:\\\\psi}} \\\\bra{${0:\\\\psi}} $1", options: "mA"},\n\n // Chemistry\n {trigger: "pu", replacement: "\\\\pu{ $0 }", options: "mA"},\n {trigger: "cee", replacement: "\\\\ce{ $0 }", options: "mA"},\n {trigger: "he4", replacement: "{}^{4}_{2}He ", options: "mA"},\n {trigger: "he3", replacement: "{}^{3}_{2}He ", options: "mA"},\n {trigger: "iso", replacement: "{}^{${0:4}}_{${1:2}}${2:He}", options: "mA"},\n\n\n // Environments\n {trigger: "pmat", replacement: "\\\\begin{pmatrix}\\n$0\\n\\\\end{pmatrix}", options: "MA"},\n {trigger: "bmat", replacement: "\\\\begin{bmatrix}\\n$0\\n\\\\end{bmatrix}", options: "MA"},\n {trigger: "Bmat", replacement: "\\\\begin{Bmatrix}\\n$0\\n\\\\end{Bmatrix}", options: "MA"},\n {trigger: "vmat", replacement: "\\\\begin{vmatrix}\\n$0\\n\\\\end{vmatrix}", options: "MA"},\n {trigger: "Vmat", replacement: "\\\\begin{Vmatrix}\\n$0\\n\\\\end{Vmatrix}", options: "MA"},\n {trigger: "matrix", replacement: "\\\\begin{matrix}\\n$0\\n\\\\end{matrix}", options: "MA"},\n\n {trigger: "pmat", replacement: "\\\\begin{pmatrix}$0\\\\end{pmatrix}", options: "nA"},\n {trigger: "bmat", replacement: "\\\\begin{bmatrix}$0\\\\end{bmatrix}", options: "nA"},\n {trigger: "Bmat", replacement: "\\\\begin{Bmatrix}$0\\\\end{Bmatrix}", options: "nA"},\n {trigger: "vmat", replacement: "\\\\begin{vmatrix}$0\\\\end{vmatrix}", options: "nA"},\n {trigger: "Vmat", replacement: "\\\\begin{Vmatrix}$0\\\\end{Vmatrix}", options: "nA"},\n {trigger: "matrix", replacement: "\\\\begin{matrix}$0\\\\end{matrix}", options: "nA"},\n\n {trigger: "cases", replacement: "\\\\begin{cases}\\n$0\\n\\\\end{cases}", options: "mA"},\n {trigger: "align", replacement: "\\\\begin{align}\\n$0\\n\\\\end{align}", options: "mA"},\n {trigger: "array", replacement: "\\\\begin{array}\\n$0\\n\\\\end{array}", options: "mA"},\n\n\n // Brackets\n {trigger: "avg", replacement: "\\\\langle $0 \\\\rangle $1", options: "mA"},\n {trigger: "norm", replacement: "\\\\lvert $0 \\\\rvert $1", options: "mA", priority: 1},\n {trigger: "Norm", replacement: "\\\\lVert $0 \\\\rVert $1", options: "mA", priority: 1},\n {trigger: "ceil", replacement: "\\\\lceil $0 \\\\rceil $1", options: "mA"},\n {trigger: "floor", replacement: "\\\\lfloor $0 \\\\rfloor $1", options: "mA"},\n {trigger: "mod", replacement: "|$0|$1", options: "mA"},\n {trigger: "(", replacement: "(${VISUAL})", options: "mA"},\n {trigger: "[", replacement: "[${VISUAL}]", options: "mA"},\n {trigger: "{", replacement: "{${VISUAL}}", options: "mA"},\n {trigger: "(", replacement: "($0)$1", options: "mA"},\n {trigger: "{", replacement: "{$0}$1", options: "mA"},\n {trigger: "[", replacement: "[$0]$1", options: "mA"},\n {trigger: "lr(", replacement: "\\\\left( $0 \\\\right) $1", options: "mA"},\n {trigger: "lr{", replacement: "\\\\left\\\\{ $0 \\\\right\\\\} $1", options: "mA"},\n {trigger: "lr[", replacement: "\\\\left[ $0 \\\\right] $1", options: "mA"},\n {trigger: "lr|", replacement: "\\\\left| $0 \\\\right| $1", options: "mA"},\n {trigger: "lra", replacement: "\\\\left< $0 \\\\right> $1", options: "mA"},\n\n\n // Misc\n\n // Automatically convert standalone letters in text to math (except a, A, I).\n // (Un-comment to enable)\n // {trigger: /([^\'])\\b([B-HJ-Zb-z])\\b([\\n\\s.,?!:\'])/, replacement: "[[0]]$[[1]]$[[2]]", options: "tA"},\n\n // Automatically convert Greek letters in text to math.\n // {trigger: "(${GREEK})([\\\\n\\\\s.,?!:\'])", replacement: "$\\\\[[0]]$[[1]]", options: "rtAw"},\n\n // Automatically convert text of the form "x=2" and "x=n+1" to math.\n // {trigger: /([A-Za-z]=\\d+)([\\n\\s.,?!:\'])/, replacement: "$[[0]]$[[1]]", options: "rtAw"},\n // {trigger: /([A-Za-z]=[A-Za-z][+-]\\d+)([\\n\\s.,?!:\'])/, replacement: "$[[0]]$[[1]]", options: "tAw"},\n\n\n // Snippet replacements can have placeholders.\n {trigger: "tayl", replacement: "${0:f}(${1:x} + ${2:h}) = ${0:f}(${1:x}) + ${0:f}\'(${1:x})${2:h} + ${0:f}\'\'(${1:x}) \\\\frac{${2:h}^{2}}{2!} + \\\\dots$3", options: "mA", description: "Taylor expansion"},\n\n // Snippet replacements can also be JavaScript functions.\n // See the documentation for more information.\n {trigger: /iden(\\d)/, replacement: (match) => {\n const n = match[1];\n\n let arr = [];\n for (let j = 0; j < n; j++) {\n arr[j] = [];\n for (let i = 0; i < n; i++) {\n arr[j][i] = (i === j) ? 1 : 0;\n }\n }\n\n let output = arr.map(el => el.join(" & ")).join(" \\\\\\\\\\n");\n output = `\\\\begin{pmatrix}\\n${output}\\n\\\\end{pmatrix}`;\n return output;\n }, options: "mA", description: "N x N identity matrix"},\n]\n'; // src/utils/default_snippets.ts var DEFAULT_SNIPPETS = default_snippets_default; -// _lbka06qby:/home/runner/work/obsidian-latex-suite/obsidian-latex-suite/src/default_snippet_variables.js +// _cido53poa:/home/runner/work/obsidian-latex-suite/obsidian-latex-suite/src/default_snippet_variables.js var default_snippet_variables_default = '{\n "${GREEK}": "alpha|beta|gamma|Gamma|delta|Delta|epsilon|varepsilon|zeta|eta|theta|vartheta|Theta|iota|kappa|lambda|Lambda|mu|nu|xi|omicron|pi|rho|varrho|sigma|Sigma|tau|upsilon|Upsilon|phi|varphi|Phi|chi|psi|omega|Omega",\n "${SYMBOL}": "parallel|perp|partial|nabla|hbar|ell|infty|oplus|ominus|otimes|oslash|square|star|dagger|vee|wedge|subseteq|subset|supseteq|supset|emptyset|exists|nexists|forall|implies|impliedby|iff|setminus|neg|lor|land|bigcup|bigcap|cdot|times|simeq|approx",\n "${MORE_SYMBOLS}": "leq|geq|neq|gg|ll|equiv|sim|propto|rightarrow|leftarrow|Rightarrow|Leftarrow|leftrightarrow|to|mapsto|cap|cup|in|sum|prod|exp|ln|log|det|dots|vdots|ddots|pm|mp|int|iint|iiint|oint"\n}\n'; // src/utils/default_snippet_variables.ts @@ -7064,7 +7064,7 @@ var DEFAULT_SETTINGS = { ["^{", "}"], ["\\\\pu{", "}"] ]`, - matrixShortcutsEnvNames: "pmatrix, cases, align, bmatrix, Bmatrix, vmatrix, Vmatrix, array, matrix", + matrixShortcutsEnvNames: "pmatrix, cases, align, gather, bmatrix, Bmatrix, vmatrix, Vmatrix, array, matrix", autoEnlargeBracketsTriggers: "sum, int, frac, prod, bigcup, bigcap", forceMathLanguages: "math" }; @@ -14009,13 +14009,16 @@ var runMatrixShortcuts = (view, ctx, key, shiftKey) => { view.dispatch(view.state.replaceSelection(" & ")); return true; } else if (key === "Enter") { - if (shiftKey) { + if (shiftKey && ctx.mode.blockMath) { const d = view.state.doc; const nextLineNo = d.lineAt(ctx.pos).number + 1; const nextLine = d.line(nextLineNo); setCursor(view, nextLine.to); + } else if (shiftKey && ctx.mode.inlineMath) { + tabout(view, ctx); } else { - view.dispatch(view.state.replaceSelection(" \\\\\n")); + const lineBreakStr = ctx.mode.inlineMath ? " \\\\ " : " \\\\\n"; + view.dispatch(view.state.replaceSelection(lineBreakStr)); } return true; } else { @@ -14191,7 +14194,7 @@ var handleKeydown = (key, shiftKey, ctrlKey, isIME, view) => { return true; } } - if (settings.matrixShortcutsEnabled && ctx.mode.blockMath) { + if (settings.matrixShortcutsEnabled && ctx.mode.strictlyInMath()) { if (["Tab", "Enter"].contains(key)) { success = runMatrixShortcuts(view, ctx, key, shiftKey); if (success) @@ -14977,7 +14980,7 @@ function concealSet(eqn) { } function concealFraction(eqn) { const concealSpecs = []; - for (const match of eqn.matchAll(/\\(frac){/g)) { + for (const match of eqn.matchAll(/\\(frac|dfrac|tfrac|gfrac){/g)) { const numeratorEnd = findMatchingBracket(eqn, match.index, "{", "}", false); if (numeratorEnd === -1) continue; @@ -15004,6 +15007,24 @@ function concealFraction(eqn) { } return concealSpecs; } +function concealOperatorname(eqn) { + const regexStr = "\\\\operatorname{([A-Za-z]+)}"; + const regex = new RegExp(regexStr, "g"); + const matches = [...eqn.matchAll(regex)]; + const specs = []; + for (const match of matches) { + const value = match[1]; + const start2 = match.index; + const end2 = start2 + match[0].length; + specs.push(mkConcealSpec({ + start: start2, + end: end2, + text: value, + class: "cm-concealed-mathrm cm-variable-2" + })); + } + return specs; +} function conceal(view) { const specs = []; for (const { from, to } of view.visibleRanges) { @@ -15043,7 +15064,8 @@ function conceal(view) { ...concealBraKet(eqn), ...concealSet(eqn), ...concealFraction(eqn), - ...concealOperators(eqn, operators) + ...concealOperators(eqn, operators), + ...concealOperatorname(eqn) ]; for (const spec of localSpecs) { for (const replace of spec) { diff --git a/.obsidian/plugins/obsidian-latex-suite/manifest.json b/.obsidian/plugins/obsidian-latex-suite/manifest.json index e090bea..5a4ffd6 100644 --- a/.obsidian/plugins/obsidian-latex-suite/manifest.json +++ b/.obsidian/plugins/obsidian-latex-suite/manifest.json @@ -1,7 +1,7 @@ { "id": "obsidian-latex-suite", "name": "Latex Suite", - "version": "1.9.7", + "version": "1.9.8", "minAppVersion": "1.0.0", "description": "Make typesetting LaTeX math as fast as handwriting through snippets, text expansion, and editor enhancements", "author": "artisticat",