Comment faire coller Vim à partir (et copier dans) le presse-papiers du système?

772

Contrairement à d'autres éditeurs, vim stocke le texte copié dans son propre presse-papiers. Il est donc très difficile pour moi de copier du texte à partir d'une page Web et de le coller dans le fichier de travail actuel. Il se trouve que je dois ouvrir gedit ou le taper manuellement.

Puis-je faire de la pâte vim depuis et vers le presse-papiers du système?

Santosh Kumar
la source
7
Copie
BuZZ-dEE
7
Copier "+ y Coller" + p Fonctionne exactement comme yank et coller sauf que vous spécifiez le registre avant.
Banjocat
2
Pour utiliser les commandes suivantes, assurez-vous que vous avez fait sudo apt-get install vim-gnome ce qui ajoutera cette fonctionnalité à vim intégré d'utiliser le presse-papiers du système.
Harnirvair Singh
2
@Harnirvair Pour de nombreux ensembles de lecteurs ici, vim-gnomeest probablement exagéré ou simplement indisponible dans leur système d'exploitation / distribution, alors que je soupçonne vim-gtket de préférence vim-gtk3est plus susceptible d'exister et de tirer moins de dépendances, tout en offrant une intégration du presse-papiers (au moins pour ceux qui sont encore sur X11; Je ne sais pas comment tout cela interagit avec Wayland).
underscore_d
3
Par défaut sur Fedora - il n'y a pas d'accès au presse-papiers (vous avez besoin de gvim), superuser.com/questions/194747/…
icc97

Réponses:

881

Les registres "*et "+sont destinés au presse-papiers du système ( :help registers). Selon votre système, ils peuvent faire différentes choses. Par exemple, sur les systèmes qui n'utilisent pas X11 comme OSX ou Windows, le "*registre est utilisé pour lire et écrire dans le presse-papiers du système. Sur les systèmes X11, les deux registres peuvent être utilisés. Voir :help x11-selectionpour plus de détails, mais fondamentalement, "*c'est analogue à la sélection PRIMAIRE de X11 (qui copie généralement les choses que vous sélectionnez avec la souris et colle avec le bouton central de la souris) et "+est analogue à la sélection CLIPBOARD de X11 (qui est le presse-papiers proprement dit).

Si tout cela vous dépasse, essayez d'utiliser "*yyou "+yyde copier une ligne dans le presse-papiers de votre système. En supposant que vous disposez des options de compilation appropriées, l'une ou l'autre devrait fonctionner. Vous voudrez peut-être remapper cela à quelque chose de plus pratique pour vous. Par exemple, vous pouvez mettre vnoremap <C-c> "*yvotre ~ / .vimrc pour pouvoir sélectionner visuellement et appuyer sur Ctrl+ cpour accéder au presse-papiers de votre système.

Sachez que copier / coller à partir du presse - papiers du système ne fonctionnera pas si :echo has('clipboard')renvoie 0. Dans ce cas, vim n'est pas compilé avec la +clipboardfonctionnalité et vous devrez installer une version différente ou la recompiler. Certaines distributions Linux fournissent une installation minimale de vim par défaut, mais généralement si vous installez le package vim-gtkouvim-gtk3 vous pouvez obtenir les fonctionnalités supplémentaires.

Vous voudrez peut-être aussi jeter un œil à l' 'clipboard'option décrite à :help cb. Dans ce cas, vous pouvez :set clipboard=unnamedou :set clipboard=unnamedpluspour que toutes les opérations de tirage / suppression soient automatiquement copiées dans le presse-papiers du système. Cela peut être un inconvénient dans certains cas où vous stockez quelque chose d'autre dans le presse-papiers car il le remplacera.

