[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

21.13 Disabling Commands

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 init file (see section 40.1.2 The Init File, `.emacs') with Lisp expressions such as this:

 
(put 'upcase-region 'disabled t)

For a few commands, these properties are present by default (you can remove them in your init file if you wish).

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 section `Disabling' in The GNU Emacs 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.

Command: enable-command command
Allow command to be executed without special confirmation from now on, and (if the user confirms) alter the user's init file (see section 40.1.2 The Init File, `.emacs') so that this will apply to future sessions.

Command: disable-command command
Require special confirmation to execute command from now on, and (if the user confirms) alter the user's init file so that this will apply to future sessions.

Variable: disabled-command-hook
When the user invokes a disabled command interactively, this normal hook is run instead of the disabled command. 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 section 23.6 Hooks.

By default, disabled-command-hook contains a function that asks the user whether to proceed.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

This document was generated on May 2, 2002 using texi2html