aboutsummaryrefslogtreecommitdiff
path: root/lua/user/luasnip.lua
diff options
context:
space:
mode:
authorsrdusr <trevorgray@srdusr.com>2022-10-20 23:58:14 +0200
committersrdusr <trevorgray@srdusr.com>2022-10-20 23:58:14 +0200
commit6cdd3b4b282d79130dc6f2b346cb509ddbb6fa48 (patch)
tree1c08d622e135b669381a0889c54012f70929514d /lua/user/luasnip.lua
parent97be95d96b96c42dab64dff7018a89baa22384ee (diff)
downloaddotfiles-6cdd3b4b282d79130dc6f2b346cb509ddbb6fa48.tar.gz
dotfiles-6cdd3b4b282d79130dc6f2b346cb509ddbb6fa48.zip
luasnip integration
Diffstat (limited to 'lua/user/luasnip.lua')
-rw-r--r--lua/user/luasnip.lua127
1 files changed, 98 insertions, 29 deletions
diff --git a/lua/user/luasnip.lua b/lua/user/luasnip.lua
index 12352e8..7a6066e 100644
--- a/lua/user/luasnip.lua
+++ b/lua/user/luasnip.lua
@@ -4,7 +4,8 @@ end
--local luasnip = require("luasnip")
local ls = require "luasnip" --
local types = require "luasnip.util.types" --
-local options = {
+--local options = {
+ls.config.set_config {
history = true,
updateevents = "TextChanged,TextChangedI",
-- Autosnippets:
@@ -17,45 +18,113 @@ local options = {
}, --
}, --
}
--- <c-k> is my expansion key
--- this will expand the current item or jump to the next item within the snippet.
-vim.keymap.set({ "i", "s" }, "<c-.>", function()
- if ls.expand_or_jumpable() then
- ls.expand_or_jump()
- end
-end, { silent = true })
+-- ls.expand_or_jump()
+-- end
+--nd, { silent = true })
-- <c-j> is my jump backwards key.
-- this always moves to the previous item within the snippet
-vim.keymap.set({ "i", "s" }, "<c-,>", function()
- if ls.jumpable(-1) then
- ls.jump(-1)
- end
-end, { silent = true })
+--im.keymap.set({ "i", "s" }, "<C-j>", function()
+-- if ls.jumpable(-1) then
+-- ls.jump(-1)
+-- end
+--nd, { silent = true })
-- <c-l> is selecting within a list of options.
-- This is useful for choice nodes (introduced in the forthcoming episode 2)
-vim.keymap.set("i", "<c-l>", function()
- if ls.choice_active() then
- ls.change_choice(1)
- end
-end)
+--vim.keymap.set("i", "<c-l>", function()
+-- if ls.choice_active() then
+-- ls.change_choice(1)
+-- end
+--end)
-vim.keymap.set("i", "<c-c>", require "luasnip.extras.select_choice")
+--vim.keymap.set("i", "<c-z>", require "luasnip.extras.select_choice")
-- shorcut to source my luasnips file again, which will reload my snippets
-vim.keymap.set("n", "<leader><leader>s", "<cmd>source ~/.config/nvim/lua/plugins/luasnip.lua<CR>")
+--vim.keymap.set("n", "<leader><leader>s", "<cmd>source ~/.config/nvim/lua/user/plugins/luasnip.lua<CR>")
-- ls.parser.parse_snippet(<text>, <VS**** style snippet>)
-ls.snippets = {
- all = {
- -- Available in any filetype
- ls.parser.parse_snippet("expand", "-- this is what was expanded!"),
- },
- lua = {
- -- Lua specific snippets go here.
- },
-}
+--ls.snippets = {
+-- all = {
+-- -- Available in any filetype
+-- ls.parser.parse_snippet("expand", "-- this is what was expanded!"),
+--s.snippets = {
+-- all = {
+-- -- Available in any filetype
+-- ls.parser.parse_snippet("expand", "-- this is what was expanded!"),
+-- },
+-- lua = {
+-- -- Lua specific snippets go here.
+-- ls.parser.parse_snippet("lf", "local $1 = function($2)\n $0\nend")
+-- },
+--
+--})
+local snip = ls.snippet
+local node = ls.snippet_node
+local text = ls.text_node
+local insert = ls.insert_node
+local func = ls.function_node
+local choice = ls.choice_node
+local dynamicn = ls.dynamic_node
+
+local date = function() return {os.date('%Y-%m-%d')} end
+
+ls.add_snippets(nil, {
+ all = {
+ --snip({
+ -- trig = "date",
+ -- namr = "Date",
+ -- dscr = "Date in the form of YYYY-MM-DD",
+ --}, {
+ -- func(date, {}),
+ --}),
+ snip({
+ trig = "meta",
+ namr = "Metadata",
+ dscr = "Yaml metadata format for markdown"
+},
+{
+ }),
+ },
+})
+--local opts = { noremap = true, silent = true }
+--keymap("i", "<C-j>", "<cmd>lua require'luasnip'.jump(1)<CR>", opts)
+--keymap("s", "<C-j>", "<cmd>lua require'luasnip'.jump(1)<CR>", opts)
+--keymap("i", "<C-k>", "<cmd>lua require'luasnip'.jump(-1)<CR>", opts)
+--local keymap = vim.api.nvim_set_keymap
+local keymap = vim.keymap
+local term_opts = { noremap = true, silent = false }
+ local map = function(mode, l, r, opts)
+ opts = opts or {}
+ opts.silent = true
+ opts.noremap = true
+ keymap.set(mode, l, r, opts)
+ end
+
+map("i", "<C-j>", "<Plug>luasnip-expand-or-jump<CR>")
+map("i", "<C-k>", "<Plug>luasnip-jump-prev * <Cmd>lua require'luasnip'.jump(-1)<CR>")
+map("s", "<C-j>", "<Plug>luasnip-expand-or-jump<CR>")
+map("s", "<C-k>", "<Plug>luasnip-jump-prev * <Cmd>lua require'luasnip'.jump(-1)<CR>")
+--keymap("s", "<C-k>", "<cmd>lua require'luasnip'.jump(-1)<CR>", opts)
+--map("i", "<C-j>", "<Plug>luasnip-expand-or-jump<CR>")
+
+--! <Plug>luasnip-expand-repeat * <Cmd>lua require'luasnip'.expand_repeat()<CR>
+--! <Plug>luasnip-delete-check * <Cmd>lua require'luasnip'.unlink_current_if_deleted()<CR>
+--i <Plug>luasnip-jump-prev * <Cmd>lua require'luasnip'.jump(-1)<CR>
+--i <Plug>luasnip-jump-next * <Cmd>lua require'luasnip'.jump(1)<CR>
+--i <Plug>luasnip-prev-choice * <Cmd>lua require'luasnip'.change_choice(-1)<CR>
+--i <Plug>luasnip-next-choice * <Cmd>lua require'luasnip'.change_choice(1)<CR>
+--i <Plug>luasnip-expand-snippet * <Cmd>lua require'luasnip'.expand()<CR>
+--i <Plug>luasnip-expand-or-jump * <Cmd>lua require'luasnip'.expand_or_jump()<CR>
+
+
+
+
+
+
+
+
+