32

我正在使用附带的 Ubuntu 12.04 Beta 和 Vim。我正在尝试使用 Vim 将文本文件的内容复制到 Chrome 浏览器。我已经尝试过+* y以及它的所有变体。我已经尝试:set clipboard=unnamed:set clipboard=unnamedplus. 不工作。我不想使用 xclip、GVim 或任何其他。我尝试使用 xclip(不是 Ubuntu 12.04 中的标准包),但这也不起作用,也太费劲了。

如何将文本复制到剪贴板,然后粘贴到任何地方,例如 Chrome?

4

8 回答 8

29

你的 Vim 版本不支持 X,这是访问剪贴板所必需的。默认情况下,Ubuntu 提供了几个版本的 vim,只有 GUI 变体支持剪贴板访问。我总是从源代码重新编译 vim,以便单个 vim(带有 gvim 的符号链接等)支持所需的一切(包括:gui从命令行切换到 GUI 版本)。这真的很容易做到:

# Get the compile-dependencies of vim
sudo apt-get build-dep vim
# If you haven't got mercurial, get it
sudo apt-get install mercurial
# Get the source
hg clone https://vim.googlecode.com/hg/ vim_source
# Compile it
cd vim_source
./configure \
    --enable-perlinterp=dynamic \
    --enable-pythoninterp=dynamic \
    --enable-rubyinterp=dynamic \
    --enable-cscope \
    --enable-gui=auto \
    --enable-gtk2-check \
    --enable-gnome-check \
    --with-features=huge \
    --with-x \
    --with-compiledby="Your Name <youremail@domain.com>" \
    --with-python-config-dir=/usr/lib/python2.7/config
make && sudo make install

这会将它安装在 中/usr/local,因此请确保它在您的PATH 之前 /usr版本中,并且它将被使用而不是 Ubuntu 版本。

于 2012-04-11T10:13:14.697 回答
29

的输出vim --version应显示如下:

Huge version with GTK2-GNOME GUI.  Features included (+) or not (-):

在输出的更下方,您应该会看到类似 +Xll 的内容:

+vreplace +wildignore +wildmenu +windows +writebackup +X11 -xfontset +xim 
+xsmp_interact +xterm_clipboard -xterm_save 

这意味着您的控制台 vim 可以从 X11 剪贴板复制/粘贴。

尝试apt-get install vim-gtk

于 2012-04-11T10:25:55.883 回答
8

安装包vim-gnome而不是vim. 它带有clipboard启用。

于 2012-11-27T11:51:39.587 回答
5

您还可以在 vimrc 中添加快捷方式

# Copy and paste
vmap <C-c> "+yi
vmap <C-x> "+c
vmap <C-v> c<ESC>"+p
imap <C-v> <ESC>"+pa

它将允许您通过 + 复制和通过Ctrl+C粘贴CtrlV

于 2013-05-16T08:46:40.533 回答
2

如果您configure按照@DrAl 的说明运行,但仍然无法编译 GUI,并且您在输出中看到了这一点./configure

checking for X... (cached) no

然后您可能必须删除configure创建的缓存文件。

find . -name config.cache -delete

然后重新运行configure并再次make检查src/vim --version- 它应该显示现在包含 gui。

于 2013-10-17T19:06:48.783 回答
2

你能行的; 只需管道到 xclip。

gg
V
G
:'<,'>w !xclip

从这里:在 vim 中使用 xclip,拉到剪贴板

于 2015-01-09T16:20:52.443 回答
0

我会使用文件 URL 在浏览器中打开文件:

file:///home/dave/some-file

不是超级优雅,但它有效。

于 2013-05-16T03:16:17.920 回答
0

我真的很喜欢这组快捷方式:

" Add shortcut for clipboard registers
noremap <leader>p "*p
noremap <leader>y "+y
noremap <leader>d "+d

这只是一种更简单的方法,然后每次都输入“*”和“+”。

于 2017-03-24T14:11:11.177 回答