From dde615bfc2daefa66a2e47d1ed6a4e2184474e17 Mon Sep 17 00:00:00 2001 From: Alzalia Date: Fri, 28 Nov 2025 11:43:00 +0100 Subject: [PATCH] feat: added a snippet --- lua/custom/plugins/luasnip.lua | 70 ++++++++++++++++++++++++++++++++++ lua/plugins/init.lua | 22 ----------- 2 files changed, 70 insertions(+), 22 deletions(-) create mode 100644 lua/custom/plugins/luasnip.lua diff --git a/lua/custom/plugins/luasnip.lua b/lua/custom/plugins/luasnip.lua new file mode 100644 index 0000000..d9459f2 --- /dev/null +++ b/lua/custom/plugins/luasnip.lua @@ -0,0 +1,70 @@ +return { + "L3MON4D3/LuaSnip", + even = "VaryLazy", + config = function() + local ls = require "luasnip" + -- some shorthands... + local s = ls.snippet + local sn = ls.snippet_node + local t = ls.text_node + local i = ls.insert_node + local f = ls.function_node + local c = ls.choice_node + local d = ls.dynamic_node + local r = ls.restore_node + + ls.setup { + region_check_events = { "CursorHold", "InsertLeave" }, + delete_check_events = { "TextChanged", "InsertEnter" }, + history = false, + } + ls.add_snippets("all", { + s("flutterhttp", { + t "Future> ", + i(2, "function()"), + t { " async {", '\tfinal url = "https://$apiBasePath/' }, + i(3), + t { '";', "\tfinal client = Client();", "\ttry {", "\t\tfinal headers = await _getHeaders(" }, + i(4), + t { ");" }, + i(5), + t { "", "\t\tfinal response = await client." }, + i(6, "get"), + t { "(Uri.parse(url), headers: headers," }, + i(7), + t { + ");", + "\t\tswitch (response.statusCode) {", + "\t\t\tcase 200:", + "\t\t\t\tfinal json = jsonDecode(response.body);", + "\t\t\t\treturn Result.ok(.fromJson(json));", + }, + i(8), + t { + "", + "\t\t\tdefault:", + '\t\t\t\tthrow "Unknown error withcode ${response.statusCode.toString()}";', + "\t\t\t}", + "\t} catch (e) {", + "\t\treturn Result.error(Exception(e));", + "\t} finally {", + "\t\tclient.close();", + "\t}", + "}", + }, + }), + }) + + vim.keymap.del({ "i", "s" }, "") + + vim.keymap.set({ "i", "s" }, "", function() + ls.jump(1) + end, { silent = true }) + + vim.keymap.set({ "i", "s" }, "", function() + ls.jump(-1) + end, { silent = true }) + end, +} diff --git a/lua/plugins/init.lua b/lua/plugins/init.lua index a534dc2..59873e1 100644 --- a/lua/plugins/init.lua +++ b/lua/plugins/init.lua @@ -52,26 +52,4 @@ return { { "mfussenegger/nvim-dap" }, { "ingur/floatty.nvim" }, - - { - "L3MON4D3/LuaSnip", - even = "VaryLazy", - config = function() - local ls = require "luasnip" - ls.setup { - region_check_events = { "CursorHold", "InsertLeave" }, - delete_check_events = { "TextChanged", "InsertEnter" }, - history = false, - } - vim.keymap.del({ "i", "s" }, "") - - vim.keymap.set({ "i", "s" }, "", function() - ls.jump(1) - end, { silent = true }) - - vim.keymap.set({ "i", "s" }, "", function() - ls.jump(-1) - end, { silent = true }) - end, - }, }