From 5e80cc2081ec616c828a0abe82d246c4dc0a4334 Mon Sep 17 00:00:00 2001 From: bh Date: Wed, 19 Nov 2025 14:50:22 +0800 Subject: Fixed snippets and also a little refactoring on the theme --- lua/config/.bak/.luasnip.bak.bak | 56 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 lua/config/.bak/.luasnip.bak.bak (limited to 'lua/config/.bak') diff --git a/lua/config/.bak/.luasnip.bak.bak b/lua/config/.bak/.luasnip.bak.bak new file mode 100644 index 0000000..e0b5617 --- /dev/null +++ b/lua/config/.bak/.luasnip.bak.bak @@ -0,0 +1,56 @@ +-- ~/.config/nvim/lua/config/luasnip.lua +return function() + local ls = require("luasnip") + local s = ls.snippet + local t = ls.text_node + local i = ls.insert_node + + -- Minimal test snippets + ls.snippets = { + all = { + s("hi", t("Hello, world!")), -- trigger: hi + }, + lua = { + s("fn", { -- trigger: fn + t("function "), i(1, "name"), t("("), i(2), t({")", "\t"}), + i(0), + t({"", "end"}) + }), + s("fori", { -- for loop snippet + t("for "), i(1, "i"), t(" = "), i(2, "1"), t(", "), i(3, "10"), t(" do"), + t({"", "\t"}), i(0), + t({"", "end"}) + }), + }, + } + + -- Load VSCode-style snippets (optional) + require("luasnip.loaders.from_vscode").lazy_load() + + -- Load Lua snippets from a separate file (optional) + -- require("luasnip.loaders.from_lua").load({ paths = "~/.config/nvim/lua/config/snippets.lua" }) + + local opts = { silent = true, noremap = true } + + -- Expand snippet or jump forward + vim.keymap.set({ "i", "s" }, "", function() + if ls.expand_or_jumpable() then + ls.expand_or_jump() + end + end, opts) + + -- Jump backward + vim.keymap.set({ "i", "s" }, "", function() + if ls.jumpable(-1) then + ls.jump(-1) + end + end, opts) + + -- Cycle choice nodes + vim.keymap.set({ "i", "s" }, "", function() + if ls.choice_active() then + ls.change_choice(1) + end + end, opts) +end + -- cgit v1.2.3