Next: Command History, Previous: Recursive Editing, Up: Command Loop [Contents][Index]
Disabling a command marks the command as requiring user confirmation before it can be executed. Disabling is used for commands which might be confusing to beginning users, to prevent them from using the commands by accident.
The low-level mechanism for disabling a command is to put a
non-nil
disabled
property on the Lisp symbol for the
command. These properties are normally set up by the user’s
.emacs file with Lisp expressions such as this:
(put 'upcase-region 'disabled t)
For a few commands, these properties are present by default and may be removed by the .emacs file.
If the value of the disabled
property is a string, the message
saying the command is disabled includes that string. For example:
(put 'delete-region 'disabled "Text deleted this way cannot be yanked back!\n")
See Disabling in The SXEmacs User’s Manual, for the details on what happens when a disabled command is invoked interactively. Disabling a command has no effect on calling it as a function from Lisp programs.
Allow command to be executed without special confirmation from now on, and (if the user confirms) alter the user’s .emacs file so that this will apply to future sessions.
Require special confirmation to execute command from now on, and (if the user confirms) alter the user’s .emacs file so that this will apply to future sessions.
This normal hook is run instead of a disabled command, when the user
invokes the disabled command interactively. The hook functions can use
this-command-keys
to determine what the user typed to run the
command, and thus find the command itself. See Hooks.
By default, disabled-command-hook
contains a function that asks
the user whether to proceed.
Next: Command History, Previous: Recursive Editing, Up: Command Loop [Contents][Index]