diff --git a/modules/_neovim/default.nix b/modules/_neovim/default.nix index 2041a56..97c5425 100644 --- a/modules/_neovim/default.nix +++ b/modules/_neovim/default.nix @@ -8,6 +8,7 @@ ./plugins/conform.nix ./plugins/diffview.nix ./plugins/grug-far.nix + ./plugins/hardtime.nix ./plugins/harpoon.nix ./plugins/hunk.nix ./plugins/jj-diffconflicts.nix diff --git a/modules/_neovim/plugins/hardtime.nix b/modules/_neovim/plugins/hardtime.nix new file mode 100644 index 0000000..43eda34 --- /dev/null +++ b/modules/_neovim/plugins/hardtime.nix @@ -0,0 +1,7 @@ +{ + programs.nixvim.plugins = { + hardtime = { + enable = true; + }; + }; +} diff --git a/modules/shell.nix b/modules/shell.nix index d91a499..96979c8 100644 --- a/modules/shell.nix +++ b/modules/shell.nix @@ -222,8 +222,20 @@ cmd: "open_project" } } - ]) - ''; + ]) + + # Vi mode prompt indicators (Starship can't detect vi mode in nushell, + # so we handle the character here instead of in the character module) + $env.PROMPT_INDICATOR = {|| $"(ansi green_bold)󰘧(ansi reset) " } + $env.PROMPT_INDICATOR_VI_INSERT = {|| + if $env.LAST_EXIT_CODE == 0 { + $"(ansi green_bold)󰘧(ansi reset) " + } else { + $"(ansi red_bold)󰘧(ansi reset) " + } + } + $env.PROMPT_INDICATOR_VI_NORMAL = {|| $"(ansi {attr: b, fg: '#286983'})󰘧(ansi reset) " } + ''; }; programs.zsh = { @@ -234,13 +246,12 @@ enable = true; enableNushellIntegration = true; settings = { - format = "$directory\${custom.scm}$hostname$line_break$character"; + format = "$directory\${custom.scm}$hostname$line_break"; buf = { disabled = true; }; character = { - error_symbol = "[󰘧](bold red)"; - success_symbol = "[󰘧](bold green)"; + disabled = true; }; directory = { truncate_to_repo = false;