1
0
Fork 0

LuaSnip: add date snippet and some md and tf snippets

This commit is contained in:
Felipe 2023-04-14 19:03:31 -04:00
parent 38b187bbec
commit 6567b163a7
Signed by: pitbuster
SSH key fingerprint: SHA256:OM3HeVSA96adfy2Gi8OhZkQBY67P88LoJUwkeVoTArQ
5 changed files with 113 additions and 22 deletions

View file

@ -243,6 +243,9 @@ end
---- LuaSnip ---- LuaSnip
require('luasnip.loaders.from_lua').lazy_load() require('luasnip.loaders.from_lua').lazy_load()
local luasnip = require 'luasnip' local luasnip = require 'luasnip'
luasnip.config.set_config({
store_selection_keys = '<c-s>',
})
vim.keymap.set({"i", "s"}, "<Tab>", function() vim.keymap.set({"i", "s"}, "<Tab>", function()
if luasnip.expand_or_jumpable() then if luasnip.expand_or_jumpable() then
luasnip.expand_or_jump() luasnip.expand_or_jump()

24
luasnippets/all.lua Normal file
View file

@ -0,0 +1,24 @@
local ls = require("luasnip")
-- some shorthands...
local snip = ls.snippet
local node = ls.snippet_node
local text = ls.text_node
local insert = ls.insert_node
local func = ls.function_node
local choice = ls.choice_node
local dynamicn = ls.dynamic_node
local date = function() return {os.date('%Y-%m-%d')} end
ls.add_snippets(nil, {
all = {
snip({
trig = "date",
namr = "Date",
dscr = "Date in the form of YYYY-MM-DD",
}, {
func(date, {}),
}),
},
})

54
luasnippets/markdown.lua Normal file
View file

@ -0,0 +1,54 @@
local ls = require("luasnip")
-- some shorthands...
local snip = ls.snippet
local node = ls.snippet_node
local text = ls.text_node
local insert = ls.insert_node
local func = ls.function_node
local fmt = luasnip.extras.fmt.fmt
local choice = ls.choice_node
local dynamicn = ls.dynamic_node
ls.add_snippets(nil, {
markdown = {
snip(
{
trig = "link",
namr = "markdown_link",
dscr = "Create markdown link [txt](url)"
},
fmt(
"[{txt}]({url})",
{
txt = insert(1),
url = func(function(_, snip)
return snip.env.TM_SELECTED_TEXT[1] or {}
end, {}),
}
)
),
},
})
-- snippet fig "Hugo Figure"
-- {{< figure link="img/$1.jpg" thumb="_small"
-- caption="$2"
-- caption-position="bottom">}}
-- $0
-- endsnippet
--
-- snippet gal "Hugo Gallery"
-- {{< gallery hover-effect="none" caption-effect="none" >}}
--
-- {{< figure link="img/$1.jpg" thumb="_small"
-- caption="$2"
-- caption-position="bottom">}}
--
-- $3
-- {{< /gallery >}}
-- $0
-- endsnippet
--
-- snippet kbd "Keyboard"
-- {{<kbd ${1:<key>}>}}$0
-- endsnippet

32
luasnippets/terraform.lua Normal file
View file

@ -0,0 +1,32 @@
local ls = require("luasnip")
-- some shorthands...
local snip = ls.snippet
local node = ls.snippet_node
local text = ls.text_node
local insert = ls.insert_node
local func = ls.function_node
local choice = ls.choice_node
local dynamicn = ls.dynamic_node
local date = function() return {os.date('%Y-%m-%d')} end
ls.add_snippets(nil, {
terraform = {
snip({
trig = "prov",
namr = "AWS provider",
dscr = "AWS provider to be included in the `terraform` section",
},
{
text({
"required_providers {",
" aws = {",
" source = \"hashicorp/aws\"",
" version = \"~> 4.0\"",
" }",
"}",
}),
})
},
})

View file

@ -1,22 +0,0 @@
snippet fig "Hugo Figure"
{{< figure link="img/$1.jpg" thumb="_small"
caption="$2"
caption-position="bottom">}}
$0
endsnippet
snippet gal "Hugo Gallery"
{{< gallery hover-effect="none" caption-effect="none" >}}
{{< figure link="img/$1.jpg" thumb="_small"
caption="$2"
caption-position="bottom">}}
$3
{{< /gallery >}}
$0
endsnippet
snippet kbd "Keyboard"
{{<kbd ${1:<key>}>}}$0
endsnippet