39.21 Blinking Parentheses
This section describes the mechanism by which Emacs shows a matching open parenthesis when the user inserts a close parenthesis.
variable
blink-paren-function​
The value of this variable should be a function (of no arguments) to be called whenever a character with close parenthesis syntax is inserted. The value of blink-paren-function
may be nil
, in which case nothing is done.
user option
blink-matching-paren​
If this variable is nil
, then blink-matching-open
does nothing.
user option
blink-matching-paren-distance​
This variable specifies the maximum distance to scan for a matching parenthesis before giving up.
user option
blink-matching-delay​
This variable specifies the number of seconds to keep indicating the matching parenthesis. A fraction of a second often gives good results, but the default is 1, which works on all systems.
command
blink-matching-open​
This function is the default value of blink-paren-function
. It assumes that point follows a character with close parenthesis syntax and applies the appropriate effect momentarily to the matching opening character. If that character is not already on the screen, it displays the character’s context in the echo area. To avoid long delays, this function does not search farther than blink-matching-paren-distance
characters.
Here is an example of calling this function explicitly.
(defun interactive-blink-matching-open ()
"Indicate momentarily the start of parenthesized sexp before point."
(interactive)
(let ((blink-matching-paren-distance
(buffer-size))
(blink-matching-paren t))
(blink-matching-open)))