我使用的是Ubuntu 12.04 Beta和Vim。我正在尝试使用Vim将文本文件的内容复制到Chrome浏览器。
我尝试了+
,*
y
及其所有变体。我尝试过:set clipboard=unnamed
和:set clipboard=unnamedplus
。不工作。
我不是试图使用xclip,或GVim或其中任何一种。我尝试使用xclip(不是Ubuntu 12.04中的标准软件包),但这也不起作用,也是太费力了。
如何将文本复制到剪贴板然后粘贴到任何位置,例如Chrome?
答案 0 :(得分: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版本。< / p>
答案 1 :(得分:27)
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
答案 2 :(得分:8)
安装包vim-gnome
而不是vim
。它随附clipboard
。
答案 3 :(得分: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 复制并通过 Ctrl + V
答案 4 :(得分:2)
如果按照@DrAl的说明运行configure
,但仍然无法编译GUI,您会在./configure
checking for X... (cached) no
然后,您可能必须删除configure
创建的缓存文件。
find . -name config.cache -delete
然后重新运行configure
和make
并再次检查src/vim --version
- 它应该显示现在包含gui。
答案 5 :(得分:2)
答案 6 :(得分:0)
我会使用文件URL在浏览器中打开文件:
file:///home/dave/some-file
不是超级优雅但它有效。
答案 7 :(得分:0)
我真的很喜欢这套快捷方式:
UPDATE
这是一种更简单的方法,然后每次都输入“*和”+。