Changed snippets

This commit is contained in:
BogosBinted 2024-11-15 13:41:01 +01:00
parent 8d1ef972bc
commit 950ddeb557
12 changed files with 2739 additions and 23 deletions

View file

@ -0,0 +1,142 @@
local ls = require("luasnip")
local s = ls.snippet
local t = ls.text_node
local i = ls.insert_node
local f = ls.function_node
local fmt = require("luasnip.extras.fmt").fmt
-- Add LaTeX snippets
ls.add_snippets("tex", {
-- LaTeX Template
s("latex-template", fmt([[
\documentclass[a4paper]{article}
\usepackage{amsmath}
\begin{document}
{}
\end{document}
]], { i(0) })),
-- Implies
s("=>", t("\\implies")),
-- Inline Math
s("mk", fmt("${}$", { i(1) })),
-- Fraction with auto-expansion for a/b pattern
s("////", fmt("\\frac{{{}}}{{{}}}", { i(1), i(2) })),
s({ trig = "(%w+)/(%w+)", regTrig = true, wordTrig = false }, {
f(function(_, snip) return "\\frac{" .. snip.captures[1] .. "}{" .. snip.captures[2] .. "}" end)
}),
-- Not Equals
s("!=", t("\\neq")),
-- Sum
s("sum", fmt("\\sum_{{n={}}}^{{{}}} {}", { i(1, "1"), i(2, "\\infty"), i(3, "a_n z^n") })),
-- Taylor Series
s("taylor", fmt("\\sum_{{{}={}}}^{{{}}} {} (x-a)^{}", { i(1, "k"), i(2, "0"), i(3, "\\infty"), i(4, "c_"), i(1) })),
-- Limit
s("lim", fmt("\\lim_{{{} \\to {}}}", { i(1, "n"), i(2, "\\infty") })),
-- Greek Letters
s("alpha", t("\\alpha")),
s("beta", t("\\beta")),
s("gamma", t("\\gamma")),
s("delta", t("\\delta")),
s("epsilon", t("\\epsilon")),
s("zeta", t("\\zeta")),
s("eta", t("\\eta")),
s("theta", t("\\theta")),
s("iota", t("\\iota")),
s("kappa", t("\\kappa")),
s("lambda", t("\\lambda")),
s("mu", t("\\mu")),
s("nu", t("\\nu")),
s("xi", t("\\xi")),
s("omicron", t("\\omicron")),
s("pi", t("\\pi")),
s("rho", t("\\rho")),
s("sigma", t("\\sigma")),
s("tau", t("\\tau")),
s("upsilon", t("\\upsilon")),
s("phi", t("\\phi")),
s("chi", t("\\chi")),
s("psi", t("\\psi")),
s("omega", t("\\omega")),
s("Alpha", t("\\Alpha")),
s("Beta", t("\\Beta")),
s("Gamma", t("\\Gamma")),
s("Delta", t("\\Delta")),
s("Epsilon", t("\\Epsilon")),
s("Zeta", t("\\Zeta")),
s("Eta", t("\\Eta")),
s("Theta", t("\\Theta")),
s("Iota", t("\\Iota")),
s("Kappa", t("\\Kappa")),
s("Lambda", t("\\Lambda")),
s("Mu", t("\\Mu")),
s("Nu", t("\\Nu")),
s("Xi", t("\\Xi")),
s("Omicron", t("\\Omicron")),
s("Pi", t("\\Pi")),
s("Rho", t("\\Rho")),
s("Sigma", t("\\Sigma")),
s("Tau", t("\\Tau")),
s("Upsilon", t("\\Upsilon")),
s("Phi", t("\\Phi")),
s("Chi", t("\\Chi")),
s("Psi", t("\\Psi")),
s("Omega", t("\\Omega")),
-- Other Symbols
s("ooo", t("\\infty")),
s("prod", t("\\prod")),
s("pm", t("\\pm")),
s("mp", t("\\mp")),
s("+-", t("\\pm")),
s("-+", t("\\mp")),
s("...", t("\\dots")),
s("<->", t("\\leftrightarrow")),
s("->", t("\\to")),
s("!>", t("\\mapsto")),
s("invs", t("^{-1}")),
s("\\\\\\", t("\\setminus")),
s("||", t("\\mid")),
s("and", t("\\cap")),
s("orr", t("\\cup")),
s("inn", t("\\in")),
s("notin", t("\\not\\in")),
s("\\subset eq", t("\\subseteq")),
s("eset", t("\\emptyset")),
s("set", fmt("\\{{}}", { i(1) })),
s("=>", t("\\implies")),
s("=<", t("\\impliedby")),
s("iff", t("\\iff")),
s("exists", t("\\exists")),
-- Special Formatting
s("mcal", fmt("\\mathcal{{{}}}", { i(1) })),
s("mbb", fmt("\\mathbb{{{}}}", { i(1) })),
s("ell", t("\\ell")),
s("lll", t("\\ell")),
s("LL", t("\\mathcal{L}")),
s("HH", t("\\mathcal{H}")),
s("CC", t("\\mathbb{C}")),
s("RR", t("\\mathbb{R}")),
s("ZZ", t("\\mathbb{Z}")),
s("NN", t("\\mathbb{N}")),
s("II", t("\\mathbb{1}")),
-- Miscellaneous Symbols
s("del", t("\\nabla")),
s("xx", t("\\times")),
s("avg", fmt("\\langle {} \\rangle", { i(1) })),
s("norm", fmt("\\lvert {} \\rvert", { i(1) })),
s("ceil", fmt("\\lceil {} \\rceil", { i(1) })),
s("floor", fmt("\\lfloor {} \\rfloor", { i(1) }))
})