3To override global configuration parameters, create a `config.toml` file located in your config directory:
5* Linux and Mac: `~/.config/helix/config.toml`
6* Windows: `%AppData%\helix\config.toml`
14line-number = "relative"
30| Key | Description | Default |
32| `scrolloff` | Number of lines of padding around the edge of the screen when scrolling. | `3` |
33| `mouse` | Enable mouse mode. | `true` |
34| `middle-click-paste` | Middle click paste support. | `true` |
35| `scroll-lines` | Number of lines to scroll per scroll wheel step. | `3` |
36| `shell` | Shell to use when running external commands. | Unix: `["sh", "-c"]`<br/>Windows: `["cmd", "/C"]` |
37| `line-number` | Line number display: `absolute` simply shows each line's number, while `relative` shows the distance from the current line. When unfocused or in insert mode, `relative` will still show absolute line numbers. | `absolute` |
38| `smart-case` | Enable smart case regex searching (case insensitive unless pattern contains upper case characters) | `true` |
39| `auto-pairs` | Enable automatic insertion of pairs to parenthese, brackets, etc. | `true` |
40| `auto-completion` | Enable automatic pop up of auto-completion. | `true` |
41| `idle-timeout` | Time in milliseconds since last keypress before idle timers trigger. Used for autocompletion, set to 0 for instant. | `400` |
42| `completion-trigger-len` | The min-length of word under cursor to trigger autocompletion | `2` |
43| `auto-info` | Whether to display infoboxes | `true` |
44| `true-color` | Set to `true` to override automatic detection of terminal truecolor support in the event of a false negative. | `false` |
46### `[editor.cursor-shape]` Section
48Defines the shape of cursor in each mode. Note that due to limitations
49of the terminal environment, only the primary cursor can change shape.
51| Key | Description | Default |
52| --- | ----------- | ------- |
53| `normal` | Cursor shape in [normal mode][normal mode] | `block` |
54| `insert` | Cursor shape in [insert mode][insert mode] | `block` |
55| `select` | Cursor shape in [select mode][select mode] | `block` |
57[normal mode]: ./keymap.md#normal-mode
58[insert mode]: ./keymap.md#insert-mode
59[select mode]: ./keymap.md#select--extend-mode
61### `[editor.file-picker]` Section
63Sets options for file picker and global search. All but the last key listed in
64the default file-picker configuration below are IgnoreOptions: whether hidden
65files and files listed within ignore files are ignored by (not visible in) the
66helix file picker and global search. There is also one other key, `max-depth`
67available, which is not defined by default.
69| Key | Description | Default |
71|`hidden` | Enables ignoring hidden files. | true
72|`parents` | Enables reading ignore files from parent directories. | true
73|`ignore` | Enables reading `.ignore` files. | true
74|`git-ignore` | Enables reading `.gitignore` files. | true
75|`git-global` | Enables reading global .gitignore, whose path is specified in git's config: `core.excludefile` option. | true
76|`git-exclude` | Enables reading `.git/info/exclude` files. | true
77|`max-depth` | Set with an integer value for maximum depth to recurse. | Defaults to `None`.
81To display all language server messages in the status line add the following to your `config.toml`:
84display-messages = true
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list