diff options
feat: add `yanky.nvim`
Diffstat (limited to '')
-rw-r--r-- | flake.nix | 5 | ||||
-rw-r--r-- | lua/config/options.lua | 4 | ||||
-rw-r--r-- | lua/config/plugins/extra.lua | 31 |
3 files changed, 35 insertions, 5 deletions
@@ -241,7 +241,10 @@ todo-comments-nvim ]; - extra = [ which-key-nvim ]; + extra = [ + yanky-nvim + which-key-nvim + ]; }; }; diff --git a/lua/config/options.lua b/lua/config/options.lua index cf30af5..5a7be5d 100644 --- a/lua/config/options.lua +++ b/lua/config/options.lua @@ -59,7 +59,3 @@ map("n", "N", "Nzzzv", { desc = "Previous Search Result" }) -- Reset search highlight on ESC map("n", "<Esc>", "<cmd>nohlsearch<CR>", { desc = "Reset search highlight" }) - --- Copy and paste to/from clipboard -map("n", "<leader>y", [["+y]], { desc = "Copy to clipboard" }) -map("n", "<leader>p", [["+p]], { desc = "Paste from clipboard" }) diff --git a/lua/config/plugins/extra.lua b/lua/config/plugins/extra.lua index aba060b..4bbc381 100644 --- a/lua/config/plugins/extra.lua +++ b/lua/config/plugins/extra.lua @@ -1,5 +1,36 @@ return { { + "yanky.nvim", + event = "DeferredUIEnter", + after = function(_) + require("yanky").setup({ + highlight = { timer = 150 }, + system_clipboard = { + sync_with_ring = true, + }, + }) + end, + keys = { + { "y", "<Plug>(YankyYank)", mode = { "n", "x" }, desc = "Yank Text" }, + { "p", "<Plug>(YankyPutAfter)", mode = { "n", "x" }, desc = "Put Text After Cursor" }, + { "P", "<Plug>(YankyPutBefore)", mode = { "n", "x" }, desc = "Put Text Before Cursor" }, + { "gp", "<Plug>(YankyGPutAfter)", mode = { "n", "x" }, desc = "Put Text After Selection" }, + { "gP", "<Plug>(YankyGPutBefore)", mode = { "n", "x" }, desc = "Put Text Before Selection" }, + { "[y", "<Plug>(YankyCycleForward)", desc = "Cycle Forward Through Yank History" }, + { "]y", "<Plug>(YankyCycleBackward)", desc = "Cycle Backward Through Yank History" }, + { "]p", "<Plug>(YankyPutIndentAfterLinewise)", desc = "Put Indented After Cursor (Linewise)" }, + { "[p", "<Plug>(YankyPutIndentBeforeLinewise)", desc = "Put Indented Before Cursor (Linewise)" }, + { "]P", "<Plug>(YankyPutIndentAfterLinewise)", desc = "Put Indented After Cursor (Linewise)" }, + { "[P", "<Plug>(YankyPutIndentBeforeLinewise)", desc = "Put Indented Before Cursor (Linewise)" }, + { ">p", "<Plug>(YankyPutIndentAfterShiftRight)", desc = "Put and Indent Right" }, + { "<p", "<Plug>(YankyPutIndentAfterShiftLeft)", desc = "Put and Indent Left" }, + { ">P", "<Plug>(YankyPutIndentBeforeShiftRight)", desc = "Put Before and Indent Right" }, + { "<P", "<Plug>(YankyPutIndentBeforeShiftLeft)", desc = "Put Before and Indent Left" }, + { "=p", "<Plug>(YankyPutAfterFilter)", desc = "Put After Applying a Filter" }, + { "=P", "<Plug>(YankyPutBeforeFilter)", desc = "Put Before Applying a Filter" }, + }, + }, + { "which-key.nvim", event = "DeferredUIEnter", after = function(_) |