2009-01-09 121 views
96

我在Windows中使用VIM。問題是我想用CtrlV作爲一種視覺模式。但是,這個鍵與Windows粘貼有衝突。如何將此鍵重新設置爲VIM可視模式而不是粘貼。我更喜歡在我的_vimrc配置文件中設置它。VIM Ctrl-V與Windows粘貼衝突

回答

124

the VIM documentation

由於CTRLV用於粘貼,你不能用它來啓動可視列塊 選擇。您可以使用CTRLQ。您還可以使用CTRLQ在插入 模式和命令行模式來獲得CTRLV老意義。但是,CTRLQ 在用於控制流程時不適用於終端。

+1

+1救了我一些時間 – 2010-05-12 23:52:08

+1

我喜歡這個比_vimrc更好地擺弄。它可以立即生效,並且由於我未來不太可能在串行終端上,所以Ctrl-S/Ctrl-Q流量控制是不成問題的。 – 2010-07-23 20:26:20

7

我不確定你可以做些什麼。你可以使用CtrlQ

20

如果這條線在你的_vimrc麻煩你:

behave mswin 

然後刪除該行。

39

檢查你的_vimrc文件,看看它是否源頭mswin.vim。該腳本將^ v映射到粘貼。您可以刪除_vimrc文件中的該行或直接在mswin.vim上禁用映射命令。

做一個:幫助更多的信息vim行爲。

4

jop的建議(在默認_vimrc文件中查找mswin.vim)和「Windows程序員」建議(擺脫「行爲mswin」行)的組合對我來說就像一個魅力。

(我的代表處是太低了投票起來或將它們組合起來 - 有人打掃一下我,或者我會回來一次,我的代表處是更高)

22

可視模式(和其他的東西)工作像Unix中一樣需要JOP和Windows程序員的建議。

在Windows上的GVim中,轉到編輯菜單,單擊啓動設置,並註釋掉特定於窗口的垃圾(使用vimrc註釋字符,這是一個雙引號)。 mswin.vim文件是指定ctrl-v覆蓋的地方,並且mswin選項的行爲使得箭頭鍵不會像您期望的那樣應用運動(它也會更改鼠標選擇行爲)。

"source $VIMRUNTIME/mswin.vim 
"behave mswin 

我喜歡在裏面加一個黑色的背景色彩方案一樣,所以它看起來更像是我在終端看到(因爲光的背景是在紙面上偉大的,但可怕的背光屏幕): colorscheme koehler

13

我喜歡同擊鍵無所不在,所以我用這個在我的.vimrc覆蓋mswin.vim:

if has('win32') 
    " Avoid mswin.vim making Ctrl-v act as paste 
    noremap <C-V> <C-V> 
endif