Vim 8.0 於 Linux 的 CLI 環境,使用滑鼠選取文字的話,預設不是 Xwindow 的選取方式,而是 Vim 內部的選取方式(v),所以文字要複製沒辦法使用 Ctrl + c 等等複製到系統的記憶體。
- 註1:預設為 set mouse=a 的模式
- 註2:Debian stretch 目前安裝就是 Vim 8.0,就會遇到此情況
想要複製到系統的記憶體,可以使用下述兩種方式:
- 按住 Shift 後,在用滑鼠選取,可以使用 Ctrl + c 複製,或 此時用滑鼠中間就可以貼上。(再按一下 Shift 選取反白才會消失)
- :set mouse= 或 :set mouse=r 或 :set mouse=v (設定不要為 a 就可以使用標準系統的選取、複製模式)
相關說明
- configuration - Copy text out of vim with set mouse=a enabled
- clipboard - Copy-paste for vim is not working when mouse (:set mouse=a) is on?
- Vim documentation: options
*'mouse'* *E538* 'mouse' string (default "", "a" for GUI, MS-DOS and Win32) global {not in Vi} Enable the use of the mouse. Only works for certain terminals (xterm, MS-DOS, Win32 |win32-mouse|, QNX pterm, *BSD console with sysmouse and Linux console with gpm). For using the mouse in the GUI, see |gui-mouse|. The mouse can be enabled for different modes: n Normal mode v Visual mode i Insert mode c Command-line mode h all previous modes when editing a help file a all previous modes r for |hit-enter| and |more-prompt| prompt Normally you would enable the mouse in all four modes with: :set mouse=a When the mouse is not enabled, the GUI will still use the mouse for modeless selection. This doesn't move the text cursor. See |mouse-using|. Also see |'clipboard'|. Note: When enabling the mouse in a terminal, copy/paste will use the "* register if there is access to an X-server. The xterm handling of the mouse buttons can still be used by keeping the shift key pressed. Also see the 'clipboard' option.