.dotfiles/.config/nvim/lua/plugins/luasnip.lua
2025-05-31 18:23:30 +03:00

54 lines
1.1 KiB
Lua

return {
"L3MON4D3/LuaSnip",
-- follow latest release.
version = "v2.*", -- Replace <CurrentMajor> by the latest released major (first number of latest release)
-- install jsregexp (optional!).
build = "make install_jsregexp",
dependencies = {
"rafamadriz/friendly-snippets",
},
config = function()
require("luasnip").setup({
update_events = "TextChanged,TextChangedI",
})
require("luasnip.loaders.from_vscode").lazy_load()
end,
keys = {
{
"<leader>rs",
":source ~/.config/nvim/lua/snippets.lua<CR>",
desc = "[R]eload [s]nippets",
},
{
"<Tab>",
function()
if require("luasnip").locally_jumpable(1) then
require("luasnip").jump(1)
end
end,
mode = { "i", "s" },
desc = "next snippet placeholder",
},
{
"<S-Tab>",
function()
if require("luasnip").locally_jumpable(-1) then
require("luasnip").jump(-1)
end
end,
mode = { "i", "s" },
desc = "prev snippet placeholder",
},
{
"<C-E>",
function()
if require("luasnip").choice_active() then
require("luasnip").change_choice(1)
end
end,
mode = { "i", "s" },
desc = "prev snippet placeholder",
},
},
}