Pour coller, vous pouvez utiliser "+pou "*p(encore une fois, selon votre système et / ou la sélection souhaitée) ou vous pouvez les mapper à autre chose. Je les tape explicitement, mais je me retrouve souvent en mode insertion. Si vous êtes en mode insertion, vous pouvez toujours les coller avec une indentation appropriée en utilisant <C-r><C-p>*ou <C-r><C-p>+. Tu vois :help i_CTRL-R_CTRL-P.

Il convient également de mentionner l' pasteoption de vim ( :help paste). Cela place vim dans un "mode de collage" spécial qui désactive plusieurs autres options, vous permettant de coller facilement dans vim à l'aide de votre émulateur de terminal ou du raccourci de collage familier du multiplexeur. Tapez simplement :set pastepour l'activer, collez votre contenu, puis tapez :set nopastepour le désactiver. Alternativement, vous pouvez utiliser l' pastetoggleoption pour définir un code clé qui bascule le mode ( :help pastetoggle). Je recommande d'utiliser des registres au lieu de ces options, mais s'ils sont encore trop effrayants, cela peut être une solution de contournement pratique pendant que vous perfectionnez vos côtelettes Vim.

Voir :help clipboardpour plus d'informations.

Conner
la source
104
C'est très instructif, mais pouvez-vous résumer les frappes à effectuer pour coller à partir du presse-papiers du système ... par exemple, que fait-on avec "*p? Dois-je appuyer sur Shift- ', puis Shift-8, puis p, etc.?
T. Brian Jones
11
Oui, tapez ces trois caractères dans l'ordre. De nombreuses commandes dans vim utilisent ce qu'on appelle le "mode opérateur en attente" où une touche est enfoncée, puis vim attend plus de touches. Prenez ddpar exemple. Le premier dentre en mode opérateur en attente, puis le second dtermine la commande et supprime la ligne. Si vous tapez dG, cependant, le Gfait supprimer jusqu'à la fin du fichier au lieu de simplement supprimer la ligne. Les registres utilisent ce même principal pour permettre à diverses commandes de les utiliser.
Conner
4
Hélas! Si je n'avais vu ce post qu'avant aujourd'hui! C'est tout ce que je voulais savoir sur le copier-coller du presse-papiers du système. Le "<Cr> <Cp> * ou <Cr> <Cp> +" est de l'or pur.
Keith Pinson
56
Un accent: vous devez installer le vim-gtkpaquet (sous Debian, au moins), pour obtenir vim qui est compilé avec +xterm_clipboard. Cela m'a pris 40 minutes pour le découvrir, et seulement quelques secondes sudo apt-get install vim-gtk.
Dominykas Mostauskis le
3
@DominykasMostauskis vim-gnomefonctionne également et a +xterm_clipboardactivé.
Chev
155

Vous pouvez copier dans vim par le raccourci de gnome-terminal pour coller. Faites le fichier en mode insertion et utilisez

Ctrl+ Shift+ v.

N'oubliez pas au préalable

 :set paste 

pour éviter de jouer avec l'indentation.

