138 lines
3.4 KiB
Nix
138 lines
3.4 KiB
Nix
{ config, pkgs, ... }:
|
|
{
|
|
programs.starship = {
|
|
enable = true;
|
|
# Configuration written to ~/.config/starship.toml
|
|
settings = {
|
|
|
|
add_newline = true;
|
|
format = "[](#f50505)$os$username[](bg:#E40046 fg:#f50505)$directory[](fg:#E40046 bg:#5018dd)$git_branch$git_status[](fg:#5018dd bg:#86BBD8)$c$elixir$elm$golang$gradle$haskell$java$julia$nodejs$nim$rust$scala[](fg:#86BBD8 bg:#06969A)$docker_context[](fg:#06969A bg:#5018dd)$time[ ](fg:#5018dd)";
|
|
|
|
# Disable the blank line at the start of the prompt
|
|
|
|
|
|
# You can also replace your username with a neat symbol like or disable this
|
|
# and use the os module below
|
|
username = {
|
|
show_always = true;
|
|
style_user = "bg:#f50505";
|
|
style_root = "bg:#f50505";
|
|
format = "[$user ]($style)";
|
|
disabled = false;
|
|
};
|
|
|
|
#An alternative to the username module which displays a symbol that
|
|
# represents the current operating system
|
|
os = {
|
|
style = "bg:#f50505";
|
|
disabled = false; # Disabled by default
|
|
};
|
|
|
|
directory = {
|
|
style = "bg:#E40046";
|
|
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 example:
|
|
# "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 " = " "
|
|
|
|
c = {
|
|
symbol = " ";
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
docker_context = {
|
|
symbol = " ";
|
|
style = "bg:#06969A";
|
|
format = "[ $symbol $context ]($style)";
|
|
};
|
|
elixir = {
|
|
symbol = " ";
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
elm = {
|
|
symbol = " ";
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
git_branch = {
|
|
symbol = "";
|
|
style = "bg:#5018dd";
|
|
format = "[ $symbol $branch ]($style)";
|
|
};
|
|
git_status = {
|
|
style = "bg:#5018dd";
|
|
format = "[$all_status$ahead_behind ]($style)";
|
|
};
|
|
golang = {
|
|
symbol = " ";
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
gradle = {
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
haskell = {
|
|
symbol = " ";
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
java = {
|
|
symbol = " ";
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
julia = {
|
|
symbol = " ";
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
nodejs = {
|
|
symbol = "";
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
nim = {
|
|
symbol = " ";
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
rust = {
|
|
symbol = "";
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
scala = {
|
|
symbol = " ";
|
|
style = "bg:#86BBD8";
|
|
format = "[ $symbol ($version) ]($style)";
|
|
};
|
|
time = {
|
|
disabled = false;
|
|
time_format = "%R"; # Hour:Minute Format
|
|
style = "bg:#5018dd";
|
|
format = "[ $time ]($style)";
|
|
};
|
|
};
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|