Chỉ cần làm rõ ... Ví dụ, trong tài liệu này :
Một hook là một biến Lisp chứa một danh sách các hàm, sẽ được gọi trong một số trường hợp được xác định rõ. (Điều này được gọi là chạy hook.) Các hàm riêng lẻ trong danh sách được gọi là các hàm hook của hook. Ví dụ, hook
kill-emacs-hook
chạy ngay trước khi thoát Emacs ...
Tôi nghĩ rằng nó nói rằng có một biến (ký hiệu) được đặt tên kill-emacs-hook
đại diện cho một danh sách một tập hợp các "hàm hook" sẽ chạy khi kill-emacs-hook
được đánh giá, do đó thực hiện các chức năng đó. Chính xác? Sau đó
(add-hook 'text-mode-hook 'auto-fill-mode)
đang thêm auto-fill-mode
vào danh sách đó được xác định bằng text-mode-hook
những gì đã có. Tốt Bây giờ này
(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)
nơi mà dường như chúng ta đang tạo ra hoặc thay đổi text-mode-hook
. Bây giờ tôi đang bối rối về bản chất của móc và mối quan hệ của họ với defcustom
. Lựa chọn hợp lý của tôi là mã này đang tạo ra một biến text-mode-hook
có "loại" (không biết ý nghĩa của các loại trong elisp) hook
. Đây có phải, thực sự, được cho là sáng tạo ban đầu của hook text-mode-hook
? Nếu vậy, có gì với "tùy chọn?" Là những chức năng móc được cho là, hoặc cái gì khác?