nixos/nate/dotfiles/helix/config.toml

167 lines
3.1 KiB
TOML
Raw Normal View History

2023-12-14 17:23:01 -07:00
# Theme
2024-03-17 20:46:31 -06:00
theme = "catppuccin_macchiato"
2023-12-14 17:23:01 -07:00
[keys.normal]
# Navigation
n = "move_char_left" # Maps the 'a' key to the move_char_left command
i = "move_visual_line_down"
e = "move_visual_line_up"
o = "move_char_right"
2024-03-17 20:46:31 -06:00
I = "page_down"
E = "page_up"
2023-12-14 17:23:01 -07:00
# Modes
h = "insert_mode"
2024-03-17 20:46:31 -06:00
H = "insert_at_line_start"
2023-12-14 17:23:01 -07:00
l = "open_below"
L = "open_above"
# Search
k = "search_next"
K = "search_prev"
2024-03-17 20:46:31 -06:00
# Selection
C-s = "split_selection_on_newline"
C-minus = "merge_selections"
C-_ = "merge_consecutive_selections"
"C-;" = "flip_selections"
"C-:" = "ensure_selections_forward"
"C-," = "remove_primary_selection"
C-c = "change_selection_noyank"
C-d = "delete_selection_noyank"
"C-(" = "rotate_selection_contents_backward"
"C-)" = "rotate_selection_contents_forward"
C-x = "shrink_to_line_bounds"
C-J = "join_selections_space"
C-K = "remove_selections"
C-o = "expand_selection"
C-i = "shrink_selection"
C-p = "select_prev_sibling"
C-n = "select_next_sibling"
# Misc
"C-/" = "toggle_comments"
[keys.normal."C-space"]
x = ":wbc!"
s = ":w!" # save file
o = ":config-open"
2023-12-14 17:23:01 -07:00
[keys.normal.g]
2024-03-17 20:46:31 -06:00
"/" = "goto_next_buffer"
h = "goto_previous_buffer"
n = ["collapse_selection", "extend_to_line_start"]
o = ["collapse_selection", "extend_to_line_end"]
e = "move_line_up"
i = "move_line_down"
l = "goto_last_line"
p = "no_op"
k = "no_op"
j = "no_op"
[keys.normal.m]
m = ["select_mode", "match_brackets", "normal_mode"]
2023-12-14 17:23:01 -07:00
[keys.select]
2024-03-17 20:46:31 -06:00
n = "extend_char_left"
i = "extend_line_down"
e = "extend_line_up"
o = "extend_char_right"
[keys.select.g]
"/" = "goto_next_buffer"
h = "goto_previous_buffer"
n = "goto_line_start"
o = "goto_line_end"
e = "move_line_up"
i = "move_line_down"
l = "goto_last_line"
p = "no_op"
k = "no_op"
j = "no_op"
# Window mode
[keys.normal."C-w"]
h = "hsplit"
C-h = "hsplit"
n = "jump_view_left"
C-n = "jump_view_left"
i = "jump_view_down"
I = "swap_view_down"
C-i = "jump_view_down"
e = "jump_view_up"
E = "swap_view_up"
C-e = "jump_view_up"
o = "jump_view_right"
O = "swap_view_right"
C-o = "jump_view_right"
# Remove old
s = "no_op"
C-s = "no_op"
H = "no_op"
j = "no_op"
J = "no_op"
C-j = "no_op"
k = "no_op"
K = "no_op"
C-k = "no_op"
l = "no_op"
L = "no_op"
C-l = "no_op"
[keys.normal."space"]
h = "hover"
k = "select_references_to_symbol_under_cursor"
2023-12-14 17:23:01 -07:00
[editor]
bufferline = "multiple"
auto-save = true
line-number = "relative"
cursorline = true
color-modes = true
text-width = 120
auto-format = true
[editor.statusline]
left = ["mode", "spinner", "version-control", "file-name"]
mode.normal = "Normal"
mode.insert = "Insert"
mode.select = "Select"
[editor.indent-guides]
render = true
[editor.lsp]
display-messages = true
[editor.cursor-shape]
insert = "bar"
normal = "block"
select = "underline"
[editor.file-picker]
hidden = false
[editor.whitespace.render]
space = "all"
tab = "all"
tabpad = "all"
newline = "none"
nbsp = "none"
[editor.whitespace.characters]
space = "·"
tab = "⇀"
tabpad = " "
#w = "move_line_up" # Maps the 'w' key move_line_up
#"C-S-esc" = "extend_line" # Maps Ctrl-Shift-Escape to extend_line
#g = { a = "code_action" } # Maps `ga` to show possible code actions
#"ret" = ["open_below", "normal_mode"] # Maps the enter key to open_below then re-enter normal mode