Warum scheint der Aquamacs-Textmodus-Hook, den ich in meine .emacs-Datei eingefügt habe, nicht zu funktionieren?

690
David

Ich verwende Aquamacs 2.4 (basierend auf Emacs 23.3.50.1) auf meinem Macbook, OS 10.7.5. Ich habe die folgende Zeile in meiner .emacs-Datei:

(add-hook 'text-mode-hook 'turn-on-visual-line-mode) 

Ich denke, dass diese Zeile den visuellen Linienmodus aktivieren sollte, wenn der Textmodus ist, aber es ist nicht der Fall. Es funktioniert nicht, auch wenn diese Zeile die einzige Zeile in meiner .emacs-Datei ist. Warum könnte das sein?

Danke vielmals!

1
Das sollte funktionieren. Sind Sie sicher, dass Sie einen Textmodus verwenden? `Mx`` Text-Modus `` RET`. Sie können auch versuchen zu sehen, ob der Hook ausgeführt wird mit: `(add-hook 'text-mode-hook (lambda () (Nachricht" Hallo von text-mode-hook ")))`, `Mx`` text- mode `` RET` und überprüfen Sie den `* Message *` -Puffer. Daimrod vor 11 Jahren 1
@Daimrod Dieser Kommentar hat mich auf den Weg zur Antwort gesetzt. Vielen Dank! David vor 11 Jahren 0

1 Antwort auf die Frage

1
David

Nach einigen Experimenten (und einigen TFM-Lesungen), die von Daimrods Kommentar angefordert wurden, erfuhr ich, dass das Problem aus der Konfiguration von Aquamacs entstand. Es lädt die ~/.emacsDatei, aber es ist die erste, die von vier text-mode-hookgeladen wurde, und meine Datei wurde von einer der Dateien überschrieben, die danach geladen wurden

Im Einzelnen lautet die Reihenfolge (gemäß dem Aquamacs-Handbuchabschnitt 4.3, Anpassen von Aquamacs ):

~/.emacs ~/Library/Preferences/Aquamacs Emacs/customizations.el /Library/Preferences/Aquamacs Emacs/Preferences.el (for all users) ~/Library/Preferences/Aquamacs Emacs/Preferences.el 

Meine Ergänzung zu the text-mode-hookwurde durch eine Zeile in der customizations.elDatei überschrieben, weshalb der Visual Line-Modus nicht geladen wurde.

Das Handbuch sagt auch, dass Benutzer ~ / .emacs nicht für Anpassungen verwenden sollten, sondern stattdessen die letzte Preferences.el-Datei. Ich habe also alles in .emacs in meine Preferences.el verschoben. Jetzt funktioniert alles wie erwartet.