Vorausgesetzt, Emacs weiß, wie es gestartet wurde, können Sie auf den vollständigen Pfad der ausführbaren Datei zugreifen, indem Sie Folgendes tun:
(expand-file-name invocation-name invocation-directory)
In meinem System kehrt dies beispielsweise "/usr/local/bin/emacs"
zu meiner regulären Sitzung und "~/.evm/bin/emacs"
zu meiner evm-Testsitzung zurück. Wenn Sie Lust haben, können Sie dies auch in a
file-truename
einbinden, um eventuelle Symlinks aufzulösen.
Die beiden oben verwendeten Variablen, wie in ihren Dokumentzeichenfolgen beschrieben:
invocation-name
Der Programmname, mit dem Emacs ausgeführt wurde.
Alle Verzeichnisnamen werden weggelassen.
invocation-directory
Das Verzeichnis, in dem die ausführbare Emacs-Datei gefunden wurde, um sie auszuführen.
Der Wert ist null, wenn der Name dieses Verzeichnisses nicht bekannt ist.