Nur zur Verdeutlichung ... Zum Beispiel in diesem Dokument :
Ein Hook ist eine Lisp-Variable, die eine Liste von Funktionen enthält, die bei einer genau definierten Gelegenheit aufgerufen werden können. (Dies wird als Ausführen des Hooks bezeichnet.) Die einzelnen Funktionen in der Liste werden als Hook-Funktionen des Hooks bezeichnet. Zum Beispiel
kill-emacs-hookläuft der Hook kurz vor dem Verlassen von Emacs ...
Ich denke, es heißt, es gibt eine Variable (Symbol) mit dem Namen kill-emacs-hook, die eine Liste einer Reihe von "Hook-Funktionen" darstellt, die ausgeführt werden, wenn die kill-emacs-hookausgewertet wird, wodurch diese Funktionen ausgeführt werden. Richtig? Dann
(add-hook 'text-mode-hook 'auto-fill-mode)
fügt auto-fill-modedieser Liste hinzu , die text-mode-hookzusätzlich zu dem, was bereits vorhanden ist, gekennzeichnet ist. Gut. Nun das
(defcustom text-mode-hook nil
"Normal hook run when entering Text mode and many related modes."
:type 'hook
:options '(turn-on-auto-fill flyspell-mode)
:group 'wp)
wo es scheint, schaffen oder verändern wir das text-mode-hook. Ich bin jetzt verwirrt über die Art der Haken und ihre Beziehung zu defcustom. Meine logische Wahl ist, dass dieser Code eine Variable text-mode-hookvom Typ "Typ" erstellt (ich weiß nicht, was unter Typen in elisp zu verstehen ist) hook. Soll dies tatsächlich die anfängliche Schaffung des Hakens sein text-mode-hook? Wenn ja, was ist mit den "Optionen" los? Sind das die vermeintlichen Hook-Funktionen oder etwas anderes?