web-dev-qa-db-fra.com

Coupure dans le presse-papiers du système de Vim sur Ubuntu

J'utilise Ubuntu 12.04 Beta et Vim qui l'accompagne. J'essaie d'utiliser Vim pour copier le contenu d'un fichier texte dans un navigateur Chrome. J'ai essayé +, *y et toutes ses variantes. J'ai essayé de :set clipboard=unnamed et :set clipboard=unnamedplus. Ne fonctionne pas. Je n'essaie pas d'utiliser xclip, ni GVim, ni aucun de ces outils. J'ai essayé avec xclip (pas un paquet standard dans Ubuntu 12.04), mais cela aussi ne fonctionne pas, et trop d'efforts.

Comment copier le texte dans le Presse-papiers, puis le coller n'importe où, comme dans Chrome?

30
Gattoo

Votre version de Vim ne prend pas en charge X, qui est nécessaire pour accéder au Presse-papiers. Par défaut, Ubuntu fournit plusieurs versions de vim et seule la variante de l'interface graphique prend en charge l'accès au Presse-papiers. Je recompile toujours vim à partir des sources de sorte qu'un seul vim (avec des liens symboliques pour gvim, etc.) prenne en charge tout le nécessaire (y compris :gui pour passer de la ligne de commande à la version graphique). C'est vraiment très facile à faire:

# 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 <[email protected]>" \
    --with-python-config-dir=/usr/lib/python2.7/config
make && Sudo make install

Cela l'installera dans /usr/local, alors assurez-vous que c'est dans votre PATH before /usr et il sera utilisé à la place des versions d'Ubuntu.

29
DrAl

La sortie de vim --version devrait afficher quelque chose comme ceci:

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

et plus bas dans la sortie, vous devriez voir des choses comme + Xll:

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

Cela signifie que votre console vim peut copier/coller dans le presse-papiers de X11.

Essayez apt-get install vim-gtk

27
sashang

Installez le package vim-gnome au lieu de vim. clipboard est activé.

8
dan-klasson

Mžete také přidat zástupce do svého vimrc

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

To vám umožní kopírovat podleCtrl+Cun podle VložitCtrl+V

5
lis2

Si vous avez exécuté configure comme expliqué par @DrAl mais que vous ne pouvez toujours pas obtenir l'interface graphique compilée et que vous le voyez dans la sortie de votre ./configure

checking for X... (cached) no

Ensuite, vous devrez peut-être supprimer le fichier de cache créé par configure.

find . -name config.cache -delete

Ensuite, relancez configure et make et vérifiez à nouveau src/vim --version - cela devrait indiquer que l'interface graphique est maintenant incluse.

2
Cory Klein

Tu peux le faire; juste pipe à xclip.

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

à partir d'ici: dans vim avec xclip, yank au presse-papiers

2
ati

J'aime beaucoup cet ensemble de raccourcis:

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

C'est juste un moyen plus facile, tapez "* et" + à chaque fois.

0
Caio Lopes

Je voudrais ouvrir le fichier dans le navigateur en utilisant une URL de fichier:

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

Pas super élégant mais ça marche.

0
David Kennedy