2012-10-03 126 views
2

剛安裝了surround.vim插件,並且某些命令無法按預期工作。我使用this question爲例某些Surround.vim命令不起作用

This is a lo*ng line and I want to highlight two words 

一個ys2aw"應上述更改爲

This is a "long line" and I want to highlight two words 

但對我來說它改變

This is a g and I want to highlight two words 

其他時候,它並不會影響在所有!我認爲這與被抽取的註冊表中的內容有關。

當我打字ys,在右下方我可以看到,它迅速變成[email protected]

最後,我敢肯定沒有其他插件干擾是通過發出verbose map yss命令:

n yss   <Plug>Yssurround 
    Last set from ~/.vim/plugin/surround.vim                              
n ys   <Plug>Ysurround 
    Last set from ~/.vim/plugin/surround.vim 

有人知道這裏出了什麼問題嗎?

+0

對不起,我不能重現錯誤此期望的行爲。你的光標在哪裏?在「o」或「n」上? – romainl

+0

@romainl我剛剛嘗試過「o」。如果我把它放到vim中,通過「o」併發出命令「ys2aw」'我得到:'這是一個「這是一個」長線「,我想突出兩個單詞」,我想突出顯示兩個字 ' – puk

+0

@romainl如果我撤消並再次發出該命令,我會得到相同的行爲,但在粘貼的內部引號之前和之後都有一個新行,如果我再次撤銷並重做,則沒有任何內容會改變(儘管文件被列爲正在修改) – puk

回答

1

我理解了它,使它更容易複製/粘貼VIM之間的,那麼,一切,我在我的.vimrc文件以下規則:

set clipboard=unnamedplus 

這使得surround.vim出現錯誤的行爲。相反,我所做的是以下行添加到我的.vimrc文件,讓我開啓/關閉

nnoremap <leader>hf :set clipboard=unnamedplus<CR> 
nnoremap <leader>fh :set clipboard-=unnamedplus<CR> 

現在surround.vim工作正常

+0

廢話我很抱歉。!。我很久以前經歷過類似的問題,解決它完全一樣,我應該記住 – romainl

+0

請將此情況報告給插件的作者(即運一個GitHub問題);許多插件會暫時重置「剪貼板」以避免這種干擾。 –

+0

@IngoKarkat看來這個問題已經被報道 – puk