1
0
Fork 0
neovim-config/luasnippets/markdown.lua

73 lines
1.3 KiB
Lua
Raw Normal View History

local ls = require("luasnip")
-- some shorthands...
local snip = ls.snippet
local insert = ls.insert_node
local func = ls.function_node
2023-04-18 22:39:23 -04:00
local fmt = require("luasnip.extras.fmt").fmt
2023-04-18 22:58:04 -04:00
local fmta = require("luasnip.extras.fmt").fmta
ls.add_snippets(nil, {
markdown = {
snip(
{
trig = "link",
namr = "markdown_link",
2023-04-14 19:38:59 -04:00
dscr = "Create markdown link [txt](url)",
},
2023-04-14 19:38:59 -04:00
fmt("[{txt}]({url})", {
txt = insert(1),
url = func(function(_, snippet)
return snippet.env.TM_SELECTED_TEXT[1] or {}
2023-04-14 19:38:59 -04:00
end, {}),
})
),
},
})
2023-04-18 22:58:04 -04:00
ls.add_snippets(nil, {
markdown = {
snip(
{
trig = "fig",
namr = "zola_figure",
dscr = "Zola figure shortcode",
},
fmta("{{ figure(src=\"img/<src>\",\nthumb=\"_small\",\ncaption=\"<caption>\",\nalt=\"<alt>\"\n) }}", {
2023-04-18 22:58:04 -04:00
src = insert(1),
caption = insert(2),
alt = insert(3),
2023-04-18 22:58:04 -04:00
})
),
},
})
ls.add_snippets(nil, {
markdown = {
snip(
{
trig = "gal",
namr = "zola_gallery",
dscr = "Zola gallery shortcode",
},
2023-12-30 23:33:28 -03:00
fmta("{{ gallery() }}\n\n<inner>\n{{ end() }}", {
inner = insert(1),
})
),
},
})
ls.add_snippets(nil, {
markdown = {
snip(
{
trig = "kbd",
namr = "zola_keyboard",
dscr = "Zola keyboard shortcode",
},
2023-12-30 23:33:28 -03:00
fmta("{{ kbd(key=\"<key>\") }}", {
key = insert(1),
})
),
},
})