190 lines
3.6 KiB
Lua
190 lines
3.6 KiB
Lua
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
|
|
|
|
return {
|
|
|
|
|
|
-- Tabular material
|
|
|
|
s({trig = "tab", name = "Table environment"},
|
|
{
|
|
t("\\begin{table}["), i(1,"opt"), t("]"),
|
|
t({"",""}), t("\\begin{tabular}{"), i(2,"cols"), t("}"),
|
|
t({"",""}), t(" "), i(3),
|
|
t({"",""}), t("\\end{tabular}"),
|
|
t({"",""}), t("\\end{table}")
|
|
}
|
|
),
|
|
|
|
s({trig = "rr", name = "Array environment"},
|
|
{
|
|
t("\\begin{array}{"), i(1,"cols"), t("}"),
|
|
t({"",""}), t(" "), i(2),
|
|
t({"",""}), t("\\end{array}")
|
|
}
|
|
),
|
|
|
|
s({trig = "he", name = "Break line height"},
|
|
{
|
|
t("\\\\["), i(1), t("]"),
|
|
t({"",""})
|
|
}
|
|
),
|
|
|
|
s({trig = "hyp", name = "Hyphenate text correctly"},
|
|
{
|
|
t("\\hspace{0pt}")
|
|
}
|
|
),
|
|
|
|
s({trig = "bck", name = "Redefine \\\\ last column"},
|
|
{
|
|
t("\\arraybackslash")
|
|
}
|
|
),
|
|
|
|
s({trig = "lt", name = "Align text to left"},
|
|
{
|
|
t("\\raggedleft")
|
|
}
|
|
),
|
|
|
|
s({trig = "cr", name = "Align text to center"},
|
|
{
|
|
t("\\centering")
|
|
}
|
|
),
|
|
|
|
s({trig = "rt", name = "Align text to right"},
|
|
{
|
|
t("\\raggedright")
|
|
}
|
|
),
|
|
|
|
s({trig = "hn", name = "Horizontal line"},
|
|
{
|
|
t("\\hline"),
|
|
t({"",""})
|
|
}
|
|
),
|
|
|
|
s({trig = "br", name = "Tabular row break"},
|
|
{
|
|
t("\\\\"),
|
|
t({"",""}), i(1)
|
|
}
|
|
),
|
|
|
|
-- Tabular environment preamble options
|
|
|
|
s({trig = "pc", name = "Top column"},
|
|
{
|
|
t("p{"), i(1,"width"), t("}")
|
|
}
|
|
),
|
|
|
|
s({trig = "cop", name = "num copies of opts"},
|
|
{
|
|
t("*{"), i(1,"num"), t("}{"), i(2,"opts"), t("}")
|
|
}
|
|
),
|
|
|
|
s({trig = "mc", name = "Vertically centered column"},
|
|
{
|
|
t("m{"), i(1,"width"), t("}")
|
|
}
|
|
),
|
|
|
|
s({trig = "bc", name = "Bottom column"},
|
|
{
|
|
t("b{"), i(1,"width"), t("}")
|
|
}
|
|
),
|
|
|
|
s({trig = "bl", name = "Before column options"},
|
|
{
|
|
t(">{"), i(1,"decl"), t("}")
|
|
}
|
|
),
|
|
|
|
s({trig = "af", name = "After column options"},
|
|
{
|
|
t("<{"), i(1,"decl"), t("}")
|
|
}
|
|
),
|
|
|
|
-- Floats
|
|
|
|
s({trig = "cpt", name = "Caption"},
|
|
{
|
|
c(1,
|
|
{
|
|
{
|
|
t("\\caption{"), i(1,"text"), t("}")
|
|
},
|
|
{
|
|
t("\\caption["), i(1,"list-entry"), t("]{"), i(2,"text"), t("}")
|
|
}
|
|
}
|
|
)
|
|
}
|
|
),
|
|
|
|
s({trig = "cof", name = "Caption of"},
|
|
{
|
|
c(1,
|
|
{
|
|
{
|
|
t("\\captionof{"), i(1,"type"), t("}{"), i(2,"text"), t("}")
|
|
},
|
|
{
|
|
t("\\captionof{"), i(1,"type"), t("}["), i(2,"list-entry"), t("]{"), i(3,"text"), t("}")
|
|
},
|
|
{
|
|
t("\\captionof*{"), i(1,"type"), t("}{"), i(2,"text"), t("}")
|
|
}
|
|
}
|
|
)
|
|
}
|
|
),
|
|
|
|
s({trig = "sbf", name = "Subfloat"},
|
|
{
|
|
c(1,
|
|
{
|
|
{
|
|
t("\\subfloat{"), i(1,"object"), t("}")
|
|
},
|
|
{
|
|
t("\\subfloat["), i(1,"caption"), t("]{"), i(2,"object"), t("}")
|
|
},
|
|
{
|
|
t("\\subfloat["), i(1,"list-entry"), t("]["), i(2,"caption"), t("]{"), i(3,"object"), t("}")
|
|
}
|
|
}
|
|
)
|
|
}
|
|
),
|
|
|
|
s({trig = "snt", name = "Sub-numbers for tables"},
|
|
{
|
|
t("\\begin{subtables}"),
|
|
t({"",""}), t(" "), i(1),
|
|
t({"",""}), t("\\end{subtables}")
|
|
}
|
|
),
|
|
|
|
s({trig = "snf", name = "Sub-numbers for figures"},
|
|
{
|
|
t("\\begin{subfigures}"),
|
|
t({"",""}), t(" "), i(1),
|
|
t({"",""}), t("\\end{subfigures}")
|
|
}
|
|
),
|
|
|
|
}
|