diff options
Diffstat (limited to '')
-rw-r--r-- | hm/soispha/conf/starship/default.nix | 88 |
1 files changed, 84 insertions, 4 deletions
diff --git a/hm/soispha/conf/starship/default.nix b/hm/soispha/conf/starship/default.nix index 1dfe042d..b4c879b5 100644 --- a/hm/soispha/conf/starship/default.nix +++ b/hm/soispha/conf/starship/default.nix @@ -1,14 +1,94 @@ -{lib, ...}: { +{ + lib, + nixosConfig, + ... +}: { programs.starship = { enable = true; enableZshIntegration = true; settings = { add_newline = false; - format = lib.concatStrings ["$line_break" "$package" "$line_break" "$character"]; + format = lib.concatStrings [ + "$directory" + "$username" + "$cmd_duration" + "$status" + "$character" + ]; + right_format = lib.concatStrings ( + [ + "$time" + "$git_metrics" + "$git_branch" + "$git_status" + "$git_commit" + "$git_state" + ] + ++ lib.optional + nixosConfig.soispha.laptop.enable + "$battery" + ); scan_timeout = 20; character = { - success_symbol = "[➜](bold green)"; - error_symbol = "[➜](bold red)"; + # success_symbol = "[❯](bold blue)"; + # a = "⬢"; + success_symbol = "[](bold blue)"; + error_symbol = "[](bold red)"; + }; + status = { + disabled = false; + format = ''[($common_meaning \($status\))($signal_name \($signal_number\)))]($style)''; + }; + time = { + format = ''[\[$time\]]($style)''; + }; + username = { + format = "as [$user]($style) "; + }; + git_status = { + ahead = "⇡$count"; + diverged = "⇕⇡$ahead_count⇣$behind_count"; + behind = "⇣$count"; + }; + git_metrics = { + disabled = false; + ignore_submodules = true; + }; + git_state = {}; + git_commit = { + tag_disabled = false; + tag_symbol = "v"; + format = ''[(\[($hash$tag\])]($style)''; + }; + directory = { + truncate_to_repo = true; + read_only = ""; + before_repo_root_style = "black bold dimmed"; + }; + cmd_duration = { + min_time = 2000; # Milliseconds + style = "bold white"; + }; + battery = { + # ' ' + # ' ' + # ' ' + # ' ' + # ' ' + display = [ + { + threshold = 10; + style = "bold red"; + } + { + threshold = 30; + style = "bold blue"; + } + { + threshold = 50; + style = "bold green"; + } + ]; }; }; }; |