问题描述
我使用的是Ubuntu 12.04 Beta和Vim。我正在尝试使用Vim将文本文件的内容复制到Chrome浏览器。我已经尝试过+
,*
y
及其所有变体。我尝试了:set clipboard=unnamed
和:set clipboard=unnamedplus
。不工作我不尝试使用xclip或GVim或任何一种。我尝试使用xclip(在Ubuntu 12.04中不是标准软件包),但这也行不通,也需要太多努力。
如何将文本复制到剪贴板,然后粘贴到任何地方(例如Chrome)?
最佳方法
您的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中,因此请确保将它放在/usr之前的PATH中,并且将使用它而不是Ubuntu版本。
次佳方法
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
第三种方法
安装软件包vim-gnome
而不是vim
。它带有启用的clipboard
。
第四种方法
您也可以向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
复制并通过Ctrl
+ V
粘贴