4 votes

Vim : tampon de recherche persistant entre les instances de vim (dans Ubuntu)

J'ai deux instances distinctes de Vim en cours d'exécution. J'aimerais configurer mon système de manière à ce que, lorsque je cherche something dans un Vim (en utilisant / , ? , * o # ), puis appuyez sur n o N dans l'autre Vim, il recherche le même something dans le second Vim. J'utilise Ubuntu.

J'utilise déjà le presse-papier principal du système pour les choses extraites dans vim en utilisant set clipboard=unnamed dans mon fichier .vimrc.

La recherche jusqu'à présent
L'outil de ligne de commande "xsel" me permet d'accéder à trois presse-papiers différents dans Ubuntu : le primaire le presse-papiers (utilisé lorsque vous sélectionnez du texte et que vous cliquez avec le bouton du milieu pour le coller), la fonction presse-papiers presse-papiers (utilisé pour Ctrl+C, Ctrl+V, etc.), et la fonction secondaire (qui semble être inutilisé). Mon idée actuelle est que Vim utilise xsel pour définir le presse-papier secondaire lorsque / , ? , * o # sont utilisés, et utiliser xsel pour accéder au même presse-papiers lorsque n o N sont activés.

3voto

dahu Points 181

J'allais simplement poster le code que j'ai bricolé pour cela ici, mais j'ai décidé de le regrouper dans un petit plugin : https://github.com/dahu/VimSharedSearch

1voto

sml Points 1129

Avec clipboard=unnamed vous pouvez copier entre le registre du dernier motif (la dernière chose que vous avez recherchée) et le presse-papiers partagé à l'aide de la fonction let @/=@* y let @*=@/ ( * est le presse-papiers, et / est le dernier modèle).

Vous pouvez donc créer une fonction qui copie le dernier motif dans le presse-papiers et le mappe à / , ? , * o # et une autre qui copie le presse-papiers sur le dernier motif pour n o N .

0voto

Karl Bielefeldt Points 15469

Ce n'est pas exactement ce que vous demandiez, mais j'utilise les fenêtres divisées ( :sp o :vsp ) à cette fin.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X