Provided by: aerc_0.20.0-1_amd64 bug

NAME

       aerc-binds - key bindings configuration file format for aerc(1)

SYNOPSIS

       The  binds.conf  file  is  used  for  configuring  keybindings used in the aerc interactive client. It is
       expected to be in your XDG config home plus aerc, which defaults  to  ~/.config/aerc/binds.conf.  If  the
       file  does  not exist, the built-in default will be installed. An alternate file can be specified via the
       --binds-conf command line argument, see aerc(1).

       This file is written in the ini format with key bindings defined as:

           <key sequence> = <command>

       Where <key sequence> is the keystrokes pressed (in  order)  to  invoke  this  keybinding,  and  <command>
       specifies  keystrokes  that  aerc will simulate when the keybinding is invoked. Generally this is used to
       execute commands, for example:

           rq = :reply -q<Enter>

       Pressing r, then q, will simulate typing in :reply -q<Enter>, and execute :reply -q  accordingly.  It  is
       also possible to invoke keybindings recursively in a similar fashion.

       You  may configure different keybindings for different contexts by writing them into different [sections]
       of the ini file.

CONTEXTS

       The available contexts are:

       [messages]
           keybindings for the message list

       [view]
           keybindings for the message viewer

       [view::passthrough]
           keybindings for the viewer, when in key passthrough mode (toggled with :toggle-key-passthrough)

       [compose]
           keybindings for the message composer

       [compose::editor]
           keybindings for the composer, when the editor is focused

       [compose::review]
           keybindings for the composer, when reviewing the email before it's sent

           To customize the description shown on the review screen, add a comment (" # ")  at  the  end  of  the
           keybinding. Example:

               p = :postpone<Enter> # I'll work on it later

           The  order  in which bindings are defined is preserved on the review screen. If a non-default binding
           is not annotated it will be displayed without any description.

           To hide a binding from the review screen, explicitly annotate it with a " # -" comment. Example:

               <C-e> = :encrypt<Enter> # -

       [terminal]
           keybindings for terminal tabs

       You may also configure account specific key bindings for each context:

       [context:account=AccountName]
           keybindings for this context and account, where AccountName is a regular expression that matches  the
           account name you provided in accounts.conf.

       Folder and context-specific bindings can be configured for message lists:

       [messages:folder=FolderName]
       [view:folder=FolderName]
       [compose:folder=FolderName]
       [compose::editor:folder=FolderName]
       [compose::review:folder=FolderName]
           keybindings  under  this  section  will be specific to the folder that matches the regular expression
           FolderName. Keybindings from a folder specifier will take precedence over account specifiers

       Examples:

           [messages:account=Mailbox]
           c = :cf path:mailbox/** and<space>

           [compose::editor:account=Mailbox2]

           [compose::editor:folder=aerc]
           y = :send -t aerc

           [messages:folder=Drafts]
           <Enter> = :recall<Enter>

           [messages:folder=Archive/d+/.*]
           gi = :cf Inbox<Enter>
           ...

       You may also configure global keybindings by placing them at the beginning of the file, before specifying
       any context-specific sections.

       Parent keybindings can be erased in the context ones by specifying an "empty" binding:

           [compose::review]
           a = :attach<space>
           d = :detach<space>

           [compose::review:account=no-attachments]
           a =
           d =

SPECIAL OPTIONS

       In addition of user defined key sequences, the following special options are available  in  each  binding
       context:

       $noinherit = true|false
           If set to true, global keybindings will not be effective in this context.

           Default: false

       $ex = <key-stroke>
           This can be set to a keystroke which will bring up the command input in this context.

           Default: :

       $complete = <key-stroke>
           This  can be set to a keystroke which will trigger command completion in this context for text inputs
           that support it.

           Default: <tab>

           Note: automatic command completion is disabled when simulating keystrokes and re-enabled at the  end.
           When  [ui].completion-min-chars  is  set  to  manual  (see  aerc-config(5)),  it is possible to end a
           keybinding with the completion key to explicitly display the completion menu. E.g.:

               o = :cf<space><tab>

SUPPORTED KEYS

       In addition to letters and some characters (e.g. a, RR, gu, ?, !, etc.), special keys may be specified in
       <angle brackets>. The syntax for modified or special keys is:

           <C-A-S-key>

       Where C is control, A is alt, S is shift, and key is the named key or character.

       Valid key names are:

       ┌─────────────┬──────────────┐
       │ NameDescription  │
       ├─────────────┼──────────────┤
       │ <space>     │     " "      │
       ├─────────────┼──────────────┤
       │ <semicolon> │      ;       │
       ├─────────────┼──────────────┤
       │ <tab>       │     Tab      │
       ├─────────────┼──────────────┤
       │ <enter>     │    Enter     │
       ├─────────────┼──────────────┤
       │ <up>        │   Up arrow   │
       ├─────────────┼──────────────┤
       │ <down>      │  Down arrow  │
       ├─────────────┼──────────────┤
       │ <right>     │ Right arrow  │
       ├─────────────┼──────────────┤
       │ <left>      │  Left arrow  │
       ├─────────────┼──────────────┤
       │ <pgup>      │   Page Up    │
       ├─────────────┼──────────────┤
       │ <pgdn>      │  Page Down   │
       ├─────────────┼──────────────┤
       │ <home>      │     Home     │
       ├─────────────┼──────────────┤
       │ <end>       │     End      │
       ├─────────────┼──────────────┤
       │ <insert>    │    Insert    │
       ├─────────────┼──────────────┤
       │ <delete>    │    Delete    │
       ├─────────────┼──────────────┤
       │ <backspace> │  Backspace   │
       ├─────────────┼──────────────┤
       │ <exit>      │     Exit     │
       ├─────────────┼──────────────┤
       │ <cancel>    │    Cancel    │
       ├─────────────┼──────────────┤
       │ <print>     │ Print screen │
       ├─────────────┼──────────────┤
       │ <pause>     │    Pause     │
       ├─────────────┼──────────────┤
       │ <backtab>   │  Shift+Tab   │
       ├─────────────┼──────────────┤
       │ <esc>       │    Escape    │
       └─────────────┴──────────────┘

SEE ALSO

       aerc(1) aerc-config(5)

AUTHORS

       Originally created by Drew DeVault and maintained by Robin Jarry who is assisted  by  other  open  source
       contributors. For more information about aerc development, see https://sr.ht/~rjarry/aerc/.

                                                   2025-01-25                                      AERC-BINDS(5)