77 lines
2.1 KiB
Nix
77 lines
2.1 KiB
Nix
{ config, lib, ... }: {
|
|
|
|
programs.starship = {
|
|
enable = true;
|
|
settings = {
|
|
add_newline = false;
|
|
format = lib.concatStrings [
|
|
"[](blue)"
|
|
"[$username:$hostname](bold white bg:blue)"
|
|
"[](bg:#769ff0 fg:blue)"
|
|
"$directory"
|
|
"[](fg:#769ff0 bg:#394260)"
|
|
"$git_branch"
|
|
"$git_status"
|
|
"[](fg:#394260 bg:#212736)"
|
|
"[](fg:#212736 bg:#1d2230)"
|
|
"$time"
|
|
"[ ](fg:#1d2230)"
|
|
" $character"
|
|
];
|
|
command_timeout = 5000;
|
|
|
|
# Disable the blank line at the start of the prompt
|
|
# add_newline = false
|
|
|
|
# You can also replace your username with a neat symbol like to save some space
|
|
username = {
|
|
show_always = true;
|
|
format = "$user";
|
|
};
|
|
|
|
hostname = {
|
|
ssh_only = false;
|
|
format = "$hostname";
|
|
disabled = false;
|
|
};
|
|
|
|
directory = {
|
|
style = "fg:#e3e5e5 bg:#769ff0";
|
|
format = "[ $path ]($style)";
|
|
truncation_length = 3;
|
|
truncation_symbol = "…/";
|
|
};
|
|
|
|
# Here is how you can shorten some long paths by text replacement
|
|
# similar to mapped_locations in Oh My Posh:
|
|
directory.substitutions = {
|
|
"Documents" = " ";
|
|
"Downloads" = " ";
|
|
"Music" = " ";
|
|
"Pictures" = " ";
|
|
};
|
|
# Keep in mind that the order matters. For ezample:
|
|
# "Important Documents" = " "
|
|
# will not be replaced, because "Documents" was already substituted before.
|
|
# So either put "Important Documents" before "Documents" or use the substituted version:
|
|
# "Important " = " "
|
|
git_branch = {
|
|
symbol = "";
|
|
style = "bg:#4C566A";
|
|
format = "[ $symbol $branch ]($style)";
|
|
};
|
|
git_status = {
|
|
style = "bg:#394260";
|
|
format =
|
|
"[[($all_status$ahead_behind )](fg:#769ff0 bg:#394260)]($style)";
|
|
};
|
|
time = {
|
|
disabled = false;
|
|
time_format = "%R";
|
|
style = "bg:#33658A";
|
|
format = "[ $time ]($style)";
|
|
};
|
|
};
|
|
};
|
|
}
|