neel
la source
20
ce gâchis avec indentation s'il y a plusieurs lignes comme python pour boucle
Moj
11
Utilisez une bascule de collage pour le mode d'insertion. Par exemple set pastetoggle = <F2> Puis en mode insertion, appuyez sur <F2> puis insérez votre code python.
Jan Weitz
Oui, copiez avec Ctrl + Shift + c et collez-le dans un autre fichier
neel
1
si les tabulations / espaces blancs, les eols etc. sont affichés comme un caractère visible (via l'option listchars), alors ces caractères de substitution seront copiés à la place des caractères cachés.
user907860
2
Cela devrait être la réponse choisie étant donné sa réponse concise
Aidin
41

Linux

Sur mon système Linux, les registres +et *correspondent à une sélection X11, qui peut être collée avec le bouton central de la souris. Lorsque :set clipboard=unnamedet :set clipboard=unnamedplussont utilisés, les registres sont mappés au presse-papiers et peuvent être collés avec CTRL-V.

Les détails semblent être quelque peu dépendants de la configuration et du système, donc votre kilométrage variera certainement. Cela devrait certainement vous faire pointer dans la bonne direction.

Voir également

http://vim.wikia.com/wiki/Accessing_the_system_clipboard

Todd A. Jacobs
la source
2
*Mappe uniquement au registre principal X11 (qui est normalement collé par la souris). +correspond au registre du presse-papiers X11 normalement collé par des raccourcis.
ZyX
@ZyX Pas sur mon système, mais votre kilométrage peut certainement varier. Il est préférable de configurer le comportement que vous souhaitez explicitement si vous voulez une expérience cohérente sur toutes les plateformes et versions de logiciels.
Todd A. Jacobs,
Je crois que cela signifie que vous avez un gestionnaire de presse-papiers comme klipper / glipper, ils sont capables de synchroniser deux tampons. Cela ne change pas le fait que vim utilise *pour les +registres X11 primaires et pour le presse-papiers, vous pouvez le voir dans la source de vim: ces valeurs sont définies là-bas et ne sont jamais modifiées, clip_staret clip_plussont toujours utilisées pour *et +registres respectivement.
ZyX
41

Pour moi, cette configuration fonctionne pour copier et coller

" copy and paste
vmap <C-c> "+yi
vmap <C-x> "+c
vmap <C-v> c<ESC>"+p
imap <C-v> <ESC>"+pa
lis2
la source
dans quoi avez-vous collé?
StarWind0
Cette IMHO est une meilleure solution que de définir clibboard sur sans nom - pour ne pas jouer avec le presse-papiers du système d'exploitation avec toutes les actions x / dd / y, etc. Et sur un Mac, il peut être préférable de changer le modificateur C (ctrl) en D pour mapper les combinaisons cmd + c / x / v.
mindex
34

Ce serait les lignes dont vous avez besoin dans votre vimrc à cet effet:

set clipboard+=unnamed  " use the clipboards of vim and win
set paste               " Paste from a windows or from vim
set go+=a               " Visual selection automatically copied to the clipboard
Danniel Little
la source
2
J'aime ta solution. Je voudrais une meilleure explication.
zhon
excellent. utiliser des registres me fait toujours hésiter et réfléchir. C'est beaucoup mieux
JonnyRaa
Ma version vim a + presse-papiers et cette option ne fonctionne pas pour moi. J'utilise Byobu (qui utilise Tmux sous le capot).
GGhe
J'ai dû ajouter un presse-papiers + + unfnamedplus pour Fedora
hakunin
30

Je pense que cette question mérite une réponse plus objective et graphique:

Entrer en mode Coller

  • ESC
  • : définir la pâte
  • presse i
  • SHIFT+ Insert(avec un texte copié dans votre presse-papiers)


Quitter le mode Coller

  • ESC
  • : définir nopaste
  • presse i

Vous avez collé le texte et vous pouvez taper à nouveau.

ivanleoncz
la source
1
Je l'ai fait fonctionner, mais :set nopastene fait rien. Que doit-il faire? Pourquoi en ai-je besoin?
Marko Avlijaš
1
Eh bien, en fait, c'est le cas. Lorsque vous :set nopastejouez, vous dites à l'éditeur que vous ne voulez plus coller. Et quand vous frappez i, vous revenez au mode d'édition :).
ivanleoncz
2
Pour être honnête avec toi, Marko, je ne sais pas.
ivanleoncz
1
SHIFT + Insert l'a fait pour moi, merci!
Melissa Loos
1
Cela a fonctionné comme un charme pour moi. Chaque fois que je reviens à vim, je finis toujours par devoir regarder quelque chose comme ça.
benjaminadk
17

presse-papiers

Il y a un registre spécial pour stocker cette sélection, c'est le registre "*. Rien n'est mis ici sauf si les informations sur le texte sélectionné sont sur le point de changer (par exemple avec un clic gauche de la souris quelque part), ou lorsqu'une autre application veut collez le texte sélectionné. Le texte est ensuite placé dans le registre "*. Par exemple, pour couper une ligne et en faire la sélection actuelle / la mettre sur le CLIPBOARD:

    "*dd

De même, lorsque vous souhaitez coller une sélection à partir d'une autre application, par exemple, en cliquant sur le bouton central de la souris, la sélection est placée dans le registre "* d'abord, puis" mise "comme n'importe quel autre registre. Par exemple, pour placer la sélection (contenu du CLIPBOARD):

    "*p

registres E354

> There are nine types of registers:                      
> 1. The unnamed register ""
> 2. 10 numbered registers "0 to "9
> 3. The small delete register "-
> 4. 26 named registers "a to "z or "A to "Z
> 5. four read-only registers ":, "., "% and "#
> 6. the expression register "=
> 7. The selection and drop registers "*, "+ and "~ 
> 8. The black hole register "_
> 9. Last search pattern register "/

Coller depuis le presse-papiers

1. Clipboard: Copy
2. Vim insertmode, middle mouse key

Vérifier la prise en charge du presse-papiers X11 dans le terminal

Lorsque vous souhaitez exécuter Vim dans un terminal, vous devez rechercher une version de Vim qui a été compilée avec le support du presse-papiers. Vérifiez la prise en charge du presse-papiers X11, à partir de la console, tapez:

% vim --version

Si vous voyez "+ xterm_clipboard", vous êtes prêt à partir.

http://vim.wikia.com/wiki/Accessing_the_system_clipboard

Le serveur X conserve trois sélections, appelées:

PRIMAIRE, SECONDAIRE et CLIPBOARD

La sélection PRIMARY est classiquement utilisée pour implémenter le copier-coller via le bouton central de la souris. Les sélections SECONDAIRE et CLIPBOARD sont moins fréquemment utilisées par les programmes d'application.

http://linux.die.net/man/1/xsel

Le Demz
la source
12

J'ai essayé les suggestions ci-dessus et aucune d'entre elles n'a fonctionné dans mon environnement. (Windows PuTTY clone sur ssh)

Des recherches supplémentaires sur Google sont apparues: /unix/110684/copy-paste-into-sshd-vim-from-local-windows-clipboard

L'un des commentaires a suggéré d'utiliser SHIFT+INSERTce qui a fait l'affaire pour coller du presse-papiers de mon bureau dans le tampon de Vim. Ctrl-Ctravaillait déjà pour copier dans le presse-papiers du bureau à partir de Vim.

Communauté
la source
2
je travaille sur vim à l'intérieur de l'outil cmder [windows 8.1]. lorsque vous allez dans les paramètres cmder> touches et macros> coller, j'ai obtenu la commande shift + insert pour le collage multiligne et ctrl + v pour le collage sur une seule ligne.
Zubair Alam,
1
pour moi un simple clic droit fonctionne comme un charme !! Juste un clic droit!
Fr0zenFyr
2
Parce que vous utilisez un terminal et que ssh vim ne peut pas atteindre le presse-papiers de votre système natif via SSL. SHIFT+INSERTfonctionne parce que c'est l'option coller pour votre terminal (ou dans votre cas PuTTY); cependant, l'indentation sera probablement fausse. Consultez le dernier paragraphe de ma réponse sur l' pasteoption pour corriger cela.
Conner
1
@jinksPadlock. merci .. ouais .. je peux copier / coller via la souris .. essayait de comprendre comment le faire par "clavier uniquement". La copie de Windows vers VIM peut être effectuée uniquement à l'aide du clavier à l'aide de Putty, mais pas dans le sens inverse. En bash pour windows .. ce n'est pas possible de le faire dans les deux sens ATM. Compilé une liste de ressources pour orienter les gens dans la bonne direction et aussi pour nous .. si vous avez quelque chose à ajouter .. vous pouvez les ajouter ici: stackoverflow.com/questions/45271895/…
alpha_989
1
@ alpha_989 later-better-than-never;) Je ne peux pas ajouter à jinksPadlock 'car je n'ai actuellement pas de système d'exploitation Windows sous mes doigts. SHIFT+INSfonctionne à partir d'un hôte linux vers ssh vim ainsi que le troisième clic de la souris.
tuk0z
10

