Ecaml.HookSourceA hook is a variable where you can store a function or functions to be called on a particular occasion by an existing program. Emacs provides hooks for the sake of customization.
Hooks installed through Ecaml are wrapped in an exception handler that prints the error to the *Messages* buffer and exits the function normally.
(Info-goto-node "(elisp)Hooks")
val sexp_of_t :
('a -> Sexplib0.Sexp.t) ->
('b -> Sexplib0.Sexp.t) ->
('a, 'b) t ->
Sexplib0.Sexp.ttype after_change = {beginning_of_changed_region : Position.t;end_of_changed_region : Position.t;length_before_change : int;}type before_change = {beginning_of_changed_region : Position.t;end_of_changed_region : Position.t;}val add :
?buffer_local:bool ->
?one_shot:bool ->
?where:Where.t ->
('a, 'b) t ->
('a, 'b) Function.t ->
unit(describe-function 'add-hook) (Info-goto-node "(elisp)Setting Hooks")
If one_shot is true, the hook will be removed after the first time it runs.
(describe-function 'remove-hook) (Info-goto-node "(elisp)Setting Hooks")
(describe-function 'run-hooks) (Info-goto-node "(elisp)Running Hooks")
(describe-variable 'after-change-functions) (Info-goto-node "(elisp)Change Hooks")
(describe-variable 'after-load-functions) (Info-goto-node "(elisp)Hooks for Loading")
(describe-variable 'after-revert-hook) (Info-goto-node "(elisp)Reverting")
(describe-variable 'after-save-hook) (Info-goto-node "(elisp)Saving Buffers")
(describe-variable 'before-change-functions) (Info-goto-node "(elisp)Change Hooks")
(describe-variable 'before-save-hook) (Info-goto-node "(elisp)Saving Buffers")
(describe-variable 'emacs-startup-hook)
Use this instead of (describe-variable 'after-init-hook), since the latter occurs before command-line arguments are handled (and therefore before the OCaml runtime is initialized).
(describe-variable 'focus-in-hook) (Info-goto-node "(elisp)Input Focus")
(describe-variable 'kill-buffer-hook) (Info-goto-node "(elisp)Killing Buffers")
(describe-variable 'post-command-hook) (Info-goto-node "(elisp)Command Overview")
(describe-variable 'server-after-make-frame-hook)
(describe-variable 'window-configuration-change-hook) (Info-goto-node "(elisp)Window Hooks")
(describe-variable 'window-scroll-functions) (Info-goto-node "(elisp)Window Hooks")
(Info-goto-node "(elisp)Major Mode Conventions")