2013-12-21 29 views
-1

按照該網站https://github.com/tpope/vim-repeat,使repeat.vim的程序如下:如果我想將repeat.vim和surround.vim一起使用,應該重複#set函數的第一個參數是什麼?

silent! call repeat#set("\<Plug\>MyWonderfulMap", v:count)

但我不明白的重複#集函數的第一個參數。你能用一個例子來解釋嗎?如果我想配置repeat.vim和surround.vim,那麼我應該在.vimrc中包含什麼指令?該指令如何改變unimpaired.vim?

回答

2

如果你想讓環繞聲得到repeat的支持,你不需要在vimrc中做太多的工作,如果你檢查surround的代碼,就會在那裏調用重複函數。

而對於功能的解釋,你可以在你寫的問題鏈接中找到它。在這裏閱讀:

https://github.com/tpope/vim-repeat/blob/master/autoload/repeat.vim#L19

+0

我應該將以下逐字粘貼到.vimrc中嗎?silent!call repeat #setreg(「\ MappingToRepeatCommand」,v:register) –

1

你顯然有多大repeat.vim作品的一種錯誤的認識。您不需要撥打repeat#set()一次(例如在您的~/.vimrc);相反,必須修改映射本身,以在映射的正常工作完成後調用repeat#set()

repeat.vim插件的工作方式是每個映射必須告訴它:嗨,我是<Plug>MyMapping,我剛剛執行完畢。 repeat.vim插件掛接到.命令中,並且如果最後一個命令來自這樣的映射,它將被重新執行=重複。

因此,repeat.vim支持需要插件的合作(它定義了一些映射);無論是插件還是插件,或者它沒有(然後你必須要求插件的作者提供repeat.vim支持,或使用像我的repeatableMapping plugin這樣的外部插件來事後修改映射。但是,正如肯特已經說過的,環繞聲插件來自repeat.vim的作者,並且它已經具有內置支持。

+0

感謝您的澄清,接下來我想下面的插件並不需要明確的repeat.vim:surround,speeddating,abolish,unimpaired和commentary。你能解釋一下「「代表?你能給個例子嗎?如果你能提供一個例子並解釋映射的每個部分,我認爲這將是一個很大的幫助。 –

+0

''只是一個永遠不會來自鍵盤的特殊前綴(即由您直接鍵入),因此它可以用於抽象。在':help '上查找更多Vim的幫助 –

相關問題