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 (设置不要为 a 就可以使用标准系统的选取、复制模式)
相关说明
*'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.