diff --git a/private_dot_config/nvim/lazy-lock.json b/private_dot_config/nvim/lazy-lock.json index 1513df9..132876e 100644 --- a/private_dot_config/nvim/lazy-lock.json +++ b/private_dot_config/nvim/lazy-lock.json @@ -1,8 +1,9 @@ { + "blink.cmp": { "branch": "main", "commit": "327fff91fe6af358e990be7be1ec8b78037d2138" }, "friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" }, "helix-nvim": { "branch": "main", "commit": "c2875fb19df7f3624d0ae1c82b063fc14de1d64b" }, "hop.nvim": { "branch": "master", "commit": "08ddca799089ab96a6d1763db0b8adc5320bf050" }, "lazy.nvim": { "branch": "main", "commit": "db067881fff0fd4be8c00e5bde7492e0e1c77a2f" }, - "mini.completion": { "branch": "main", "commit": "2ab1c8078061a647b0867581a1dcedb046b9ce27" }, - "mini.snippets": { "branch": "main", "commit": "7610dc3aaf7fb09b9cc428273a8ba15ef8aef495" } + "mini.snippets": { "branch": "main", "commit": "7610dc3aaf7fb09b9cc428273a8ba15ef8aef495" }, + "nvim-scissors": { "branch": "main", "commit": "9b4fc66427568b2139480fcc645dd7bb91884ade" } } diff --git a/private_dot_config/nvim/lua/config/20_keymaps.lua b/private_dot_config/nvim/lua/config/20_keymaps.lua index caac947..48e28a9 100644 --- a/private_dot_config/nvim/lua/config/20_keymaps.lua +++ b/private_dot_config/nvim/lua/config/20_keymaps.lua @@ -7,6 +7,9 @@ end local nmap_leader = function(lhs, rhs, desc) vim.keymap.set('n', '' .. lhs, rhs, { desc = desc }) end +local unmap = function(lhs, rhs) + vim.keymap.del(lhs, rhs) +end -- Keymaps ==================================================== nmap('[p', 'exe "put! " . v:register', 'Paste above') nmap(']p', 'exe "put " . v:register', 'Paste below') diff --git a/private_dot_config/nvim/lua/plugin/10_hop.lua b/private_dot_config/nvim/lua/plugin/10_hop.lua index f79b19c..0a5b3af 100644 --- a/private_dot_config/nvim/lua/plugin/10_hop.lua +++ b/private_dot_config/nvim/lua/plugin/10_hop.lua @@ -6,7 +6,7 @@ return { keys = 'etovxqpdygfblzhckisuran' }, keys = { - { "gw", "HopWord", mode = "n", desc = "Hop to word" }, + { "gw", "HopWord", mode = { "n", "x" }, desc = "Hop to word" }, }, } } diff --git a/private_dot_config/nvim/lua/plugin/20_completion.lua b/private_dot_config/nvim/lua/plugin/20_completion.lua index d94d1c4..c63cd75 100644 --- a/private_dot_config/nvim/lua/plugin/20_completion.lua +++ b/private_dot_config/nvim/lua/plugin/20_completion.lua @@ -1,6 +1,17 @@ return { - { 'nvim-mini/mini.completion', version = false }, - { 'rafamadriz/friendly-snippets' }, + { + 'saghen/blink.cmp', + dependencies = { 'rafamadriz/friendly-snippets' }, + version = '1.*', + opts = { + keymap = { preset = 'super-tab' }, + appearance = { nerd_font_variant = 'mono' }, + completion = { documentation = { auto_show = true, auto_show_delay_ms = 0 } }, + sources = { default = { 'lsp', 'path', 'snippets', 'buffer' } }, + fuzzy = { implementation = "prefer_rust_with_warning" }, + }, + opts_extend = { "sources.default"} + }, { 'nvim-mini/mini.snippets', opts = function() @@ -12,5 +23,14 @@ return { } } end + }, + { + 'chrisgrieser/nvim-scissors', + opts = { snippetDir = vim.fn.stdpath("config") .. "/snippets" }, + keys = { + { "", "ScissorsAddNewSnippet", mode = { "x" }, desc = "Save selection as snippet" }, + { "", "ScissorsEditSnippet", mode = { "n", "x" }, desc = "Edit existing snippet" }, + }, } } + diff --git a/private_dot_config/nvim/snippets/lua.json b/private_dot_config/nvim/snippets/lua.json new file mode 100644 index 0000000..7f8c961 --- /dev/null +++ b/private_dot_config/nvim/snippets/lua.json @@ -0,0 +1 @@ +{"newplugin":{"body":["return {"," {"," '${1:plugin}',"," },","}"],"prefix":"newplugin"}} \ No newline at end of file diff --git a/private_dot_config/nvim/snippets/package.json b/private_dot_config/nvim/snippets/package.json new file mode 100644 index 0000000..07abdd3 --- /dev/null +++ b/private_dot_config/nvim/snippets/package.json @@ -0,0 +1 @@ +{"description":"This package.json has been generated by nvim-scissors.","name":"my-snippets","contributes":{"snippets":[{"language":["lua"],"path":"./lua.json"}]}} \ No newline at end of file