diff options
author | opalmay <[email protected]> | 2023-01-28 22:43:44 +0200 |
---|---|---|
committer | opalmay <[email protected]> | 2023-01-28 22:48:23 +0200 |
commit | 845522742dbfcdfd6bd83437fc5b5caf6798db60 (patch) | |
tree | 32cfc3df094cea9d983b5fa0cb31f117cffd9f89 /lua/lvim/core/luasnip.lua | |
parent | c18cd3f0a89443d4265f6df8ce12fb89d627f09e (diff) |
feat(luasnip): setup tables snip
Diffstat (limited to 'lua/lvim/core/luasnip.lua')
-rw-r--r-- | lua/lvim/core/luasnip.lua | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/lua/lvim/core/luasnip.lua b/lua/lvim/core/luasnip.lua new file mode 100644 index 00000000..4c869da6 --- /dev/null +++ b/lua/lvim/core/luasnip.lua @@ -0,0 +1,35 @@ +local M = {} +local utils = require "lvim.utils" +local paths = {} + +function M.gen_setup_snips() + local ls = require "luasnip" + local lua_snippets = { + -- ls.parser.parse_snippet("cmp", utils.r_inspect_settings(lvim.builtin.cmp, "lvim.builtin.cmp", 10000, ".")), + -- ls.parser.parse_snippet("lir", utils.r_inspect_settings(lvim.builtin.lir, "lvim.builtin.lir", 10000, ".")), + } + for i, v in pairs(lvim.builtin) do + lua_snippets[#lua_snippets + 1] = + ls.parser.parse_snippet("lvim.builtin." .. i, utils.r_inspect_settings(v, "lvim.builtin." .. i, 10000, ".")) + end + ls.add_snippets("lua", lua_snippets) +end + +function M.setup() + if lvim.builtin.luasnip.sources.friendly_snippets then + paths[#paths + 1] = utils.join_paths(get_runtime_dir(), "site", "pack", "lazy", "opt", "friendly-snippets") + end + local user_snippets = utils.join_paths(get_config_dir(), "snippets") + if utils.is_directory(user_snippets) then + paths[#paths + 1] = user_snippets + end + require("luasnip.loaders.from_lua").lazy_load() + require("luasnip.loaders.from_vscode").lazy_load { + paths = paths, + } + require("luasnip.loaders.from_snipmate").lazy_load() + + M.gen_setup_snips() +end + +return M |