mirror of
https://github.com/helix-editor/helix.git
synced 2025-01-18 21:17:08 +04:00
Update docs
This commit is contained in:
parent
10f9f72232
commit
cd0ecded1f
@ -3,6 +3,7 @@ # Summary
|
|||||||
- [Installation](./install.md)
|
- [Installation](./install.md)
|
||||||
- [Usage](./usage.md)
|
- [Usage](./usage.md)
|
||||||
- [Configuration](./configuration.md)
|
- [Configuration](./configuration.md)
|
||||||
|
- [Themes](./themes.md)
|
||||||
- [Keymap](./keymap.md)
|
- [Keymap](./keymap.md)
|
||||||
- [Key Remapping](./remapping.md)
|
- [Key Remapping](./remapping.md)
|
||||||
- [Hooks](./hooks.md)
|
- [Hooks](./hooks.md)
|
||||||
|
@ -1,97 +1,10 @@
|
|||||||
# Configuration
|
# Configuration
|
||||||
|
|
||||||
|
To override global configuration parameters create a `config.toml` file located in your config directory (i.e `~/.config/helix/config.toml`).
|
||||||
|
|
||||||
## LSP
|
## LSP
|
||||||
|
|
||||||
To disable language server progress report from being displayed in the status bar add this option to your `config.toml`:
|
To disable language server progress report from being displayed in the status bar add this option to your `config.toml`:
|
||||||
```toml
|
```toml
|
||||||
lsp-progress = false
|
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).
|
|
||||||
|
|
||||||
Styles in theme.toml are specified of in the form:
|
|
||||||
|
|
||||||
```toml
|
|
||||||
key = { fg = "#ffffff", bg = "#000000", modifiers = ["bold", "italic"] }
|
|
||||||
```
|
|
||||||
|
|
||||||
where `name` represents what you want to style, `fg` specifies the foreground color, `bg` the background color, and `modifiers` is a list of style modifiers. `bg` and `modifiers` can be omitted to defer to the defaults.
|
|
||||||
|
|
||||||
To specify only the foreground color:
|
|
||||||
|
|
||||||
```toml
|
|
||||||
key = "#ffffff"
|
|
||||||
```
|
|
||||||
|
|
||||||
if the key contains a dot `'.'`, it must be quoted to prevent it being parsed as a [dotted key](https://toml.io/en/v1.0.0#keys).
|
|
||||||
|
|
||||||
```toml
|
|
||||||
"key.key" = "#ffffff"
|
|
||||||
```
|
|
||||||
|
|
||||||
Possible modifiers:
|
|
||||||
|
|
||||||
| Modifier |
|
|
||||||
| --- |
|
|
||||||
| `bold` |
|
|
||||||
| `dim` |
|
|
||||||
| `italic` |
|
|
||||||
| `underlined` |
|
|
||||||
| `slow_blink` |
|
|
||||||
| `rapid_blink` |
|
|
||||||
| `reversed` |
|
|
||||||
| `hidden` |
|
|
||||||
| `crossed_out` |
|
|
||||||
|
|
||||||
Possible keys:
|
|
||||||
|
|
||||||
| Key | Notes |
|
|
||||||
| --- | --- |
|
|
||||||
| `attribute` | |
|
|
||||||
| `keyword` | |
|
|
||||||
| `keyword.directive` | Preprocessor directives (\#if in C) |
|
|
||||||
| `namespace` | |
|
|
||||||
| `punctuation` | |
|
|
||||||
| `punctuation.delimiter` | |
|
|
||||||
| `operator` | |
|
|
||||||
| `special` | |
|
|
||||||
| `property` | |
|
|
||||||
| `variable` | |
|
|
||||||
| `variable.parameter` | |
|
|
||||||
| `type` | |
|
|
||||||
| `type.builtin` | |
|
|
||||||
| `constructor` | |
|
|
||||||
| `function` | |
|
|
||||||
| `function.macro` | |
|
|
||||||
| `function.builtin` | |
|
|
||||||
| `comment` | |
|
|
||||||
| `variable.builtin` | |
|
|
||||||
| `constant` | |
|
|
||||||
| `constant.builtin` | |
|
|
||||||
| `string` | |
|
|
||||||
| `number` | |
|
|
||||||
| `escape` | Escaped characters |
|
|
||||||
| `label` | For lifetimes |
|
|
||||||
| `module` | |
|
|
||||||
| `ui.background` | |
|
|
||||||
| `ui.linenr` | |
|
|
||||||
| `ui.linenr.selected` | For lines with cursors |
|
|
||||||
| `ui.statusline` | |
|
|
||||||
| `ui.popup` | |
|
|
||||||
| `ui.window` | |
|
|
||||||
| `ui.help` | |
|
|
||||||
| `ui.text` | |
|
|
||||||
| `ui.text.focus` | |
|
|
||||||
| `ui.menu.selected` | |
|
|
||||||
| `ui.selection` | For selections in the editing area |
|
|
||||||
| `warning` | LSP warning |
|
|
||||||
| `error` | LSP error |
|
|
||||||
| `info` | LSP info |
|
|
||||||
| `hint` | LSP hint |
|
|
||||||
|
|
||||||
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.
|
|
||||||
|
|
||||||
|
94
book/src/themes.md
Normal file
94
book/src/themes.md
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
# Themes
|
||||||
|
|
||||||
|
First you'll need to place selected themes in your `themes` directory (i.e `~/.config/helix/themes`), the directory might have to be created beforehand.
|
||||||
|
|
||||||
|
To use a custom theme add `theme = <name>` to your [`config.toml`](./configuration.md) or override it during runtime using `:theme <name>`.
|
||||||
|
|
||||||
|
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).
|
||||||
|
|
||||||
|
## Creating a theme
|
||||||
|
|
||||||
|
First create a file with the name of your theme as file name (i.e `mytheme.toml`) and place it in your `themes` directory (i.e `~/.config/helix/themes`).
|
||||||
|
|
||||||
|
Each line in the theme file is specified as below:
|
||||||
|
|
||||||
|
```toml
|
||||||
|
key = { fg = "#ffffff", bg = "#000000", modifiers = ["bold", "italic"] }
|
||||||
|
```
|
||||||
|
|
||||||
|
where `key` represents what you want to style, `fg` specifies the foreground color, `bg` the background color, and `modifiers` is a list of style modifiers. `bg` and `modifiers` can be omitted to defer to the defaults.
|
||||||
|
|
||||||
|
To specify only the foreground color:
|
||||||
|
|
||||||
|
```toml
|
||||||
|
key = "#ffffff"
|
||||||
|
```
|
||||||
|
|
||||||
|
if the key contains a dot `'.'`, it must be quoted to prevent it being parsed as a [dotted key](https://toml.io/en/v1.0.0#keys).
|
||||||
|
|
||||||
|
```toml
|
||||||
|
"key.key" = "#ffffff"
|
||||||
|
```
|
||||||
|
|
||||||
|
Possible modifiers:
|
||||||
|
|
||||||
|
| Modifier |
|
||||||
|
| --- |
|
||||||
|
| `bold` |
|
||||||
|
| `dim` |
|
||||||
|
| `italic` |
|
||||||
|
| `underlined` |
|
||||||
|
| `slow\_blink` |
|
||||||
|
| `rapid\_blink` |
|
||||||
|
| `reversed` |
|
||||||
|
| `hidden` |
|
||||||
|
| `crossed\_out` |
|
||||||
|
|
||||||
|
Possible keys:
|
||||||
|
|
||||||
|
| Key | Notes |
|
||||||
|
| --- | --- |
|
||||||
|
| `attribute` | |
|
||||||
|
| `keyword` | |
|
||||||
|
| `keyword.directive` | Preprocessor directives (\#if in C) |
|
||||||
|
| `namespace` | |
|
||||||
|
| `punctuation` | |
|
||||||
|
| `punctuation.delimiter` | |
|
||||||
|
| `operator` | |
|
||||||
|
| `special` | |
|
||||||
|
| `property` | |
|
||||||
|
| `variable` | |
|
||||||
|
| `variable.parameter` | |
|
||||||
|
| `type` | |
|
||||||
|
| `type.builtin` | |
|
||||||
|
| `constructor` | |
|
||||||
|
| `function` | |
|
||||||
|
| `function.macro` | |
|
||||||
|
| `function.builtin` | |
|
||||||
|
| `comment` | |
|
||||||
|
| `variable.builtin` | |
|
||||||
|
| `constant` | |
|
||||||
|
| `constant.builtin` | |
|
||||||
|
| `string` | |
|
||||||
|
| `number` | |
|
||||||
|
| `escape` | Escaped characters |
|
||||||
|
| `label` | For lifetimes |
|
||||||
|
| `module` | |
|
||||||
|
| `ui.background` | |
|
||||||
|
| `ui.linenr` | |
|
||||||
|
| `ui.statusline` | |
|
||||||
|
| `ui.popup` | |
|
||||||
|
| `ui.window` | |
|
||||||
|
| `ui.help` | |
|
||||||
|
| `ui.text` | |
|
||||||
|
| `ui.text.focus` | |
|
||||||
|
| `ui.menu.selected` | |
|
||||||
|
| `ui.selection` | For selections in the editing area |
|
||||||
|
| `warning` | LSP warning |
|
||||||
|
| `error` | LSP error |
|
||||||
|
| `info` | LSP info |
|
||||||
|
| `hint` | LSP hint |
|
||||||
|
|
||||||
|
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.
|
Loading…
Reference in New Issue
Block a user