Emacs: List All Hooks

By Xah Lee. Date: . Last updated: .

How to Find Hook

Most major modes have a Hook .

If a mode's name is “xx-mode”, its hook by convention is named “xx-mode-hook”.

First, be sure you load the mode first. Some hook many not show when the mode isn't loaded or initialized. To load a mode, just e.g. Alt+x js-mode

To find a mode's hook, just search variable with the name “-hook” in it, or search the name of the mode. [see Emacs: Show Variable Value]

Note: A major mode may have more than 1 hook.

How to List Emacs Hooks

Alt+x apropos-variable then type “hook”.

List of Emacs Hooks

Here's a complete list of emacs hook variables, as of Emacs 28 (Released 2022-04) , with no external packages loaded.

  1. Buffer-menu-mode-hook
  2. Custom-mode-hook
  3. Info-mode-hook
  4. Info-selection-hook
  5. abbrev-mode-hook
  6. activate-mark-hook
  7. after-change-major-mode-hook
  8. after-init-hook
  9. after-revert-hook
  10. after-save-hook
  11. after-set-visited-file-name-hook
  12. after-setting-font-hook
  13. apropos-mode-hook
  14. authinfo-mode-hook
  15. auto-composition-mode-hook
  16. auto-compression-mode-hook
  17. auto-encryption-mode-hook
  18. auto-fill-mode-hook
  19. auto-lower-mode-hook
  20. auto-raise-mode-hook
  21. auto-revert-load-hook
  22. auto-revert-mode-hook
  23. auto-revert-tail-mode-hook
  24. auto-save-hook
  25. auto-save-mode-hook
  26. auto-save-visited-mode-hook
  27. awk-mode-hook
  28. before-hack-local-variables-hook
  29. before-init-hook
  30. before-make-frame-hook
  31. before-revert-hook
  32. before-save-hook
  33. binary-overwrite-mode-hook
  34. blink-cursor-mode-hook
  35. bookmark-after-jump-hook
  36. bookmark-bmenu-mode-hook
  37. bookmark-edit-annotation-mode-hook
  38. bookmark-exit-hook
  39. bookmark-load-hook
  40. browse-url-of-file-hook
  41. buffer-list-update-hook
  42. button-mode-hook
  43. c++-mode-hook
  44. c--unsafe-post-self-insert-hook-functions
  45. c-initialization-hook
  46. c-mode-common-hook
  47. c-mode-hook
  48. c-special-indent-hook
  49. change-major-mode-after-body-hook
  50. change-major-mode-hook
  51. cl-old-struct-compat-mode-hook
  52. clone-buffer-hook
  53. clone-indirect-buffer-hook
  54. column-number-mode-hook
  55. compilation-mode-hook
  56. compilation-start-hook
  57. completion-in-region-mode-hook
  58. completion-list-mode-hook
  59. completion-setup-hook
  60. context-menu-mode-hook
  61. cursor-intangible-mode-hook
  62. cursor-sensor-mode-hook
  63. custom-define-hook
  64. cvs-dired-use-hook
  65. deactivate-mark-hook
  66. delay-mode-hooks
  67. delayed-after-hook-functions
  68. delayed-mode-hooks
  69. delayed-warnings-hook
  70. delete-selection-mode-hook
  71. diff-auto-refine-mode-hook
  72. diff-minor-mode-hook
  73. diff-mode-hook
  74. dired-after-readin-hook
  75. dired-before-readin-hook
  76. dired-hide-details-mode-hook
  77. dired-initial-position-hook
  78. dired-isearch-filenames-mode-hook
  79. dired-load-hook
  80. dired-mode-hook
  81. dired-omit-mode-hook
  82. display-line-numbers-mode-hook
  83. echo-area-clear-hook
  84. edit-abbrevs-mode-hook
  85. eieio-hook
  86. eldoc-mode-hook
  87. electric-indent-local-mode-hook
  88. electric-indent-mode-hook
  89. electric-layout-local-mode-hook
  90. electric-layout-mode-hook
  91. electric-pair-local-mode-hook
  92. electric-pair-mode-hook
  93. electric-quote-local-mode-hook
  94. electric-quote-mode-hook
  95. elisp-byte-code-mode-hook
  96. emacs-lisp-compilation-mode-hook
  97. emacs-lisp-mode-hook
  98. emacs-startup-hook
  99. eval-expression-minibuffer-setup-hook
  100. exit-language-environment-hook
  101. fido-mode-hook
  102. fido-vertical-mode-hook
  103. file-name-shadow-mode-hook
  104. find-file-hook
  105. find-tag-hook
  106. first-change-hook
  107. focus-in-hook
  108. focus-out-hook
  109. font-lock-mode-hook
  110. global-auto-composition-mode-hook
  111. global-auto-revert-mode-hook
  112. global-display-line-numbers-mode-hook
  113. global-eldoc-mode-hook
  114. global-font-lock-mode-hook
  115. global-prettify-symbols-mode-hook
  116. global-visual-line-mode-hook
  117. global-xah-math-input-mode-hook
  118. grep-setup-hook
  119. hack-local-variables-hook
  120. horizontal-scroll-bar-mode-hook
  121. html-autoview-mode-hook
  122. html-mode-hook
  123. htmlize-after-hook
  124. htmlize-before-hook
  125. htmlize-file-hook
  126. icomplete-minibuffer-setup-hook
  127. icomplete-mode-hook
  128. icomplete-vertical-mode-hook
  129. idl-mode-hook
  130. ido-everywhere-hook
  131. ido-make-buffer-list-hook
  132. ido-make-dir-list-hook
  133. ido-make-file-list-hook
  134. ido-minibuffer-setup-hook
  135. ido-setup-hook
  136. image-minor-mode-hook
  137. imenu-after-jump-hook
  138. indent-tabs-mode-hook
  139. inhibit-modification-hooks
  140. inhibit-point-motion-hooks
  141. inhibit-startup-hooks
  142. input-method-activate-hook
  143. input-method-after-insert-chunk-hook
  144. input-method-deactivate-hook
  145. isearch-mode-end-hook
  146. isearch-mode-end-hook-quit
  147. isearch-mode-hook
  148. isearch-update-post-hook
  149. java-mode-hook
  150. jit-lock-debug-mode-hook
  151. js-jsx-mode-hook
  152. js-mode-hook
  153. kbd-macro-termination-hook
  154. kill-buffer-hook
  155. kill-emacs-hook
  156. line-number-mode-hook
  157. lisp-data-mode-hook
  158. lisp-interaction-mode-hook
  159. lisp-mode-hook
  160. lock-file-mode-hook
  161. mail-citation-hook
  162. mail-setup-hook
  163. menu-bar-mode-hook
  164. menu-bar-update-hook
  165. messages-buffer-mode-hook
  166. minibuffer-exit-hook
  167. minibuffer-inactive-mode-hook
  168. minibuffer-mode-hook
  169. minibuffer-setup-hook
  170. mouse-leave-buffer-hook
  171. mouse-wheel-mode-hook
  172. next-error-follow-minor-mode-hook
  173. next-error-hook
  174. normal-erase-is-backspace-mode-hook
  175. objc-mode-hook
  176. occur-edit-mode-hook
  177. occur-hook
  178. occur-mode-find-occurrence-hook
  179. occur-mode-hook
  180. overwrite-mode-hook
  181. package--post-download-archives-hook
  182. package-menu-mode-hook
  183. paragraph-indent-minor-mode-hook
  184. paragraph-indent-text-mode-hook
  185. pike-mode-hook
  186. post-command-hook
  187. post-gc-hook
  188. post-self-insert-hook
  189. pre-command-hook
  190. prefix-command-preserve-state-hook
  191. prettify-symbols-mode-hook
  192. process-menu-mode-hook
  193. prog-mode-hook
  194. quickurl-reread-hook-postfix
  195. quit-window-hook
  196. read-only-mode-hook
  197. recentf-dialog-mode-hook
  198. recentf-load-hook
  199. recentf-mode-hook
  200. recentf-used-hooks
  201. replace-update-post-hook
  202. rfn-eshadow-setup-minibuffer-hook
  203. rfn-eshadow-update-overlay-hook
  204. rmail-mode-hook
  205. rmail-show-message-hook
  206. save-place-local-mode-hook
  207. save-place-mode-hook
  208. savehist-mode-hook
  209. savehist-save-hook
  210. scroll-bar-mode-hook
  211. set-language-environment-hook
  212. sgml-electric-tag-pair-mode-hook
  213. sgml-mode-hook
  214. show-paren-local-mode-hook
  215. show-paren-mode-hook
  216. signal-hook-function
  217. size-indication-mode-hook
  218. special-mode-hook
  219. suspend-hook
  220. suspend-resume-hook
  221. tab-bar-history-mode-hook
  222. tab-bar-mode-hook
  223. tab-switcher-mode-hook
  224. tabulated-list-mode-hook
  225. tabulated-list-revert-hook
  226. temp-buffer-resize-mode-hook
  227. temp-buffer-setup-hook
  228. temp-buffer-show-hook
  229. temp-buffer-window-setup-hook
  230. temp-buffer-window-show-hook
  231. term-setup-hook
  232. text-mode-hook
  233. tool-bar-mode-hook
  234. tooltip-mode-hook
  235. transient-mark-mode-hook
  236. tty-setup-hook
  237. unify-8859-on-decoding-mode-hook
  238. unify-8859-on-encoding-mode-hook
  239. url-cookie-mode-hook
  240. url-handler-mode-hook
  241. url-load-hook
  242. use-hard-newlines-hook
  243. vc-before-checkin-hook
  244. vc-checkin-hook
  245. vc-checkout-hook
  246. vc-git-log-edit-mode-hook
  247. vc-git-log-view-mode-hook
  248. vc-git-region-history-mode-hook
  249. vc-log-after-operation-hook
  250. vc-logentry-check-hook
  251. visible-mode-hook
  252. visual-line-mode-hook
  253. window-configuration-change-hook
  254. window-divider-mode-hook
  255. window-setup-hook
  256. window-state-change-hook

emacs misc list

Emacs Hook