Une commande locate interactive dans Emacs avec counsel et ivy-mode
Sur notre système GNU/Linux on a  la commande locate qui nous permet
de chercher  des fichiers sur tout  le système. Emacs a  une interface
simple à locate: M-x locate  qui demande une expression régulière
puis on obtient les résultats dans un nouveau buffer.
Avec counsel-locate on  peut voir les résultats  dans le mini-buffer
de manière interactive, appliquer des actions sur un ou des résultats,
et quelques trucs en plus.
Quand  on tape  counsel-locate on  obtient un  mini-buffer de  cette
sorte:
 
On retrouve des indications explicites qui ressemblent fortement à une
hydra. C'est C-o qui fait apparaître  le menu hydra. On peut choisir
et  définir  le type  d'action  à  effectuer  pour ouvrir  le  fichier
(touches wsa,  ouvrir avec emacs,  avec xdg-open, avec  une commande
personnalisée), et d'autres. Je vous laisse découvrir et vous reporter
à l'article de l'auteur:
http://oremacs.com/2015/07/02/counsel-locate/
Pour installer ça, si vous avez déjà ajouté la source de paquets MELPA, y'a plus qu'à
M-x package-install RET counsel RET
counsel est  une collection  de commandes  Emacs qui  utilisent Ivy,
lequel est  un système de  complétion interactif (comme ido  mais un
peut plus complet maintenant).
Comme alternative j'utilisais aussi helm-locate qui marche très bien (fournie avec helm), avec une différence sur la regexp (on doit écrire une vraie regexp alors qu'avec counsel on peut écrire différents termes séparés par un espace, par exemple "python.*pdf" ou "python pdf") et helm-locate propose moins d'actions possibles (aucune en fait, juste d'ouvrir un fichier en gardant la session). Pour définir quel programme utiliser pour chaque extension, j'utilise openwith (sur melpa).
Et voilà, encore une chose plus sympa à faire dans Emacs que dans son shell !
 
  