From e68ae5fe812b870acd7792776ab111cf52fb766f Mon Sep 17 00:00:00 2001 From: Hsieh Chin Fan Date: Sat, 29 Jun 2024 00:55:46 +0800 Subject: Update --- vim/init/keymaps.vim | 22 ++++++++++++++++++++++ vim/lua/mappings.lua | 1 - 2 files changed, 22 insertions(+), 1 deletion(-) (limited to 'vim') diff --git a/vim/init/keymaps.vim b/vim/init/keymaps.vim index 3c3ebc8..68103a1 100644 --- a/vim/init/keymaps.vim +++ b/vim/init/keymaps.vim @@ -11,6 +11,7 @@ " - MANAGE_BUFFERS " - SURROURD_WITH_CHAR " - REDIRECTION_WITH_BUFFER +" - QUICK_SUBSTITUTE " - 终端支持 " - 编译运行 " - 符号搜索 @@ -262,6 +263,7 @@ noremap fm :set foldmethod= let g:lastbuffer = 1 au BufLeave * let g:lastbuffer = bufnr() + "---------------------------------------------------------------------- " SURROURD_WITH_CHAR "---------------------------------------------------------------------- @@ -305,6 +307,26 @@ endfunction command! -nargs=1 -complete=command Redir silent call Redir() nnoremap rr :Redir + +"---------------------------------------------------------------------- +" QUICK_SUBSTITUTE +"---------------------------------------------------------------------- +function! IsSubstituteTextSelected() + execute "norm \" + " Get position of the first/last char + echo col("'<") col("'>") len(getline('.'))+1 + return col("'<") != 1 || col("'>") != len(getline('.')) + 1 +endfunction +function! SelectAreaOrDoSubstitute() + if IsSubstituteTextSelected() + call feedkeys('gv"aygv*NVL') + else + call feedkeys("gv:s//\a/g\\") + endif +endfunction +vnoremap call SelectAreaOrDoSubstitute() + + "---------------------------------------------------------------------- " Markdown items (temproray solution) "---------------------------------------------------------------------- diff --git a/vim/lua/mappings.lua b/vim/lua/mappings.lua index 3451ddf..d3cfda0 100644 --- a/vim/lua/mappings.lua +++ b/vim/lua/mappings.lua @@ -25,7 +25,6 @@ vim.keymap.set("n", "ds", vim.diagnostic.setloclist, { desc = "lsp diagn -- nvimtree vim.keymap.set("n", "", "NvimTreeToggle", { desc = "nvimtree toggle window" }) -vim.keymap.set("n", "nf", "NvimTreeFocus", { desc = "nvimtree focus window" }) -- telescope vim.keymap.set("n", "f", "Telescope oldfiles", { desc = "telescope find oldfiles" }) -- cgit v1.2.3-70-g09d2