1 votes

Vim: Comment créer une fonction d'autocomplétion/sélectionneur à partir des entrées dans le tampon?

Découvert aujourd'hui que si vous appuyez sur Ctrl-Opt-Cmd-V dans Textmate, cela produit un mignon petit dialogue de "sélectionneur" en place qui vous permet de parcourir vos entrées récentes du presse-papiers. Cela ressemble beaucoup à la façon dont CTRL-P et -N fonctionnent dans VIM, sauf qu'il affiche des lignes entières au lieu d'objets simples.

Il semble que cela serait faisable dans VIM - il a déjà un tampon plein d'entrées (le tampon YankRing, par exemple), et il a déjà un sélecteur, mais je ne vois pas par où commencer pour les associer. Des idées?

(Je sais que YankRing le fait déjà en ouvrant une nouvelle fenêtre pleine de contenu de tampon, mais je me demande s'il y a un moyen de le faire sans tout le basculement/fermeture de fenêtre, etc.)

1voto

Unnati Gutpa Points 11

Vim propose deux mécanismes de complétion d'insertion définis par l'utilisateur: la complétion définie par l'utilisateur et la complétion Omni. Vous pouvez en lire plus ici:

:help compl-function
:help compl-omni
:help complete-functions
:help 'completefunc'
:help 'omnifunc'

Je ne les ai jamais utilisés moi-même, mais puisque vous avez demandé où commencer à chercher, c'est ça. Vous voudrez peut-être aussi lire cette section,

:help ins-completion

pour une explication des divers mécanismes de complétion en mode insertion intégrés à Vim, ce qui peut vous aider à éviter d'écrire les vôtres. Je n'ai pas vu de mécanisme prédéfini pour sélectionner parmi les entrées du presse-papiers, cependant. Vous pouvez insérer à partir de suppressions précédentes avec un peu de travail en utilisant :registers pour voir les registres disponibles, puis insérer le contenu du registre désiré avec Ctrl-R suivi du nom du registre. Voir

:help :register
:help registers
:help i_CTRL-R

0voto

Craig McQueen Points 13194

Ma réponse est probablement un peu hors-sujet mais je préfère avoir un gestionnaire de presse-papiers global car cette fonctionnalité est utile dans de nombreux contextes. Voici ceux que j'utilise avec le même raccourci clavier exact pour chacun :

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X