我在 Linux Mint 13(使用 MATE)下运行 Vim 7.3,无法将文本保存到系统剪贴板。我在终端中运行 Vim,并使用 从终端复制文本CTRLINSERT。当我在 Vim 中选择文本时(使用鼠标或在可视模式下),CTRLINSERT不会复制任何文本。此外,当我右键单击时,复制将显示为灰色。此外,我无法通过使用 vim 命令拉到相应的寄存器来写入系统缓冲区。但是,我可以在插入模式下粘贴(使用SHIFTINSERT或右键单击粘贴)。我也可以使用相同的技术直接从终端复制文本,只是不能从 Vim 复制文本。
这是我的当前 ~/.vimrc。相关部分最有可能是set clipboard=autoselect,unnamed,exclude:cons\|linux
。如果我把它放在finish
我的 ~/.vimrc 的顶部,我也会遇到同样的问题,所以我认为这一行是错误的,但我试过了,set clipboard=unnamed
得到了同样的行为。
是否有其他配置文件影响 Vim 的行为?如何更改 ~/.vimrc 以允许我从 Vim 复制文本?
答案1
我认为您的复制问题是由于以下原因造成的:
mouse=a
在您的 .vimrc 中,每当您使用鼠标选择某些内容时,这会将您的 vim 设置为可视模式。出于某种疯狂的原因,在可视模式下不允许复制。您可以通过在选择文本时按住 shift 键来避免进入可视模式,从而允许您使用复制菜单。
或者你可以改为:
:set mouse=v
并且复制将再次起作用。
如果您希望它是永久的,请将其添加:set mouse=v
到您的文件中(如果它尚不存在,请创建)。~/.vimrc
~/.vimrc
答案2
sudo apt-get install vim-gtk
可能会为其他 Google 员工解决这个问题。
老式的终端式 vim 无法访问剪贴板,而剪贴板是 X windows 系统的一部分。安装后vim-gtk
vim 便具有修改和查看剪贴板所需的访问权限。
答案3
如果有人想知道的话,这只是gvim
关于 arch linux 的。另外,看看neovim
(和python-neovim
&&python2-neovim
以获得 You Complete Me 支持等)。
答案4
终端对 vim 选择一无所知,所以不要指望它能帮上忙。你需要针对 X(例如gvim -v
)构建 vim,然后从寄存器中拖出和放入+
。