Key Remapping
+One-way key remapping is temporarily supported via a simple TOML configuration +file. (More powerful solutions such as rebinding via commands will be +available in the feature).
+To remap keys, write a config.toml
file in your helix
configuration
+directory (default ~/.config/helix
in Linux systems) with a structure like
+this:
# At most one section each of 'keys.normal', 'keys.insert' and 'keys.select'
+[keys.normal]
+a = "move_char_left" # Maps the 'a' key to the move_char_left command
+w = "move_line_up" # Maps the 'w' key move_line_up
+C-S-esc = "select_line" # Maps Control-Shift-Escape to select_line
+
+[keys.insert]
+A-x = "normal_mode" # Maps Alt-X to enter normal mode
+
+Control, Shift and Alt modifiers are encoded respectively with the prefixes
+C-
, S-
and A-
. Special keys are encoded as follows:
-
+
- Backspace => "backspace" +
- Space => "space" +
- Return/Enter => "ret" +
- < => "lt" +
-
+
+
+=> "gt"
+
+ -
+
-
+
- => "plus" +
+ -
+
-
+
- => "minus" +
+ - ; => "semicolon" +
- % => "percent" +
- Left => "left" +
- Right => "right" +
- Up => "up" +
- Home => "home" +
- End => "end" +
- Page Up => "pageup" +
- Page Down => "pagedown" +
- Tab => "tab" +
- Back Tab => "backtab" +
- Delete => "del" +
- Insert => "ins" +
- Null => "null" +
- Escape => "esc" +
Commands can be found in the source code at ../../helix-term/src/commands.rs