Exclure le tiret (-) des séparateurs de mots dans vi

3

vi utilise tiret et espace comme séparateurs de mots. y a-t-il un moyen d'exclure dash des séparateurs de mots?

Cela est nécessaire pour travailler avec les symboles générés par ctags exe. lorsque symbole contient un "-", les balises vi ne parviennent pas à localiser ce symbole même si le symbole est généré correctement.

Par exemple, Symbol - EX01-VAR-LOCAL lorsqu’on utilise la combinaison de touches ctrl +] pour rechercher cette balise, vi ne cherche que EX01, pas le symbole complet EX01-VAR-LOCAL.

Cependant, si vous utilisez vi -t EX01-VAR-LOCAL ou en mode commande: la balise EX01-VAR-LOCAL fonctionne correctement.

je cherche la solution pour l'éditeur vi seulement, mais pas vim

Merci d'avance :)

Abhishek
la source

Réponses:

2

Je n'ai pas accès à un vrai vi, que elvis, nviet vim. Dans vim :set lisptraitera - dans le cadre d'un mot plutôt que comme un séparateur pour les balises et le mouvement. elvisne le fait pas (la documentation prétend que c'est non implémenté et ne fait rien), et nvirépond que ce :set lispn'est pas implémenté.

Mise à jour: un fichier légèrement mis à jour vi, http://ex-vi.sourceforge.net/, gère effectivement "-" dans le cadre de mots à des fins de balise (mais pas de mouvement) lorsqu'il :set lispest actif.

wnoise
la source
Pas sûr si "seulement ... vim" est le bon terme! (-:
Rob Wells
1

Voir l'aide pour 'iskeyword'dans vim.

:help 'iskeyword'
musiphil
la source
Merci @musiphil. C'était un pointeur très utile et m'a aidé à résoudre un problème similaire avec un type de fichier différent.
John Szakmeister