启用set mouse=a后,在Vim内部复制的文本将不会粘贴到Vim外部。有人知道怎么解决这个问题吗?
在这里,用鼠标选择文本将打开可视模式,并禁用弹出菜单中的复制选项:
启用set mouse=a后,在Vim内部复制的文本将不会粘贴到Vim外部。有人知道怎么解决这个问题吗?
在这里,用鼠标选择文本将打开可视模式,并禁用弹出菜单中的复制选项:
当前回答
在OSX上使用fn而不是shift。
其他回答
在用键盘或鼠标进行可视选择后使用",+,y。无论如何,您都不应该使用终端的copy命令,因为它复制的是终端看到的内容,而不是实际的内容。下面是它的作用:
,+告诉Vim使用名为+的寄存器进行下一次删除、删除或放入操作。命名为+的寄存器是一个特殊寄存器,它是X11剪贴板寄存器。(在其他系统上,你会用*来代替,我想,看:help clipboard和:help x11-selection) y是yank命令,它告诉Vim将选择放入前面命名的寄存器中。
你可以这样映射它:
:vmap <C-C> "+y
然后用鼠标高亮显示,然后按Control-C复制。
该特性仅在使用+xterm_clipboard选项编译Vim时有效。运行vim——version查看是否存在。
在OSX上使用fn而不是shift。
另一个OSX-Mac选项是取消勾选View->允许鼠标报告(或按⌘- r切换它)。这允许你在鼠标交互和鼠标选择之间切换,这在选择和复制/粘贴一些位时可能很有用,因为你不需要按住修改键来做这件事。
有行号的多行注意事项:
我通常启用行号,所以如果你选择多行,这也会复制行号。如果你想复制多条没有行号的行,使用:set nonu禁用这些行号,然后你可以:set nu在复制完成后重新启用它们。
set set mouse=a在vi中,使用MobaXterm,在服务器上安装vm -gtk3后,用鼠标拖动和Ctrl + Insert工作,但似乎只适用于MobaXterm
安装vim-gtk3后,vi会链接到它
lala@kubu:~$ sudo apt install gvim
[sudo] password for lala:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package gvim is a virtual package provided by:
vim-gtk3 2:8.2.2434-3ubuntu3.2
vim-athena 2:8.2.2434-3ubuntu3.2
You should explicitly select one to install.
E: Package 'gvim' has no installation candidate
lala@kubu:~$ which vi
/usr/bin/vi
lala@kubu:~$ file /usr/bin/vi
/usr/bin/vi: symbolic link to /etc/alternatives/vi
lala@kubu:~$ file /etc/alternatives/vi
/etc/alternatives/vi: symbolic link to /usr/bin/vim.gtk3
lala@kubu:~$
有一个很好的变通方法值得补充:
可以使用GPM守护进程,这是一个用于虚拟控制台的剪切和粘贴实用程序和鼠标服务器。它将提供跨所有虚拟控制台的功能!
复制粘贴操作可以通过<CTRL-C>/<CTRL-V>完成。
安装GPM
GPM的MAN页