Skip to content

Keys

Every function of Bella Commander is an action with an id like pane.copy, and every action can get a key. The list of all actions and their keys shows the ids and the defaults.

Presets

keymap.toml (Edit keymap, ⌘K ⌘S / Ctrl+K Ctrl+S) starts with a preset:

preset = "total-commander"   # total-commander | macos
  • total-commander (the default): function keys as in Total Commander, F5 copy, F6 move, F7 new folder, F8 delete.
  • macos: the same, with keys macOS users expect in some places, e.g. ⌘C and ⌘V in the terminal.

Your own bindings below are applied on top of the preset.

Your own keys

[[bindings]]
context = "FilePane"
keys = { "f2" = "pane.rename", "mod-shift-n" = "pane.mkdir", "shift-f6" = "" }
  • Keys are written like mod-shift-n: the modifiers ctrl, alt, shift, cmd and mod, then the key, joined with -. mod is Cmd on macOS and Ctrl on Windows and Linux, so one binding works everywhere.
  • Key names: letters and digits, f1 to f24, enter, escape, tab, space, backspace, delete, insert, up, down, left, right, home, end, pageup, pagedown, num+, num-, num*, punctuation like comma, period, slash, backslash.
  • Chords: several keys after each other, separated by a space: "mod-k mod-s".
  • Removing a preset key: map it to "".
  • Per system: platforms = ["macos"] (or "windows", "linux") in a [[bindings]] block limits it to those systems.

Contexts

A key belongs to a context, the place where it works. The same key can do different things in different contexts.

Context Where
Global everywhere in the main window
FilePane the file panes
Sidebar the sidebar, when it has the keyboard
Terminal the terminal panel
Palette the command palette and go to anything
Dialog dialogs (copy, search, license, ...)
Conflict the question when a file exists
Menu the context menu
Viewer, ViewerSearch the F3 viewer, its search field
Compare the compare window
Rename, RenameList, RenameInsert, RenamePresets, RenamePicker the multi-rename window, its list, the placeholder panel, the preset list, the range picker
TagEditor, TagList, TagChoices the audio tag editor, its list, the list of values of a field
Sync, SyncInput, SyncConfirm the synchronize window, its folder and filter fields, the confirmation

Keys of Global work in the panes too, unless FilePane binds the same key.

Conflicts and mistakes

After saving, run Reload settings from the command palette. A key that cannot be read, an unknown action, or a key that can never work (a shorter key in the same context starts the same way, like mod-k before mod-k mod-s) shows in the status line; the rest of the keymap works.