Comment tu fais du refactoring genre : changer le nom d’une méthode (et du coup en cascade tous les endroits où elle est appelée), déplacer un ficher (et du coup modifier tous les imports de ce fichier),
Le sed
-like incorporé à Vim fait ça très bien.
afficher une "call hierarchy", comment tu navigues instantanément vers la définition de ce que tu es en train de regarder (une méthode, une classe, une variable).
Selon les cas, la recherche simple, *
, #
ou encore grep
(là-aussi dans Vim). Ce serait pas compliqué de coder une fonction qui recherche automatiquement par exemple en Python def
suivi du nom de la fonction dans laquelle ton curseur est (et à tous les coups, ça existe déjà).
Perso si j’utilise Vim pour tout et n’importe quoi, c’est surtout que je travaille avec plusieurs langages et machines différentes, dont certains pour lesquels il n’y a pas d’IDE bien foutu sur le marché, ça me gonfle de changer d’outil toutes les 30 secondes (surtout quand l’outil en question met 5 minutes pour démarrer), passer des plombes à installer des trucs sur une nouvelle machine (quand j’ai le droit de le faire, en plus), et partir à la chasse d’un nouvel outil dès que je dois passer à une autre techno. Avec Vim, j’ai facilement la même UI et UX pour tous les langages et machines (même via SSH) avec lesquelles j’ai besoin de bosser.
La versatilité énorme compense bien les sombres features très avancées des IDE dont je n’aurais l’utilité que les 36 du mois (ça, plus le fait que l’édition au clicodrome me semble lente et impuissante à côté des commandes Vim…).