GNU Info

Info Node: (autotype)Inserting Pairs

(autotype)Inserting Pairs


Next: Autoinserting Prev: Skeleton Language Up: Top
Enter node , (file) or (file)node

Inserting Matching Pairs of Characters
**************************************

   Various characters usually appear in pairs.  When, for example, you
insert an open parenthesis, no matter whether you are programming or
writing prose, you will surely enter a closing one later.  By entering
both at the same time and leaving the cursor inbetween, Emacs can
guarantee you that such parentheses are always balanced.  And if you
have a non-qwerty keyboard, where typing some of the stranger
programming language symbols makes you bend your fingers backwards,
this can be quite relieving too.

   This is done by binding the first key (Note: (emacs)Rebinding) of
the pair to `skeleton-pair-insert-maybe' instead of
`self-insert-command'.  The "maybe" comes from the fact that this
at-first surprising behavior is initially turned off.  To enable it,
you must set `skeleton-pair' to some non-`nil' value.  And even then, a
positive argument (Note: (emacs)Arguments) will make this key behave
like a self-inserting key (Note: (emacs)Inserting Text).

   While this breaks with the stated intention of always balancing
pairs, it turns out that one often doesn't want pairing to occur, when
the following character is part of a word.  If you want pairing to
occur even then, set `skeleton-pair-on-word' to some non-`nil' value.

   Pairing is possible for all visible characters.  By default the
parenthesis `(', the square bracket `[', the brace `{', the pointed
bracket `<' and the backquote ``' all pair with the symmetrical
character.  All other characters pair themselves.  This behavior can be
modified by the variable `skeleton-pair-alist'.  This is in fact an
alist of skeletons (Note: Skeleton Language), with the first part of
each sublist matching the typed character.  This is the position of the
interactor, but since pairs don't need the `str' element, this is
ignored.

   Some modes have bound the command `skeleton-pair-insert-maybe' to
relevant keys.  These modes also configure the pairs as appropriate.
For example, when typing english prose, you'd expect the backquote
(``') to pair with the quote (`''), while in Shell script mode it must
pair to itself.  They can also inhibit pairing in certain contexts.
For example an escaped character stands for itself.


automatically generated by info2www version 1.2.2.9