J'utilise souvent grep
avec l' -n
option de lister les numéros de ligne, par exemple
$ grep -n xyz .*
/ext1/acheong/foo/bar/a.cc:42: inline bool abc(int xyz);
/ext1/acheong/foo/bar/a.cc:43: inline bool def(int xyz);
/ext1/acheong/foo/bar/b.cc:415: int xyz = result;
/ext1/acheong/foo/bar/b.cc:490: xyz += result;
$
Serait-il possible de créer vim
un alias de telle sorte que
vim /ext1/acheong/foo/bar/b.cc:415
ouvrirait le fichier et chercherait automatiquement la ligne 415?
Est-ce possible dans csh
? (Oui, oui, csh
fait ressortir le diable et tout ce qui est impie; mais je n'ai pas le choix ...) Une réponse pour d'autres coquilles serait également utile.
csh
alias qui correspondrait à la forme ci-dessus, mais je ne l'ai jamais fait.:tabe +150 file
,:tabe +/FooBar file
Une solution à ce problème consiste à utiliser le plug- in file_line.vim , qui vous permet de spécifier un nom de fichier et un numéro de ligne en tant qu'argument pour Vim ou sur la ligne de commande de Vim, comme vous l'avez montré.
Un autre est ce script,
qui peut être utilisé comme ceci:
et qui charge toutes les correspondances dans la liste d'erreurs de correction rapide de Vim. Voir
Notez l'
-H
option de grep pour vous assurer que le nom de fichier est inclus dans la sortie de grep même s'il est.*
étendu à un seul nom de fichier.la source
Vous pouvez faire votre recherche à partir de Vim lui-même:
puis ouvrez la fenêtre de correction rapide:
la source
vim-fetch est capable d’ouvrir des fichiers à un emplacement spécifique fourni en tant que valeurs séparées par des deux points.
la source