Last active
November 14, 2025 17:16
-
-
Save zvakanaka/c89d0c082be8a525e7f996283919c195 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # <space>? to see keys | |
| # detect external file changes requires :reload https://github.com/helix-editor/helix/discussions/1550 | |
| # setting terminal window title would be nice https://github.com/helix-editor/helix/issues/2436 | |
| # scrolling the right pane in a picker would be nice | |
| # folds would be nice | |
| # https://helix-editor.vercel.app/reference/list-of-themes | |
| theme = "catppuccin_mocha" | |
| [editor.indent-guides] | |
| render = true | |
| [editor.cursor-shape] | |
| insert = "bar" | |
| normal = "block" | |
| select = "underline" | |
| # this nesting is called "minor modes" | |
| # https://helix-editor.vercel.app/configuration/remapping/#minor-modes | |
| [keys.normal."space"] | |
| x = { b = ":buffer-close" } | |
| q = ":quit" | |
| # new daily note | |
| # https://docs.helix-editor.com/command-line.html#expansions | |
| n = { d = ":e %sh{echo ~/dev/Vault/Work/%sh{date +\"%%B %%d, %%Y\"}.md}" } | |
| [keys.normal."space".g] | |
| g = [ | |
| ":write-all", | |
| ":new", | |
| ":insert-output lazygit >/dev/tty", | |
| ":set mouse false", | |
| ":set mouse true", | |
| ":buffer-close!", | |
| ":redraw", | |
| ":reload-all" | |
| ] | |
| # Print the current line's git blame information to the statusline. | |
| b = ":echo %sh{git blame -L %{cursor_line},+1 %{buffer_name}}" | |
| [keys.normal."space".s] | |
| c = ":config-reload" | |
| e = ":e ~/.config/helix/config.toml" | |
| [keys.normal] | |
| "#" = "toggle_comments" | |
| C-c = "no_op" # turn off the default comment functionality | |
| "H" = ":buffer-previous" | |
| "L" = ":buffer-next" | |
| esc = ["collapse_selection", "keep_primary_selection"] | |
| ret = ["move_line_down", "goto_first_nonwhitespace"] | |
| 0 = "goto_line_start" | |
| C-s = ":w" | |
| # move (swap) lines up/down | |
| # https://github.com/helix-editor/helix/discussions/5764#discussioncomment-4854530 | |
| A-j = [ | |
| "keep_primary_selection", | |
| "move_line_down", | |
| "extend_to_line_bounds", | |
| "extend_line_above", | |
| "split_selection_on_newline", | |
| "select_mode", | |
| "goto_line_end_newline", | |
| "normal_mode", | |
| "rotate_selection_contents_forward", | |
| "keep_primary_selection", | |
| "move_line_down" | |
| ] | |
| A-k = [ | |
| "keep_primary_selection", | |
| "extend_to_line_bounds", | |
| "extend_line_above", | |
| "split_selection_on_newline", | |
| "select_mode", | |
| "goto_line_end_newline", | |
| "normal_mode", | |
| "rotate_selection_contents_forward", | |
| "keep_primary_selection" | |
| ] | |
| [keys.insert] | |
| esc = ["collapse_selection", "normal_mode"] | |
| C-s = [":w", "normal_mode"] | |
| A-j = [ | |
| "keep_primary_selection", | |
| "move_line_down", | |
| "extend_to_line_bounds", | |
| "extend_line_above", | |
| "split_selection_on_newline", | |
| "select_mode", | |
| "goto_line_end_newline", | |
| "normal_mode", | |
| "rotate_selection_contents_forward", | |
| "keep_primary_selection", | |
| "move_line_down" | |
| ] | |
| A-k = [ | |
| "keep_primary_selection", | |
| "extend_to_line_bounds", | |
| "extend_line_above", | |
| "split_selection_on_newline", | |
| "select_mode", | |
| "goto_line_end_newline", | |
| "normal_mode", | |
| "rotate_selection_contents_forward", | |
| "keep_primary_selection" | |
| ] | |
| # no support for system paste sync with p (just use system shortcut) | |
| [keys.select] | |
| esc = ["collapse_selection", "keep_primary_selection", "normal_mode"] | |
| 0 = "goto_line_start" | |
| y = ["yank", ":clipboard-yank"] | |
| # no scroll bar yet https://github.com/helix-editor/helix/issues/2210 | |
| # https://docs.helix-editor.com/editor.html | |
| [editor.statusline] | |
| left = ["mode", "spinner", "read-only-indicator", "file-modification-indicator"] | |
| center = ["file-name"] | |
| right = ["diagnostics", "selections", "position", "file-encoding", "file-type", "position-percentage"] | |
| # does the separator even work? seems like it's not showing up | |
| separator = "│" | |
| [editor] | |
| cursorline = true | |
| # ga goes to last accessed file, gp and gn go to previous/next buffer | |
| bufferline = "always" | |
| # line-number = "relative" | |
| color-modes = true | |
| # mouse = false | |
| # Resolve true color detection problems (e.g. on Linux in Windows WSL2) | |
| # such as the error, "theme: theme requires true color support". | |
| true-color = true | |
| rulers = [80] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment