Next: , Up: Defining Drei Commands


18.5.1 Drei Command Tables

Here is a list of the command tables that are always active, along with a note describing what they are used for:

— Command Table: comment-table

Commands for dealing with comments in, for example, source code. For syntaxes that do not have the concept of a comment, many of the commands of this table will not do anything.

— Command Table: deletion-table

Commands that destructively modify buffer contents.

— Command Table: editing-table

Commands that transform the buffer contents somehow (such as transposing two words).

— Command Table: fill-table

Commands that fill (wrap) text.

— Command Table: case-table

Commands that modify the case of characters.

— Command Table: indent-table

Commands that indent text based on the current syntax.

— Command Table: marking-table

Commands that deal with managing the mark or nondestructively copying buffer contents.

— Command Table: movement-table

Commands that move point.

— Command Table: search-table

Commands that can search the buffer.

— Command Table: info-table

Commands that display information about the state of the buffer.

— Command Table: self-insert-table

Commands that insert the gesture used to invoke them into the buffer. You probably won't need to add commands to this table.

— Command Table: editor-table

A command table that inherits from the previously mentioned tables (plus some more). This command table is the “basic” table for accessing Drei commands, and is a good place to put your own user-defined commands if they do not fit in another table.

There are also two conditionally-active command tables:

— Command Table: exclusive-gadget-table

This command table is only active in the gadget version of Drei.

— Command Table: exclusive-input-editor-table

This command table is only active when Drei is used as an input-editor.

When you define keybindings for your commands, you should put the keybindings in the same command table as the command itself.