Wenn in einer meiner Init-Dateien ein Fehler auftritt, wird beim Starten von Emacs eine vage Meldung wie diese angezeigt:
Warning (initialization): An error occurred while loading /Users/im/.emacs.d/init.elc:
(wrong-type-argument listp helm-find-files-actions)
Es sagt mir nicht, welche meiner vielen Konfigurationsdateien den Fehler enthält oder welche Zeile. Das Durchsuchen meiner Dateien hilft nicht weiter, da die Funktion helm-find-files-actions
in keiner meiner Init-Dateien angezeigt wird. Um die fehlerhafte Codezeile aufzuspüren, muss ich tun $ emacs --debug-init
.
Gibt es keine Möglichkeit, Emacs dazu zu bringen, mir automatisch zu sagen, wo sich die betreffende Leitung befindet, ohne dass ich beenden und laufen muss $ emacs --debug-init
? Ich weiß, dass ich die Dateien manuell halbieren und auswerten kann, aber das ist noch langsamer. Es wäre viel besser, wenn Emacs bei einem Fehler in einer meiner Init-Dateien Folgendes tun könnte:
- Sag mir welche Init-Datei
- Sagen Sie mir die Zeilennummer, die den Fehler enthält
- Öffnen Sie im Idealfall diese Init-Datei und bringen Sie mich zur betreffenden Zeile
Ist das mit Emacs möglich oder lebe ich in einer Fantasiewelt?
debug-init
automatisch für den nächsten Start zu aktivieren, wenn sich Ihre Init-Datei ändert ...
--debug-init
:)
--debug-init
standardmäßig mit zu starten ?
(setq debug-on-error t)
und dann erneut auswerteninit.el
- z. B. öffnen und eingebenM-x eval-buffer
.