# HG changeset patch # User Glenn Morris # Date 1189052441 0 # Node ID 706c6a178b207832bd844ebdd3949f08e6d17d06 # Parent d42a0d7a4893a2c8cdc70db9c0b86991cf8aab45 Move here from ../../lispref diff -r d42a0d7a4893 -r 706c6a178b20 doc/lispref/hooks.texi --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/lispref/hooks.texi Thu Sep 06 04:20:41 2007 +0000 @@ -0,0 +1,338 @@ +@c -*-texinfo-*- +@c This is part of the GNU Emacs Lisp Reference Manual. +@c Copyright (C) 1990, 1991, 1992, 1993, 1998, 2001, 2002, 2003, 2004, +@c 2005, 2006, 2007 Free Software Foundation, Inc. +@c See the file elisp.texi for copying conditions. +@setfilename ../info/hooks +@node Standard Hooks, Index, Standard Keymaps, Top +@appendix Standard Hooks +@cindex standard hooks +@cindex hook variables, list of + +The following is a list of hook variables that let you provide +functions to be called from within Emacs on suitable occasions. + +Most of these variables have names ending with @samp{-hook}. They are +@dfn{normal hooks}, run by means of @code{run-hooks}. The value of such +a hook is a list of functions; the functions are called with no +arguments and their values are completely ignored. The recommended way +to put a new function on such a hook is to call @code{add-hook}. +@xref{Hooks}, for more information about using hooks. + +Every major mode defines a mode hook named +@samp{@var{modename}-mode-hook}. The major mode command runs this +normal hook with @code{run-mode-hooks} as the very last thing it does. +@xref{Mode Hooks}. Most minor modes have mode hooks too. Mode hooks +are omitted in the list below. + +The variables whose names end in @samp{-hooks} or @samp{-functions} are +usually @dfn{abnormal hooks}; their values are lists of functions, but +these functions are called in a special way (they are passed arguments, +or their values are used). The variables whose names end in +@samp{-function} have single functions as their values. + +@c We need to xref to where each hook is documented or else document +@c it here. + +@table @code +@item activate-mark-hook +@xref{The Mark}. + +@item after-change-functions +@xref{Change Hooks}. + +@item after-change-major-mode-hook +@xref{Mode Hooks}. + +@item after-init-hook +@xref{Init File}. + +@item after-insert-file-functions +@xref{Format Conversion}. + +@item after-make-frame-functions +@xref{Creating Frames}. + +@item after-revert-hook +@xref{Reverting}. + +@item after-save-hook +@xref{Saving Buffers}. + +@item auto-fill-function +@xref{Auto Filling}. + +@item auto-save-hook +@xref{Auto-Saving}. + +@item before-change-functions +@xref{Change Hooks}. + +@item before-init-hook +@xref{Init File}. + +@item before-make-frame-hook +@xref{Creating Frames}. + +@item before-revert-hook +@xref{Reverting}. + +@item before-save-hook +@xref{Saving Buffers}. + +@item blink-paren-function +@xref{Blinking}. + +@item buffer-access-fontify-functions +@xref{Lazy Properties}. + +@item calendar-load-hook +@iftex +@inforef{Calendar Customizing,, emacs-xtra}. +@end iftex +@ifnottex +@xref{Calendar Customizing,,, emacs}. +@end ifnottex + + +@item change-major-mode-hook +@xref{Creating Buffer-Local}. + +@item command-line-functions +@xref{Command-Line Arguments}. + +@item comment-indent-function +@xref{Options for Comments,, Options Controlling Comments, emacs, the +GNU Emacs Manual}. + +@item compilation-finish-functions +Functions to call when a compilation process finishes. + +@item custom-define-hook +Hook called after defining each customize option. + +@item deactivate-mark-hook +@xref{The Mark}. + +@item desktop-after-read-hook +Normal hook run after a successful @code{desktop-read}. May be used +to show a buffer list. @xref{Saving Emacs Sessions,, Saving Emacs +Sessions, emacs, the GNU Emacs Manual}. + +@item desktop-no-desktop-file-hook +Normal hook run when @code{desktop-read} can't find a desktop file. +May be used to show a dired buffer. @xref{Saving Emacs Sessions,, +Saving Emacs Sessions, emacs, the GNU Emacs Manual}. + +@item desktop-save-hook +Normal hook run before the desktop is saved in a desktop file. This +is useful for truncating history lists, for example. @xref{Saving +Emacs Sessions,, Saving Emacs Sessions, emacs, the GNU Emacs Manual}. + +@item diary-display-hook +@iftex +@inforef{Fancy Diary Display,, emacs-xtra}. +@end iftex +@ifnottex +@xref{Fancy Diary Display,,, emacs}. +@end ifnottex + +@item diary-hook +List of functions called after the display of the diary. Can be used +for appointment notification. + +@item disabled-command-function +@xref{Disabling Commands}. + +@item echo-area-clear-hook +@xref{Echo Area Customization}. + +@item emacs-startup-hook +@xref{Init File}. + +@item find-file-hook +@xref{Visiting Functions}. + +@item find-file-not-found-functions +@xref{Visiting Functions}. + +@item first-change-hook +@xref{Change Hooks}. + +@item font-lock-beginning-of-syntax-function +@xref{Syntactic Font Lock}. + +@item font-lock-fontify-buffer-function +@xref{Other Font Lock Variables}. + +@item font-lock-fontify-region-function +@xref{Other Font Lock Variables}. + +@item font-lock-mark-block-function +@xref{Other Font Lock Variables}. + +@item font-lock-syntactic-face-function +@xref{Syntactic Font Lock}. + +@item font-lock-unfontify-buffer-function +@xref{Other Font Lock Variables}. + +@item font-lock-unfontify-region-function +@xref{Other Font Lock Variables}. + +@item initial-calendar-window-hook +@iftex +@inforef{Calendar Customizing,, emacs-xtra}. +@end iftex +@ifnottex +@xref{Calendar Customizing,,, emacs}. +@end ifnottex + +@item kbd-macro-termination-hook +@xref{Keyboard Macros}. + +@item kill-buffer-hook +@xref{Killing Buffers}. + +@item kill-buffer-query-functions +@xref{Killing Buffers}. + +@item kill-emacs-hook +@xref{Killing Emacs}. + +@item kill-emacs-query-functions +@xref{Killing Emacs}. + +@item lisp-indent-function + +@item list-diary-entries-hook +@iftex +@inforef{Fancy Diary Display,, emacs-xtra}. +@end iftex +@ifnottex +@xref{Fancy Diary Display,,, emacs}. +@end ifnottex + +@item mail-setup-hook +@xref{Mail Mode Misc,, Mail Mode Miscellany, emacs, the GNU Emacs +Manual}. + +@item mark-diary-entries-hook +@iftex +@inforef{Fancy Diary Display,, emacs-xtra}. +@end iftex +@ifnottex +@xref{Fancy Diary Display,,, emacs}. +@end ifnottex + +@item menu-bar-update-hook +@xref{Menu Bar}. + +@item minibuffer-setup-hook +@xref{Minibuffer Misc}. + +@item minibuffer-exit-hook +@xref{Minibuffer Misc}. + +@item mouse-position-function +@xref{Mouse Position}. + +@item nongregorian-diary-listing-hook +@iftex +@inforef{Hebrew/Islamic Entries,, emacs-xtra}. +@end iftex +@ifnottex +@xref{Hebrew/Islamic Entries,,, emacs}. +@end ifnottex + +@item nongregorian-diary-marking-hook +@iftex +@inforef{Hebrew/Islamic Entries,, emacs-xtra}. +@end iftex +@ifnottex +@xref{Hebrew/Islamic Entries,,, emacs}. +@end ifnottex + +@item occur-hook + +@item post-command-hook +@xref{Command Overview}. + +@item pre-abbrev-expand-hook +@xref{Abbrev Expansion}. + +@item pre-command-hook +@xref{Command Overview}. + +@item print-diary-entries-hook +@iftex +@inforef{Diary Customizing,, emacs-xtra}. +@end iftex +@ifnottex +@xref{Diary Customizing,,, emacs}. +@end ifnottex + +@item redisplay-end-trigger-functions +@xref{Window Hooks}. + +@item scheme-indent-function + +@item suspend-hook +@xref{Suspending Emacs}. + +@item suspend-resume-hook +@xref{Suspending Emacs}. + +@item temp-buffer-setup-hook +@xref{Temporary Displays}. + +@item temp-buffer-show-function +@xref{Temporary Displays}. + +@item temp-buffer-show-hook +@xref{Temporary Displays}. + +@item term-setup-hook +@xref{Terminal-Specific}. + +@item today-visible-calendar-hook +@iftex +@inforef{Calendar Customizing,, emacs-xtra}. +@end iftex +@ifnottex +@xref{Calendar Customizing,,, emacs}. +@end ifnottex + +@item today-invisible-calendar-hook +@iftex +@inforef{Calendar Customizing,, emacs-xtra}. +@end iftex +@ifnottex +@xref{Calendar Customizing,,, emacs}. +@end ifnottex + +@item window-configuration-change-hook +@xref{Window Hooks}. + +@item window-scroll-functions +@xref{Window Hooks}. + +@item window-setup-hook +@xref{Window Systems}. + +@item window-size-change-functions +@xref{Window Hooks}. + +@item write-contents-functions +@xref{Saving Buffers}. + +@item write-file-functions +@xref{Saving Buffers}. + +@item write-region-annotate-functions +@xref{Format Conversion}. +@end table + +@ignore + arch-tag: 55fd0296-d906-4551-b300-979d3846aa88 +@end ignore