Je n'avais pas de presse-papiers + alors j'ai trouvé cette solution alternative en utilisant xsel:

Ajoutez à votre ~ / .vimrc:

vnoremap <C-C> :w !xsel -b<CR><CR>

rotestein
la source
1
Merci pour cette bonne idée! J'ai fini par utiliser:vnoremap <C-C> :w !xclip -i -sel c<CR><CR>
andy
6

Une note rapide pour les personnes dont l'installation de vim ne prend pas en charge les registres * et +. Il n'est pas nécessaire de télécharger une nouvelle installation de vim à coller depuis le presse-papiers. Voici une méthode alternative:

1) Installer parcellite (un gestionnaire de presse-papiers avec une faible empreinte mémoire);

2) Dans votre fichier .vimrc, ajoutez ce qui suit:

command Clip r !parcellite -c

3) Redémarrez vim.

Maintenant, lorsque vous tapez: Clip comme une commande ex, le contenu du presse-papiers sera collé au niveau du curseur. Vous pouvez également mapper la nouvelle commande à une touche de fonction afin de pouvoir le faire en une seule touche.

lovecraftian
la source
4

Cela fonctionne pour moi: Ctrl+ Shift+V

Boseam
la source
3
La réponse de @ neel l'a déjà dit. Cela ne devrait être qu'un commentaire, ou mieux un vote positif, si vous voulez dire que cela a également fonctionné pour vous.
ericbn
3

