From 27fffb2701c38090916e077d28a4a6b9e2bc09d2 Mon Sep 17 00:00:00 2001 From: Phillip Lord Date: Fri, 25 Jan 2019 08:59:06 +0000 Subject: [PATCH] ; Document input-event-functions --- doc/lispref/commands.texi | 14 +++++++++++++- etc/NEWS | 1 + 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/doc/lispref/commands.texi b/doc/lispref/commands.texi index 1eb580e1e0f..fb5a827ad12 100644 --- a/doc/lispref/commands.texi +++ b/doc/lispref/commands.texi @@ -256,7 +256,7 @@ It may be a Lisp expression that is not a string; then it should be a form that is evaluated to get a list of arguments to pass to the command. Usually this form will call various functions to read input from the user, most often through the minibuffer (@pxref{Minibuffers}) -or directly from the keyboard (@pxref{Reading Input}). +or directly from the keyboard (@pxref{Reading Input}) Providing point or the mark as an argument value is also common, but if you do this @emph{and} read input (whether using the minibuffer or @@ -2920,6 +2920,18 @@ this expression) remains the value of @code{last-command-event}. @end example @end defvar +@defvar input-event-functions +This variable holds a list of functions to call after Emacs reads an +event, but before any commands are run. Each function recieves a +single argument: the event that has been read. + +There are normally easier hooks to use than this; in particular +@var{pre-command-hook} is run immediately before any command resulting +from an event. However, not all events result in a command, including +many mouse events and some keyboard events when an input-method is +active (@pxref{Reading Input}). +@end defvar + @defmac while-no-input body@dots{} This construct runs the @var{body} forms and returns the value of the last one---but only if no input arrives. If any input arrives during diff --git a/etc/NEWS b/etc/NEWS index 4937fa0fe2d..c658406bc77 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1204,6 +1204,7 @@ removed. ** 'lookup-key' can take a list of keymaps as argument. ++++ ** New hook 'input-event-functions' run whenever a user-input is read. +++ -- 2.39.2