diff options
Diffstat (limited to 'book/src')
-rw-r--r-- | book/src/SUMMARY.md | 1 | ||||
-rw-r--r-- | book/src/configuration.md | 14 | ||||
-rw-r--r-- | book/src/install.md | 7 | ||||
-rw-r--r-- | book/src/remapping.md | 48 |
4 files changed, 65 insertions, 5 deletions
diff --git a/book/src/SUMMARY.md b/book/src/SUMMARY.md index 474c2e70..3ea1fb9a 100644 --- a/book/src/SUMMARY.md +++ b/book/src/SUMMARY.md @@ -4,4 +4,5 @@ - [Usage](./usage.md) - [Configuration](./configuration.md) - [Keymap](./keymap.md) + - [Key Remapping](./remapping.md) - [Hooks](./hooks.md) diff --git a/book/src/configuration.md b/book/src/configuration.md index 649aa21f..51a08e03 100644 --- a/book/src/configuration.md +++ b/book/src/configuration.md @@ -1,5 +1,12 @@ # Configuration +## LSP + +To disable language server progress report from being displayed in the status bar add this option to your `config.toml`: +```toml +lsp-progress = false +``` + ## Theme Use a custom theme by placing a theme.toml in your config directory (i.e ~/.config/helix/theme.toml). The default theme.toml can be found [here](https://github.com/helix-editor/helix/blob/master/theme.toml), and user submitted themes [here](https://github.com/helix-editor/helix/blob/master/contrib/themes). @@ -32,11 +39,11 @@ Possible modifiers: | `dim` | | `italic` | | `underlined` | -| `slow\_blink` | -| `rapid\_blink` | +| `slow_blink` | +| `rapid_blink` | | `reversed` | | `hidden` | -| `crossed\_out` | +| `crossed_out` | Possible keys: @@ -87,3 +94,4 @@ Possible keys: These keys match [tree-sitter scopes](https://tree-sitter.github.io/tree-sitter/syntax-highlighting#theme). We half-follow the common scopes from [macromates language grammars](https://macromates.com/manual/en/language_grammars) with some differences. For a given highlight produced, styling will be determined based on the longest matching theme key. So it's enough to provide function to highlight `function.macro` and `function.builtin` as well, but you can use more specific scopes to highlight specific cases differently. + diff --git a/book/src/install.md b/book/src/install.md index 0a08af8c..e81034ce 100644 --- a/book/src/install.md +++ b/book/src/install.md @@ -4,9 +4,12 @@ We provide pre-built binaries on the [GitHub Releases page](https://github.com/h ## OSX -TODO: brew tap +A Homebrew tap is available: -Please use a pre-built binary release for the time being. +``` +brew tap helix-editor/helix +brew install helix +``` ## Linux diff --git a/book/src/remapping.md b/book/src/remapping.md new file mode 100644 index 00000000..610d5179 --- /dev/null +++ b/book/src/remapping.md @@ -0,0 +1,48 @@ +# 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: + +```toml +# 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` |