La solution la plus simple à cela, qui fonctionne également entre différentes machines Linux, sshest:

  1. Vérifier si les supports vim X-11 clipboard: vim --version | grep clipboard. S'il rapporte -clipboardet que -xterm_clipboardvous devez installer soit vim-gtkou vim-gnome(gvim sur arch linux)

  2. Ajoutez les lignes suivantes à votre .vimrc:

set clipboard=unnamedplus
set paste
  1. Si vous vous connectez sur une autre machine via ssh, utilisez l'option -Y: ssh -Y machine

Maintenant, le copier-coller devrait fonctionner exactement comme prévu sur une seule machine et sur différentes machines en utilisant uniquement ypour yank et ppour paste. NB modifier .vimrcsur toutes les machines sur lesquelles vous souhaitez utiliser cette fonctionnalité.

chao
la source
Je pense que le serveur X devrait également être disponible sur le serveur pour que cela fonctionne. Ouais! il peut être installé par vim-gtk. Je pense que xvfb sera une option alternative pour exécuter le serveur X.
Ajeeb.KP
3

J'ai rencontré ce problème sur un Macbook Pro mi-2017 fonctionnant vimdans iTerm2mon environnement de développement principal.

Comme d'autres réponses l'ont suggéré, j'ai couru vim --versionet j'ai remarqué qu'il revient -clipboard, ce qui signifie que la version de vimcelle livrée avec ma machine n'a pas été compilée avec l'option presse-papiers.

Le homebrewpackage pour vimsemble compiler avec l' clipboardoption, donc le correctif pour moi était de:

  1. Courir brew install vim
  2. Ajouter set clipboard+=unnamedà mon ~/.vimrcdossier
  3. Fermer et rouvrir iTerm2
NM Pennypacker
la source
3

Copier dans le presse-papiers du système d'exploitation

Sélectionnez le texte en mode visuel, appuyez sur "*y

Coller depuis le presse-papiers du système d'exploitation

presse "*p

Muhammed Ozdogan
la source
2

