VIM: gvim 使用 Ctrl+V

vim 要做垂直選取的動作,就要使用 "Ctrl + v",但是 gvim 會遇到一個問題, 就是使用 "Ctrl + v" 時,會變成貼上。

後來經過高人指點,gvim 是在 Windows 中另外再 maping 那些快速鍵的(Gnome 中應該也是一樣意思,只是改的檔案應該不同)。

修改 vim/vim63/mswin.vim, 修改如下:

" CTRL-V and SHIFT-Insert are Paste
map <C-V> "+gP

改成(把 map <C-V> 刪掉就對了).

" CTRL-V and SHIFT-Insert are Paste
"map <C-V> "+gP

就可以用 Ctrl + v 了.

  •  註:vim .gvimrc 預設會有下述兩行,由下述兩行可以找到 mswin.vim 的位置
    source $VIMRUNTIME/mswin.vim
    behave mswin
  • 不想改mswin.vim 的話,也可以直接在 .gvimrc 上述兩行的下方,直接加入取消 C-V 的 mapping 即可,如下範例:
    source $VIMRUNTIME/mswin.vim
    behave mswin
    
    unmap <C-V>

關於 Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
本篇發表於 My_Note-App-Setting。將永久鏈結加入書籤。

VIM: gvim 使用 Ctrl+V 有 10 則回應

  1. crhuang 說道:

    可以用 取代,試著在 vim 裡面下 :h ctrl-v-alternative

  2. Tsung 說道:

    感謝您的指導, 原來在 Windows 下用, 應該要用 Ctrl+Q.
    謝謝您... m(_ _)m

  3. bamanzi 說道:

    每次都不??。好象要用Ctl+Q
    本?Ctl+V在?入模式下??是escape下一次按?的意思吧

  4. Hank 說道:

    終於發現正確的方式,感謝!
    不好意思,
    另外請教一個 vim 顯示 russian 文字的問題,
    因為檔案已存成 UTF-8 格式,
    照理說應該要能顯示各種文字,
    fileencoding
    termencoding
    encoding
    以上三者都已加入utf-8的選項了,
    可是仍無法顯示 russian, ukrainian 之類的文字,
    請問是否有哪位大大知道該如何設定呢?
    ex.
    Нужно провести сканирование каналов. Начать его сейчас?

  5. Tsung 說道:

    encoding (enc):設定 vim 內部要以何種編碼表示
    termencoding (tenc):實際輸出到終端機的畫面
    fileencoding (fenc):文件實際的編碼
    如果這三個都加了, 那.. 可能是 terminal 無法顯示那個字型?
    vim /etc/locale.gen 去開啟? 然後執行 locale-gen 的動作看看?

  6. 凍仁翔 說道:

    感謝前輩的分享,凍仁現在是直接在 C:\Users\jonny\_vimrc 內補上 unmap ,這樣一來以後就不用改兩個地方哩 😛

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料