Add/migrate some basic lua snippets
parent
a76fd5cd62
commit
8f2787f439
|
@ -0,0 +1,27 @@
|
||||||
|
local ls = require("luasnip")
|
||||||
|
local s = ls.snippet
|
||||||
|
local t = ls.text_node
|
||||||
|
local f = ls.function_node
|
||||||
|
|
||||||
|
local TM_FILENAME = function(_, snip)
|
||||||
|
return snip.env.TM_FILENAME
|
||||||
|
end
|
||||||
|
|
||||||
|
local TM_FILENAME_BASE = function(_, snip)
|
||||||
|
return snip.env.TM_FILENAME_BASE
|
||||||
|
end
|
||||||
|
|
||||||
|
local NAME = "Hektor Misplon"
|
||||||
|
local LOCALHOST = "localhost"
|
||||||
|
local LOCALHOST_IP = "127.0.0.1"
|
||||||
|
|
||||||
|
return {
|
||||||
|
s({ trig = "fn", desc = "Filename" }, { f(TM_FILENAME_BASE) }),
|
||||||
|
s({ trig = "fne", dscr = "Filename (+extension)" }, { f(TM_FILENAME) }),
|
||||||
|
s({ trig = "hm" }, { t(NAME) }),
|
||||||
|
s({ trig = "loho" }, { t(LOCALHOST) }),
|
||||||
|
s({ trig = "lohoi" }, { t(LOCALHOST_IP) }),
|
||||||
|
s({ trig = "date" }, { f(function()
|
||||||
|
return os.date("%Y-%m-%d")
|
||||||
|
end) }),
|
||||||
|
}
|
|
@ -0,0 +1,119 @@
|
||||||
|
local ls = require("luasnip")
|
||||||
|
local s = ls.snippet
|
||||||
|
local t = ls.text_node
|
||||||
|
local i = ls.insert_node
|
||||||
|
|
||||||
|
return {
|
||||||
|
-- Flex
|
||||||
|
s({ trig = "b1", dscr = "Add 'border: 1px <color>;'" }, {
|
||||||
|
t("border: 1px solid "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "dfl", dscr = "Add 'display: flex;'" }, {
|
||||||
|
t("display: flex;"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "flr", dscr = "Add 'flex-direction: row;'" }, {
|
||||||
|
t("flex-direction: row;"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "flc", dscr = "Add 'flex-direction: column;'" }, {
|
||||||
|
t("flex-direction: column;"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "flw", dscr = "Add 'flex-wrap: wrap;'" }, {
|
||||||
|
t("flex-wrap: wrap;"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "dfc", dscr = "Display flex column" }, {
|
||||||
|
t("display: flex;"),
|
||||||
|
t("flex-direction: column;"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
-- Grid
|
||||||
|
s({ trig = "dg", dscr = "Add 'display: grid;'" }, {
|
||||||
|
t("display: grid;"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
-- Block
|
||||||
|
s({ trig = "db", dscr = "Add 'display: block;'" }, {
|
||||||
|
t("display: block;"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
-- None
|
||||||
|
s({ trig = "dn", dscr = "Add 'display: none;'" }, {
|
||||||
|
t("display: none;"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
-- CSS Variables
|
||||||
|
s({ trig = "v", dscr = "Add CSS variable" }, {
|
||||||
|
t("var(--"),
|
||||||
|
i(1),
|
||||||
|
t(")"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
-- Margin
|
||||||
|
s({ trig = "m", dscr = "Add 'margin: ;'" }, {
|
||||||
|
t("margin: "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "mt", dscr = "Add 'margin-top: ;'" }, {
|
||||||
|
t("margin-top: "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "mr", dscr = "Add 'margin-right: ;'" }, {
|
||||||
|
t("margin-right: "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "mb", dscr = "Add 'margin-bottom: ;'" }, {
|
||||||
|
t("margin-bottom: "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "ml", dscr = "Add 'margin-left: ;'" }, {
|
||||||
|
t("margin-left: "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
-- Padding
|
||||||
|
s({ trig = "p", dscr = "Add 'padding: ;'" }, {
|
||||||
|
t("padding: "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "pt", dscr = "Add 'padding-top: ;'" }, {
|
||||||
|
t("padding-top: "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "pr", dscr = "Add 'padding-right: ;'" }, {
|
||||||
|
t("padding-right: "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "pb", dscr = "Add 'padding-bottom: ;'" }, {
|
||||||
|
t("padding-bottom: "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "pl", dscr = "Add 'padding-left: ;'" }, {
|
||||||
|
t("padding-left: "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
}
|
|
@ -0,0 +1,67 @@
|
||||||
|
local ls = require("luasnip")
|
||||||
|
local s = ls.snippet
|
||||||
|
local t = ls.text_node
|
||||||
|
local i = ls.insert_node
|
||||||
|
|
||||||
|
return {
|
||||||
|
s({ trig = "ifdef" }, {
|
||||||
|
t("#ifdef GL_ES"),
|
||||||
|
t("precision mediump float;"),
|
||||||
|
i(1),
|
||||||
|
t("#endif"),
|
||||||
|
}),
|
||||||
|
s({ trig = "defpi" }, {
|
||||||
|
t("#define PI 3.14159265359"),
|
||||||
|
}),
|
||||||
|
s({ trig = "main" }, {
|
||||||
|
t("void main() {"),
|
||||||
|
i(1),
|
||||||
|
t("}"),
|
||||||
|
}),
|
||||||
|
s({ trig = "uni" }, {
|
||||||
|
t("uniform "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
}),
|
||||||
|
s({ trig = "unif" }, {
|
||||||
|
t("uniform float "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
}),
|
||||||
|
s({ trig = "univ" }, {
|
||||||
|
t("uniform vec"),
|
||||||
|
i(1),
|
||||||
|
t(" float "),
|
||||||
|
i(2),
|
||||||
|
t(";"),
|
||||||
|
}),
|
||||||
|
s({ trig = "univ2" }, {
|
||||||
|
t("uniform vec2 float "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
}),
|
||||||
|
s({ trig = "univ3" }, {
|
||||||
|
t("uniform vec3 float "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
}),
|
||||||
|
s({ trig = "univ4" }, {
|
||||||
|
t("uniform vec4 float "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
}),
|
||||||
|
s({ trig = "f" }, {
|
||||||
|
t("float "),
|
||||||
|
i(1),
|
||||||
|
t(";"),
|
||||||
|
}),
|
||||||
|
s({ trig = "v" }, {
|
||||||
|
t("vec"),
|
||||||
|
}),
|
||||||
|
s({ trig = "ss" }, {
|
||||||
|
t("smoothstep("),
|
||||||
|
i(1),
|
||||||
|
t(")"),
|
||||||
|
i(2),
|
||||||
|
}),
|
||||||
|
}
|
|
@ -0,0 +1,25 @@
|
||||||
|
local ls = require("luasnip")
|
||||||
|
local s = ls.snippet
|
||||||
|
local t = ls.text_node
|
||||||
|
local i = ls.insert_node
|
||||||
|
|
||||||
|
return {
|
||||||
|
s({ trig = "clg", dscr = "console.log" }, {
|
||||||
|
t("console.log("),
|
||||||
|
i(1),
|
||||||
|
t(")"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "Js", dscr = "JSON.stringify" }, {
|
||||||
|
t("JSON.stringify("),
|
||||||
|
i(1),
|
||||||
|
t(")"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
s({ trig = "Jsf", dscr = "JSON.stringify (formatted)" }, {
|
||||||
|
t("JSON.stringify("),
|
||||||
|
i(1),
|
||||||
|
t(", 0, 2)"),
|
||||||
|
i(0),
|
||||||
|
}),
|
||||||
|
}
|
|
@ -0,0 +1,39 @@
|
||||||
|
local ls = require("luasnip")
|
||||||
|
local s = ls.snippet
|
||||||
|
local i = ls.insert_node
|
||||||
|
local d = ls.dynamic_node
|
||||||
|
local sn = ls.snippet_node
|
||||||
|
local fmta = require("luasnip.extras.fmt").fmta
|
||||||
|
|
||||||
|
-- Taken from https://ejmastnak.com/tutorials/vim-latex/luasnip/#anatomy
|
||||||
|
local get_visual = function(_, parent)
|
||||||
|
if #parent.snippet.env.LS_SELECT_RAW > 0 then
|
||||||
|
return sn(nil, i(1, parent.snippet.env.LS_SELECT_RAW))
|
||||||
|
else
|
||||||
|
return sn(nil, i(1))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return {
|
||||||
|
s(
|
||||||
|
{ trig = "^h", regTrig = true, dscr = "Markdown header" },
|
||||||
|
fmta("# <><>", {
|
||||||
|
d(1, get_visual),
|
||||||
|
i(0),
|
||||||
|
})
|
||||||
|
),
|
||||||
|
s(
|
||||||
|
{ trig = "^sec", regTrig = true, dscr = "Markdown header" },
|
||||||
|
fmta("## <><>", {
|
||||||
|
d(1, get_visual),
|
||||||
|
i(0),
|
||||||
|
})
|
||||||
|
),
|
||||||
|
s(
|
||||||
|
{ trig = "^ssec", regTrig = true, dscr = "Markdown header" },
|
||||||
|
fmta("### <><>", {
|
||||||
|
d(1, get_visual),
|
||||||
|
i(0),
|
||||||
|
})
|
||||||
|
),
|
||||||
|
}
|
|
@ -0,0 +1,30 @@
|
||||||
|
local ls = require("luasnip")
|
||||||
|
local s = ls.snippet
|
||||||
|
local t = ls.text_node
|
||||||
|
local i = ls.insert_node
|
||||||
|
|
||||||
|
-- TODO: extends html, javascript, css
|
||||||
|
|
||||||
|
return {
|
||||||
|
s("oM", {
|
||||||
|
t({ "onMount(() => {" }),
|
||||||
|
i(0),
|
||||||
|
t({ "})" }),
|
||||||
|
}),
|
||||||
|
s("oD", {
|
||||||
|
t({ "onDestroy(() => {" }),
|
||||||
|
i(0),
|
||||||
|
t({ "})" }),
|
||||||
|
}),
|
||||||
|
s("preJsf", {
|
||||||
|
t({ "<pre>" }),
|
||||||
|
i(0),
|
||||||
|
t({ "{JSON.stringify($0, 0, 2)}" }),
|
||||||
|
t({ "</pre>" }),
|
||||||
|
}),
|
||||||
|
s(":g", {
|
||||||
|
t({ ":global(" }),
|
||||||
|
i(0),
|
||||||
|
t({ ")" }),
|
||||||
|
}),
|
||||||
|
}
|
Loading…
Reference in New Issue