À la suite de la réponse de Conner, ce qui était super, mais C-R C-p + et C-R C-p *en mode d'insertion est un peu pratique bits. Idem "*pet "+pdepuis le mode commande.

un gourou de VIM a suggéré ce qui suit pour mapper C-vsur ce qui se C-r C-p +passe.

Vous pourriez avoir :inoremap <C-v> <C-o>"+ppour le mode d'insertion uniquement

si vous vouliez vraiment remplacer le mode visuel par blocs (non recommandé par lui car le mode visuel est bon), vous pourriez avoir map <C-v> "+p

barlop
la source
2

Si vous utilisez vim dans MAC OSX, malheureusement, il est livré avec une version plus ancienne et non conforme aux options du presse-papiers. Heureusement, les homebrews peuvent facilement résoudre ce problème.

installez vim:

brew install vim --with-lua --with-override-system-vim

installez gui verion de vim:

brew install macvim --with-lua --with-override-system-vim

redémarrez le terminal pour prendre effet.


ajouter la ligne suivante à ~/.vimrc
set clipboard=unnamed

vous pouvez maintenant copier la ligne dans vim avec yyet la coller à l'échelle du système.

anonyme
la source
2

Si vous utilisez d'abord une souris,

 :set paste 

Ensuite right click mouse, le contenu du tampon sera collé

Mohammed Rafeeq
la source
1

En plus du paramètre :set clipboard=unnamed, vous devez utiliser mvim -vce que vous pouvez obtenir brew install macvimsi vous utilisez vim sur Terminal.app sur Mac OS X 10.9. Vim par défaut ne prend pas en charge l'option de presse-papiers.

Nobu
la source
1

Il peut également être utile de mentionner que, sur OSX à l'aide de Vim, vous pouvez sélectionner du texte avec la souris, Cmd-C à copier dans le presse-papiers du système OSX, et le texte copié sera disponible dans le presse-papiers à l'extérieur de Vim.

En d'autres termes, OSX le traite comme s'il s'agissait d'une fenêtre ordinaire, et c'est là que le bouton Apple "Commande" tant décrié est utile.

B-30

B-30
la source
1
Cela est également vrai pour tout émulateur de terminal à moitié décent sur tout autre système d'exploitation. Apple n'a aucun avantage ici.
underscore_d
1

Sur la base de la réponse @ lis2, j'utilise une configuration plus simple qui ne forcera pas le mode Insertion à la fin:

" Copy and paste
if has('clipboard') && !has('gui_running')
  vnoremap <C-c> "+y
  vnoremap <C-x> "+d
  vnoremap <C-v> "+p
  inoremap <C-v> <C-r><C-o>+
endif

Gardez à l'esprit que tous ces mappages Vim par défaut sont remplacés:

  • v_CTRL-C: arrêter le mode visuel
  • v_CTRL-X: soustraire [count] du nombre
  • v_CTRL-V: mode visuel par blocs
  • i_CTRL-V: insérer littéralement le non-chiffre suivant, qui est également mappé à i_CTRL-Q

Comme alternative, on peut utiliser les touches inspirées du « coup sec », « supprimer » et « put » verbes: Vim <C-y>, <C-d>et <C-p>respectivement. Ceux-ci ne remplaceraient qu'un seul mappage par défaut:

  • i_CTRL-P: mot-clé de recherche en arrière pour compléter
ericbn
la source
1

Les autres solutions sont bonnes si vous voulez changer votre vimrc, etc ... Cependant, je voulais un moyen simple de copier de vim sur mon clavier système. C'est ce que j'ai trouvé.

  • Sélectionnez le texte que vous souhaitez copier avec le mode visuel v
  • Appuyez sur :(il s'agrandira automatiquement pour s'afficher :'<,'>)
  • Tapez y * ou y + (selon votre système) pour extraire le texte sélectionné dans le presse-papiers du système
NateW
la source
1

