Comment accéder à une occurrence à partir de la liste de recherche Vim
Question
Dans l'éditeur Vim, j'ai choisi ] I
sur une fonction (en code C ++).
Ceci a présenté une liste, qui indique "Appuyez sur ENTRÉE ou tapez commande pour continuer" .
Maintenant, passons à une occurrence, par exemple 6, je tape 6
- mais cela ne fonctionne pas.
Quelles commandes puis-je taper dans un tel cas et comment puis-je accéder à la nième occurrence de cette liste?
Mise à jour:
En fait, j'ai essayé : N (par exemple: 6) - mais au moment où je tape :
, Vim entre en mode insertion et les deux points sont insérés dans le code.
Mettre à jour
En supposant que : N approche est correcte, toujours terminer la désinstallation et l’installation de Vim, sans aucune configuration, n’a pas non plus aidé - bien que taper :
maintenant ne fait pas passer Vim en mode insertion.
La solution
Il devrait vous présenter une liste du genre:
1: 345 my_func (int var)
2: 4523 my_func (int var)
3: 10032 my_func (3);
La deuxième colonne contient les numéros de ligne. Entrez 345 pour passer à la ligne 345.
Autres conseils
Faites: h tselect sur vim pour voir la définition complète
Si vous voyez déjà le tag que vous voulez voir utiliser, vous pouvez taper 'q' et entrer le numéro.
Si vous appuyez sur un bouton de saut et obtenez une liste des cibles possibles, sélectionnez le numéro et appuyez à nouveau sur le saut.
Donc,
1: 345 my_func (int var)
2: 4523 my_func (int var)
3: 10032 my_func (3);
Si vous appuyez sur '2] |', il devrait passer directement à cette ligne.
J'ai eu le même problème et, en combinant les réponses précédentes et en expérimentant, j'ai trouvé cette solution:
[I // gives list of matches for word under cursor, potentially some matches are in headers. remember the number of the match you're interested in, eg. the 3rd
q // quits the list of matches
3[Ctrl-i // (with cursor in same position) jumps to third match
Quand j'utilise vim et que je saute à une balise, en faisant par exemple:
:tag getfirst
On me présente quelque chose qui ressemble à:
# pri kind tag file
1 F m getfirst /home/sthorne/work/.../FormData.py
class:FakeFieldStorage
def getfirst(self, k, default):
....
8 F m getfirst /home/sthorne/work/.../CGIForm.py
class:CGIForm
def getfirst(self, name):
Choice number (<Enter> cancels):
Je tape "5" pour aller à la cinquième occurrence.
Si vous ne pouvez pas obtenir ce comportement de votre vim (il semble être activé par défaut pour mon vim), vous pouvez utiliser g] au lieu de ctrl -] , qui est analogue à : tselect au lieu de : tag
[I
ne répertorie que les résultats de la recherche. Pour accéder aux résultats, utilisez la séquence [CTRL + I
.
Vous pouvez voir la liste complète des sauts pertinents à l’adresse suivante:
Essayez d’utiliser 123G
pour afficher la ligne 123 (voir : h G
).