From c6c255ff885c7219b1a3e6521289409fd268239b Mon Sep 17 00:00:00 2001 From: jolheiser Date: Tue, 5 Aug 2025 21:48:14 -0500 Subject: [PATCH] sttr Signed-off-by: jolheiser --- config.nix | 398 ++++++++++++++++++++++++++++------------------------- 1 file changed, 207 insertions(+), 191 deletions(-) diff --git a/config.nix b/config.nix index 16f2529..f9a7643 100644 --- a/config.nix +++ b/config.nix @@ -39,212 +39,228 @@ inline-diagnostics.cursor-line = "error"; lsp.display-messages = true; }; - keys = { - normal = { - space = { - q = ":quit"; - Q = ":quit!"; - w = ":write"; - W = ":write!"; - o = "file_picker_in_current_buffer_directory"; + keys = + let + caseMenu = with pkgs; { + p = ":pipe ${lib.getExe sttr} pascal"; + c = ":pipe ${lib.getExe sttr} camel"; + k = ":pipe ${lib.getExe sttr} kebab"; + K = ":pipe ${lib.getExe sttr} kebab | ${lib.getExe sttr} upper"; + s = ":pipe ${lib.getExe sttr} snake"; + S = ":pipe ${lib.getExe sttr} snake | ${lib.getExe sttr} upper"; + u = ":pipe ${lib.getExe sttr} upper"; + l = ":pipe ${lib.getExe sttr} lower"; + t = ":pipe ${lib.getExe sttr} title"; }; - C-c = ":config-open"; - C-r = ":config-reload"; - "C-/" = "toggle_comments"; - S-right = "goto_next_buffer"; - S-left = "goto_previous_buffer"; - C-b = ":buffer-close"; - C-s = [ - "select_all" - "select_regex" - ]; + in + { + normal = { + "~" = caseMenu; + space = { + q = ":quit"; + Q = ":quit!"; + w = ":write"; + W = ":write!"; + o = "file_picker_in_current_buffer_directory"; + }; + C-c = ":config-open"; + C-r = ":config-reload"; + "C-/" = "toggle_comments"; + S-right = "goto_next_buffer"; + S-left = "goto_previous_buffer"; + C-b = ":buffer-close"; + C-s = [ + "select_all" + "select_regex" + ]; - C-j = "shrink_selection"; - C-k = "expand_selection"; - C-l = "select_next_sibling"; - C-a = "select_all"; - C-u = [ - "half_page_up" - "align_view_center" - ]; - C-d = [ - "half_page_down" - "align_view_center" - ]; + C-j = "shrink_selection"; + C-k = "expand_selection"; + C-l = "select_next_sibling"; + C-a = "select_all"; + C-u = [ + "half_page_up" + "align_view_center" + ]; + C-d = [ + "half_page_down" + "align_view_center" + ]; - "{" = [ - "goto_prev_paragraph" - "collapse_selection" - ]; - "}" = [ - "goto_next_paragraph" - "collapse_selection" - ]; - "0" = "goto_line_start"; - "$" = "goto_line_end"; - "^" = "goto_first_nonwhitespace"; - G = "goto_file_end"; - "%" = "match_brackets"; - V = [ - "select_mode" - "extend_to_line_bounds" - ]; - C = [ - "collapse_selection" - "extend_to_line_end" - "change_selection" - ]; - D = [ - "extend_to_line_end" - "delete_selection" - ]; - S = "surround_add"; - - d = { - d = [ + "{" = [ + "goto_prev_paragraph" + "collapse_selection" + ]; + "}" = [ + "goto_next_paragraph" + "collapse_selection" + ]; + "0" = "goto_line_start"; + "$" = "goto_line_end"; + "^" = "goto_first_nonwhitespace"; + G = "goto_file_end"; + "%" = "match_brackets"; + V = [ + "select_mode" "extend_to_line_bounds" + ]; + C = [ + "collapse_selection" + "extend_to_line_end" + "change_selection" + ]; + D = [ + "extend_to_line_end" "delete_selection" ]; - t = [ "extend_till_char" ]; - s = [ "surround_delete" ]; - i = [ "select_textobject_inner" ]; - a = [ "select_textobject_around" ]; - }; + S = "surround_add"; - x = "delete_selection"; - p = "paste_clipboard_after"; - P = "paste_clipboard_before"; - y = [ - "yank_main_selection_to_clipboard" - "normal_mode" - "flip_selections" - "collapse_selection" - ]; - Y = [ - "extend_to_line_bounds" - "yank_main_selection_to_clipboard" - "goto_line_start" - "collapse_selection" - ]; - - w = [ - "move_next_word_start" - "move_char_right" - "collapse_selection" - ]; - e = [ - "move_next_word_end" - "collapse_selection" - ]; - b = [ - "move_prev_word_start" - "collapse_selection" - ]; - - i = [ - "insert_mode" - "collapse_selection" - ]; - a = [ - "append_mode" - "collapse_selection" - ]; - - esc = [ - "collapse_selection" - "keep_primary_selection" - ]; - }; - insert = { - esc = [ - "collapse_selection" - "normal_mode" - ]; - }; - select = { - space = { - j = with pkgs; { - e = ":pipe ${lib.getExe jq}"; - c = ":pipe ${lib.getExe jq} -c"; + d = { + d = [ + "extend_to_line_bounds" + "delete_selection" + ]; + t = [ "extend_till_char" ]; + s = [ "surround_delete" ]; + i = [ "select_textobject_inner" ]; + a = [ "select_textobject_around" ]; }; + + x = "delete_selection"; + p = "paste_clipboard_after"; + P = "paste_clipboard_before"; + y = [ + "yank_main_selection_to_clipboard" + "normal_mode" + "flip_selections" + "collapse_selection" + ]; + Y = [ + "extend_to_line_bounds" + "yank_main_selection_to_clipboard" + "goto_line_start" + "collapse_selection" + ]; + + w = [ + "move_next_word_start" + "move_char_right" + "collapse_selection" + ]; + e = [ + "move_next_word_end" + "collapse_selection" + ]; + b = [ + "move_prev_word_start" + "collapse_selection" + ]; + + i = [ + "insert_mode" + "collapse_selection" + ]; + a = [ + "append_mode" + "collapse_selection" + ]; + + esc = [ + "collapse_selection" + "keep_primary_selection" + ]; }; - "{" = [ - "extend_to_line_bounds" - "goto_prev_paragraph" - ]; - "}" = [ - "extend_to_line_bounds" - "goto_next_paragraph" - ]; - "0" = "goto_line_start"; - "$" = "goto_line_end"; - "^" = "goto_first_nonwhitespace"; - G = "goto_file_end"; - D = [ - "extend_to_line_bounds" - "delete_selection" - "normal_mode" - ]; - C = [ - "goto_line_start" - "extend_to_line_bounds" - "change_selection" - ]; - "%" = "match_brackets"; - S = "surround_add"; + insert = { + esc = [ + "collapse_selection" + "normal_mode" + ]; + }; + select = { + "~" = caseMenu; + space = { + j = with pkgs; { + e = ":pipe ${lib.getExe jq}"; + c = ":pipe ${lib.getExe jq} -c"; + }; + }; + "{" = [ + "extend_to_line_bounds" + "goto_prev_paragraph" + ]; + "}" = [ + "extend_to_line_bounds" + "goto_next_paragraph" + ]; + "0" = "goto_line_start"; + "$" = "goto_line_end"; + "^" = "goto_first_nonwhitespace"; + G = "goto_file_end"; + D = [ + "extend_to_line_bounds" + "delete_selection" + "normal_mode" + ]; + C = [ + "goto_line_start" + "extend_to_line_bounds" + "change_selection" + ]; + "%" = "match_brackets"; + S = "surround_add"; - i = "select_textobject_inner"; - a = "select_textobject_around"; + i = "select_textobject_inner"; + a = "select_textobject_around"; - tab = [ - "insert_mode" - "collapse_selection" - ]; - C-a = [ - "append_mode" - "collapse_selection" - ]; + tab = [ + "insert_mode" + "collapse_selection" + ]; + C-a = [ + "append_mode" + "collapse_selection" + ]; - k = [ - "extend_line_up" - "extend_to_line_bounds" - ]; - j = [ - "extend_line_down" - "extend_to_line_bounds" - ]; + k = [ + "extend_line_up" + "extend_to_line_bounds" + ]; + j = [ + "extend_line_down" + "extend_to_line_bounds" + ]; - d = [ - "yank_main_selection_to_clipboard" - "delete_selection" - ]; - x = [ - "yank_main_selection_to_clipboard" - "delete_selection" - ]; - y = [ - "yank_main_selection_to_clipboard" - "normal_mode" - "flip_selections" - "collapse_selection" - ]; - Y = [ - "extend_to_line_bounds" - "yank_main_selection_to_clipboard" - "goto_line_start" - "collapse_selection" - "normal_mode" - ]; - p = "replace_selections_with_clipboard"; - P = "paste_clipboard_before"; + d = [ + "yank_main_selection_to_clipboard" + "delete_selection" + ]; + x = [ + "yank_main_selection_to_clipboard" + "delete_selection" + ]; + y = [ + "yank_main_selection_to_clipboard" + "normal_mode" + "flip_selections" + "collapse_selection" + ]; + Y = [ + "extend_to_line_bounds" + "yank_main_selection_to_clipboard" + "goto_line_start" + "collapse_selection" + "normal_mode" + ]; + p = "replace_selections_with_clipboard"; + P = "paste_clipboard_before"; - esc = [ - "collapse_selection" - "keep_primary_selection" - "normal_mode" - ]; + esc = [ + "collapse_selection" + "keep_primary_selection" + "normal_mode" + ]; + }; }; - }; }; languages = with pkgs; { language = [