Das Problem dabei M-x compile
ist, dass das Makefile
fehlschlägt , wenn es sich nicht im aktuellen Verzeichnis befindet.
Ich hätte gerne eine Funktion, die rekursiv nach oben geht, um eine zu finden Makefile
und make
von diesem Verzeichnis aus auszuführen .
Ich habe diese Frage gesehen , aber sie ist pfadspezifisch und ich muss über das Laufen nachdenken.
compilation
directories
Florian Margaine
quelle
quelle
projectile
gibt es Möglichkeiten zum Kompilierenprojectile-project-root
. Zum Beispiel github.com/abo-abo/helm-makeprojectile-compile-project
macht, was ich will. Aber ich würde gerne etwas ohne diese Abhängigkeit haben, wenn möglich.Antworten:
Sie suchen die Funktion
locate-dominating-file
. Hier ist die Emacs-Dokumentation für diese Funktion:Auf diese Weise kann die Antwort von abo-abo auf verkürzt werden
quelle
findfile
, ich war überrascht, dass Emacs sie nicht hatte.let
? Du rennstlocate-dominating-file
zweimal.Rekursive Kompilierung, keine Abhängigkeiten angehängt:
quelle
with-temp-buffer
?with-temp-buffer
, weildefault-directory
es pufferlokal ist. Ich möchte es nicht für die aktuelle Datei ändern.