diff --git a/book/src/keymap.md b/book/src/keymap.md index 71ae5e31f..f630bd31b 100644 --- a/book/src/keymap.md +++ b/book/src/keymap.md @@ -11,6 +11,7 @@ - [Goto mode](#goto-mode) - [Match mode](#match-mode) - [Window mode](#window-mode) + - [Case Mode](#case-mode) - [Space mode](#space-mode) - [Popup](#popup) - [Completion Menu](#completion-menu) @@ -70,8 +71,6 @@ Normal mode is the default mode when you launch helix. You can return to it from | `r` | Replace with a character | `replace` | | `R` | Replace with yanked text | `replace_with_yanked` | | `~` | Switch case of the selected text | `switch_case` | -| `` ` `` | Set the selected text to lower case | `switch_to_lowercase` | -| `` Alt-` `` | Set the selected text to upper case | `switch_to_uppercase` | | `i` | Insert before selection | `insert_mode` | | `a` | Insert after selection (append) | `append_mode` | | `I` | Insert at the start of the line | `insert_at_line_start` | @@ -169,6 +168,7 @@ These sub-modes are accessible from normal mode and typically switch back to nor | ----- | ----------- | ------- | | `v` | Enter [select (extend) mode](#select--extend-mode) | `select_mode` | | `g` | Enter [goto mode](#goto-mode) | N/A | +| ` ` ` | Enter [case mode](#case-mode) | N/A | | `m` | Enter [match mode](#match-mode) | N/A | | `:` | Enter command mode | `command_mode` | | `z` | Enter [view mode](#view-mode) | N/A | @@ -232,6 +232,32 @@ Jumps to various locations. | `k` | Move up textual (instead of visual) line | `move_line_up` | | `w` | Show labels at each word and select the word that belongs to the entered labels | `goto_word` | +#### Case mode + +Accessed by typing ` ` ` in [normal mode](#normal-mode). + +Various functions for changing case of text in different ways. + + "a" => switch_to_alternate_case, + "l" => switch_to_lowercase, + "u" => switch_to_uppercase, + "p" => switch_to_pascal_case, + "c" => switch_to_camel_case, + "t" => switch_to_title_case, + "s" => switch_to_snake_case, + "k" => switch_to_kebab_case, +| Key | Description | Command | +| ----- | ----------- | ------- | +| `l` | Switch all text to lowercase | `switch_to_lowercase` | +| `u` | Switch all text to UPPERCASE | `switch_to_uppercase` | +| `p` | Switch text to Pascal Case | `switch_to_pascal_case` | +| `c` | Switch text to camelCase | `switch_to_camel_case` | +| `t` | Switch text to Title Case | `switch_to_title_case` | +| `s` | Switch text to snake_case | `switch_to_snake_case` | +| `k` | Switch text to kebab-case | `switch_to_kebab_case` | + +TODO: Mappings for selecting syntax nodes (a superset of `[`). + #### Match mode Accessed by typing `m` in [normal mode](#normal-mode).