Ce dont vous avez vraiment besoin, c'est d' EasyClip . Il fera exactement cela et bien plus encore ...

Scott Wade
la source
1

Depuis vim 8, le clic droit active le mode visuel par défaut. Cela empêche le copier-coller "normal" (appelez-le un "défaut de conception" https://github.com/vim/vim/issues/1326 ). Corrigez-le en faisant:

echo "set mouse-=a" >> ~/.vimrc .

Quittez et redémarrez vim.

dr0i
la source
1

Avec Vim 8+ sur Linux ou Mac, vous pouvez maintenant simplement utiliser la pâte native du système d'exploitation ( ctrl+shift+Vsous Linux, cmd+Vsur Mac). N'appuyez pas ipour le mode d'insertion.

Il collera le contenu de votre presse-papiers du système d'exploitation, en préservant les espaces et les tabulations sans ajouter d'indentation automatique. Il est équivalent à l'ancienne :set paste, i, ctrl+shift+V, esc, :set nopasteméthode.

Vous n'avez même plus besoin d'installer les fonctionnalités +clipboardou +xterm_clipboardvim. Cette fonction est appelée "coller entre crochets". Pour plus de détails, voir Désactiver le retrait automatique lors du collage de texte dans vim

wisbucky
la source
0

Lorsque j'utilise mon vim Debian qui n'est pas intégré à Gnome (vim --version | grep clip # ne montre aucun support du presse-papiers), je peux copier dans le presse-papiers après avoir maintenu la touche Maj enfoncée et sélectionné le texte avec la souris, comme avec n'importe quel autre programme de malédictions. Comme je l'ai pensé à partir d'un commentaire de @Conner, c'est le terminal (gnome-terminal dans mon cas) qui désactive son rapport d'événement de souris lorsqu'il détecte ma pression sur Shift. Je suppose que les programmes basés sur des malédictions peuvent recevoir des événements de souris après avoir envoyé une certaine séquence d'échappement au terminal.

anguille ghEEz
la source
1
Cela utilise votre terminal, pas vim.
Conner
0

Si vous êtes sous Windows et que vous souhaitez coller le contenu du presse-papiers du système à l'aide de, ptapez cette commande.

:set clipboard = unnamed

Cela a résolu mon problème.

vincent mathew
la source
0

Il existe deux façons simples de procéder. Créez votre fichier en mode insertion et 1) appuyez sur le bouton central (la molette de défilement) de votre souris, ou 2) Ctrl + Maj + V

user1898814
la source
0

Pour certains claviers internationaux, vous devrez peut-être appuyer sur "+ Spacepour obtenir un ".

Donc, dans ces cas, vous devrez appuyer sur "Space+you "Space*ycopier.

Et "Space+pou " Space*ppour coller.

Arthur F
la source
0

J'ai utilisé la réponse de NM Pennypacker et installé vim via homebrew pour un MacBook Pro début 2011:

brew install vim

Maintenant, je peux également utiliser le registre "* pour copier et coller du texte dans vim. Je n'ai même pas eu à changer quelque chose dans mon fichier ~ / .vimrc ou $ PATH. Homebrew a ajouté des liens symboliques dans / usr / local / bin, par exemple vim -> ../Cellar/vim/8.1.2350/bin/vim.

L'alternative, qui fonctionnait auparavant, consiste à copier certaines lignes de texte dans vim en le marquant avec la souris et en utilisant le copier-coller (cmd + c, cmd + v) sur un mac. Cette option ne fonctionne que si le texte que vous souhaitez copier et coller est de taille inférieure à la taille de la fenêtre de vim. Si vous souhaitez copier tout le texte dans vim en marquant la fenêtre entière ou en utilisant cmd + a, cela copiera d'autres parties de la console, écrites avant de démarrer vim, ce qui est très ennuyeux.

Je suis donc heureux d'avoir trouvé la nouvelle méthode en utilisant le registre de clippboard.

feli_x
la source