From b518e48a50903dcf5654e39c919a3cbdd5370bef Mon Sep 17 00:00:00 2001 From: minco Date: Wed, 22 Oct 2025 12:08:05 +0900 Subject: [PATCH] add snippets --- init.lua | 2 +- lua/config/commands.lua | 6 ++++++ lua/plugins/luasnip.lua | 7 ++++++- snippets/rust.json | 23 +++++++++++++++-------- 4 files changed, 28 insertions(+), 10 deletions(-) create mode 100644 lua/config/commands.lua diff --git a/init.lua b/init.lua index 48bb342..91135ec 100644 --- a/init.lua +++ b/init.lua @@ -63,5 +63,5 @@ vim.api.nvim_create_autocmd("TextYankPost", { }) require("config.keymaps") -require("config.lazy") +require("config.commands") require("config.lazy") diff --git a/lua/config/commands.lua b/lua/config/commands.lua new file mode 100644 index 0000000..7fc9c48 --- /dev/null +++ b/lua/config/commands.lua @@ -0,0 +1,6 @@ +vim.api.nvim_create_user_command("Format", function() + vim.lsp.buf.format({ + async = true, + timeout_ms = 2000, + }) +end, {}) diff --git a/lua/plugins/luasnip.lua b/lua/plugins/luasnip.lua index f53c391..58295f8 100644 --- a/lua/plugins/luasnip.lua +++ b/lua/plugins/luasnip.lua @@ -1,3 +1,7 @@ +local function snip_reload() + require("luasnip.loaders.from_vscode").lazy_load({ paths = vim.fn.stdpath("config") .. "/snippets/" }) +end + return { "L3MON4D3/LuaSnip", version = "v2.*", @@ -5,6 +9,7 @@ return { build = "make install_jsregexp", config = function() require("luasnip.loaders.from_vscode").lazy_load() - require("luasnip.loaders.from_vscode").lazy_load({ paths = vim.fn.stdpath("config") .. "/snippets/" }) + snip_reload() + vim.api.nvim_create_user_command("SnipReload", snip_reload, {}) end, } diff --git a/snippets/rust.json b/snippets/rust.json index 8fa6503..8c45ead 100644 --- a/snippets/rust.json +++ b/snippets/rust.json @@ -1,10 +1,17 @@ { - "Rust Derive": { - "prefix": "derive", - "body": [ - "#[derive(Debug, Clone$1)]" - ], - "description": "Insert #[derive(...)] with cursor inside parentheses" - } + "Rust Derive": { + "prefix": "derive", + "body": [ + "#[derive(Debug, Clone$1)]" + ], + "description": "Insert #[derive(...)] with cursor inside parentheses" + }, + "Rust module insert": { + "prefix": "pmod", + "body": [ + "pub mod ${1:module};", + "pub use ${1}::*;" + ], + "description": "Insert mod and pub use for a module" + } } -