Le problème M-x compile
est que si le Makefile
n'est pas dans le répertoire courant, il échoue.
J'aimerais avoir une fonction qui monte récursivement pour trouver un Makefile
et exécuter à make
partir de ce répertoire.
J'ai vu cette question , mais elle est spécifique au chemin, et c'est quelque chose que je dois penser à exécuter.
compilation
directories
Florian Margaine
la source
la source
projectile
il existe des moyens de compiler à partir deprojectile-project-root
. Par exemple, github.com/abo-abo/helm-makeprojectile-compile-project
fasse ce que je veux. Mais j'aimerais avoir quelque chose sans cette dépendance, si possible.Réponses:
Vous recherchez la fonction
locate-dominating-file
. Voici la documentation emacs pour cette fonction:En utilisant cela, la réponse d'abo-abo peut être raccourcie en
la source
findfile
, j'ai été surpris qu'emacs ne l'ait pas.let
? Vous courezlocate-dominating-file
deux fois.Compilation récursive, sans dépendances attachées:
la source
with-temp-buffer
?with-temp-buffer
, cardefault-directory
est tampon-local. Je ne veux pas le changer pour le fichier actuel.