2016-10-06 51 views
0

在vim中自動執行替換命令的好方法是什麼?在vim中自動替換表達式

假設我有這樣的:

s/foo/bar/g 

除了要複雜得多,我想不必鍵入替換命令 上選擇範圍運行呢?

如何保存替代命令並給它起一個簡短的名稱以便我可以調用它?

+0

更換您也可以考慮自動命令 – SibiCoder

回答

1

您可以創建一個支持範圍的函數,並在函數中進行替換。還要創建一個自定義命令來調用帶範圍的函數。

但是我認爲最簡單的方法,是建立在你的vimrc文件的abbrev:當你選擇的線路,或者在命令行

cab RR s/foo/bar/g 

因此,給範圍(如3,5 or % ...)按RR<space>s/foo/bar/g會自動填充。你可以做一些調整,或者只是按下讓它走。

1

你可以試試下面按空格鍵兩次在一個特定的詞會自動填充替換命令字光標下,等待你的只是把你的情況下進入更新換代名

" super quick search and replace 
nnoremap <Space><Space> :'{,'}s/\<<C-r>=expand('<cword>')<CR>\>/ 
nnoremap <Space>%  :%s/\<<C-r>=expand('<cword>')<CR>\>/ 

映射光標放在foo字上並按空格鍵兩次。 您應該看到

:'{,'}s/\<foo\>/ 

然後鍵入單詞吧

'{,'}s/\<foo\>/bar 

FOO的所有出現將酒吧