summaryrefslogtreecommitdiff
path: root/nvim/init.lua
diff options
context:
space:
mode:
authorkkard2 <[email protected]>2024-12-28 11:32:58 +0100
committerkkard2 <[email protected]>2024-12-28 11:32:58 +0100
commitbd9c746f367dfa68ebc7dbd5ef6157e3fd247b90 (patch)
treed9c703360320e0b3f8beceeea3390ef8ca86b538 /nvim/init.lua
parenta7b27faa7a3ec2ec9fa2d1dcb4e6b7b5fb49b639 (diff)
this works better
Diffstat (limited to 'nvim/init.lua')
-rw-r--r--nvim/init.lua8
1 files changed, 7 insertions, 1 deletions
diff --git a/nvim/init.lua b/nvim/init.lua
index af18477..c0182b1 100644
--- a/nvim/init.lua
+++ b/nvim/init.lua
@@ -64,7 +64,13 @@ vim.keymap.set("v", ">", ">gv")
vim.keymap.set("v", "<", "<gv")
-- copy indent from line above
-local copy_indent_macro = "<Esc>0\"_d$?.<CR><cmd>noh<CR>0\"myw<C-o>0\"_d$\"mpa"
+local copy_indent_macro = "<Esc>0\"_D" -- clear current line
+ .. "?.<CR>" -- find first non-empty line above
+ .. "^\"yy0" -- copy indentation to y register
+ .. "<C-o>" -- return to original line
+ .. "\"yp" -- paste y register
+ .. "<cmd>noh<CR>" -- clear highlight
+ .. "A" -- enter insert mode
vim.keymap.set("i", "<S-Tab>", copy_indent_macro)
-- insert line break under cursor in normal mode
vim.keymap.set("n", "<C-j>", function()