theme = "custom" # monokai_soda, kaolin-valley-dark, material_deep_ocean, carbonfox [editor] # no you don't mouse = false middle-click-paste = false scroll-lines = 0 shell = ["fish", "-c"] line-number = "relative" cursorline = true continue-comments = false # annoying auto-completion = true # TODO: is it annoying? completion-replace = true # why is it not default auto-format = true auto-info = true # TODO: idle-timeout? # true-color = true # undercurl = true rulers = [80, 100] bufferline = "multiple" # never, always, multiple color-modes = false # mode indicator color insert-final-newline = true # POSIX lines finish with \n popup-border = "all" # popup, menu, all, none jump-label-alphabet = "tneiouykhsrafwvd" end-of-line-diagnostics = "hint" # disable, error, warning, info, hint [editor.inline-diagnostics] cursor-line = "warning" other-lines = "error" prefix-len = 1 max-diagnostics = 5 # 10 [editor.statusline] mode = { normal = "N", insert = "I", select = "S" } left = [ "mode", "spinner", "version-control", "file-name", "read-only-indicator", "file-modification-indicator", "file-type", "file-line-ending", "file-encoding", ] right = [ "register", "diagnostics", "workspace-diagnostics", "selections", "primary-selection-length", "position", "position-percentage", "total-line-numbers", ] [editor.lsp] display-progress-messages = true # looks cool auto-signature-help = true display-inlay-hints = false # meh [editor.cursor-shape] normal = "block" insert = "bar" select = "underline" [editor.file-picker] hidden = true [editor.whitespace.render] tab = "all" nbsp = "all" nnbsp = "all" space = "none" newline = "none" [editor.whitespace.characters] tab = 'σ°Œ’' nbsp = '⍽' nnbsp = '␣' space = 'πŸž„' newline = 'ξŽ€' [editor.indent-guides] render = true character = "┆" # "β•Ž", "▏", "┆", "β”Š", "βΈ½" skip-levels = 1 [editor.gutters] layout = ["diff", "diagnostics", "line-numbers", "spacer"] # TODO: don't like line-numbers.min-width = 1 [editor.soft-wrap] enable = true max-wrap = 20 # increase to reduce forced wrapping max-indent-retain = 24 # 40 wrap-indicator = "β†ͺ" [keys.insert] C-space = "signature_help" S-tab = "move_parent_node_start" [keys.select] x = "extend_line" # a = ["append_mode", "collapse_selection"] tab = "extend_parent_node_end" S-tab = "extend_parent_node_start" ";" = ["collapse_selection", "normal_mode"] V = ["extend_to_line_bounds", "trim_selections"] D = ["ensure_selections_forward", "extend_to_line_end"] [keys.normal] x = "extend_line" "=" = ":format" "A-=" = "format_selections" V = ["extend_to_line_bounds", "trim_selections"] D = ["ensure_selections_forward", "extend_to_line_end"] L = "goto_next_buffer" H = "goto_previous_buffer" C-space = "signature_help" tab = "move_parent_node_end" S-tab = "move_parent_node_start" # C-q = "wclose" C-k = "jump_view_up" C-h = "jump_view_left" C-j = "jump_view_down" C-l = "jump_view_right" A-j = ["extend_to_line_bounds", "delete_selection", "paste_after"] A-k = [ "extend_to_line_bounds", "delete_selection", "move_line_up", "paste_before", ] A-J = ["extend_to_line_bounds", "yank", "paste_after"] A-K = ["extend_to_line_bounds", "yank", "paste_before"] [keys.normal.space] '.' = ":config-reload" e = ":reload" E = ":reload-all" q = ":buffer-close" Q = ":buffer-close-all" o = ":buffer-close-others" n = "file_picker_in_current_buffer_directory" # Toggle [keys.normal.space.t] f = ":toggle auto-format" c = ":toggle cursorline" w = ":toggle soft-wrap.enable" n = ":toggle line-number absolute relative" b = ":toggle bufferline never multiple" r = ":set-option rulers []" R = ":set-option rulers [80,100]" g = ":toggle indent-guides.render" i = ":toggle lsp.display-inlay-hints" e = ":toggle end-of-line-diagnostics disable hint" d = ":toggle inline-diagnostics.other-lines disable error" D = ":toggle inline-diagnostics.cursor-line disable warning" z = [ # TODO: not work ":set-option cursorline true", ":set-option rulers [100]", ":set-option soft-wrap.enable false", ":set-option line-number relative", ':set-option gutters.layout ["line-numbers","spacer"]', ":set-option bufferline never", ":set-option indent-guides.render true", ":set-option lsp.display-inlay-hints false", ":set-option end-of-line-diagnostics disable", ":set-option inline-diagnostics.other-lines disable", ":set-option inline-diagnostics.cursor-line disable", ]