** Occur Edit mode applies edits made in *Occur* buffers to the
original buffers. It is bound to "e" in Occur mode.
-** New global minor modes electric-pair-mode, electric-indent-mode,
-and electric-layout-mode.
+** New global minor mode electric-pair-mode.
+When enabled, typing an open parenthesis automatically inserts the
+matching closing one.
+
+** New global minor mode electric-indent-mode.
+When enabled, typing certain characters triggers reindentation.
+
+** New global minor mode electric-layout-mode.
+When enabled, typing certain characters automatically inserts newlines.
** tabulated-list.el provides a generic major mode for tabulated data,
from which other modes can be derived.
positive, and disable it otherwise. If called from Lisp, enable
the mode if ARG is omitted or nil.
-Electric Indent mode is a global minor mode. When enabled,
-reindentation is triggered whenever you insert a character listed
-in `electric-indent-chars'."
+This is a global minor mode. When enabled, it reindents whenever
+the hook `electric-indent-functions' returns non-nil, or you
+insert a character from `electric-indent-chars'."
:global t
:group 'electricity
(if (not electric-indent-mode)
(defcustom electric-pair-pairs
'((?\" . ?\"))
"Alist of pairs that should be used regardless of major mode."
+ :group 'electricity
+ :version "24.1"
:type '(repeat (cons character character)))
(defcustom electric-pair-skip-self t
just skip that character instead, so that hitting ( followed by ) results
in \"()\" rather than \"())\".
This can be convenient for people who find it easier to hit ) than C-f."
+ :group 'electricity
+ :version "24.1"
:type 'boolean)
(defun electric-pair-post-self-insert-function ()
Electric Pair mode is a global minor mode. When enabled, typing
an open parenthesis automatically inserts the corresponding
-closing parenthesis. \(Likewise for brackets, etc.)"
+closing parenthesis. \(Likewise for brackets, etc.)
+
+See options `electric-pair-pairs' and `electric-pair-skip-self'."
:global t
:group 'electricity
(if electric-pair-mode
"List of rules saying where to automatically insert newlines.
Each rule has the form (CHAR . WHERE) where CHAR is the char
that was just inserted and WHERE specifies where to insert newlines
-and can be: nil, `before', `after', `around', or a function that returns
-one of those symbols.")
+and can be: nil, `before', `after', `around', or a function of no
+arguments that returns one of those symbols.")
(defun electric-layout-post-self-insert-function ()
(let* ((rule (cdr (assq last-command-event electric-layout-rules)))
"Automatically insert newlines around some chars.
With a prefix argument ARG, enable Electric Layout mode if ARG is
positive, and disable it otherwise. If called from Lisp, enable
-the mode if ARG is omitted or nil."
+the mode if ARG is omitted or nil.
+The variable `electric-layout-rules' says when and how to insert newlines."
:global t
:group 'electricity
(if electric-layout-mode