diff --git a/term/.config/nvim/init.lua b/term/.config/nvim/init.lua index 6b9eacf..f2ec60b 100644 --- a/term/.config/nvim/init.lua +++ b/term/.config/nvim/init.lua @@ -80,6 +80,8 @@ vim.keymap.set("n", "", "l", { desc = "Navigate right" }) -- Split windows vim.keymap.set("n", "sh", ":split", { desc = "Split window horizontally" }) vim.keymap.set("n", "sv", ":vsplit", { desc = "Split window vertically" }) +vim.keymap.set("n", "\"", ":split", { desc = "Split window horizontally" }) +vim.keymap.set("n", "%", ":vsplit", { desc = "Split window vertically" }) -- Resize windows vim.keymap.set("n", "", ":resize -2", { desc = "Resize window up" }) @@ -102,3 +104,24 @@ vim.keymap.set("n", "zo", "zo", { desc = "Open fold under cursor" }) vim.keymap.set("n", "zc", "zc", { desc = "Close fold under cursor" }) vim.keymap.set("n", "zO", "zO", { desc = "Open all folds under cursor" }) vim.keymap.set("n", "zC", "zC", { desc = "Close all folds under cursor" }) + +-- Path of current file to clipboard +vim.keymap.set("n", "yp", ":let @+=expand('%:p')", { desc = "Absolute path of current file to clipboard" }) +vim.keymap.set("n", "yr", ":let @+=expand('%:.')", { desc = "Relative path of current file to clipboard" }) +vim.keymap.set("n", "cf", ":let @+=expand('%:t')", { desc = "Current filename to clipboard" }) +vim.keymap.set({'n','v'}, 'ya', function() + local fname = vim.fn.expand('%:.') + local lines = (vim.fn.mode() == 'v' or vim.fn.mode() == 'V') + and (tostring(math.min(vim.fn.line("'<"), vim.fn.line("'>")))..'..'..tostring(math.max(vim.fn.line("'<"), vim.fn.line("'>")))) + or tostring(vim.fn.line('.')) + local result = fname..':'..lines + vim.fn.setreg('+', result) + print('Copied: '..result) +end, {desc = 'Copy file path and line(s) to clipboard'}) + +-- clear search highlighting +vim.keymap.set("n", "ch", ":noh", { desc = "clear search highlighting" }) + +-- toggle word wrap +vim.keymap.set("n", "w", ":set wrap!", { desc = "toggle word wrap" }) +