"$schema" = 'https://starship.rs/config-schema.json'

format = """
[](colour)\
$os\
$username\
$hostname\
[](bg:grey fg:colour)\
$directory\
[](bg:colour fg:grey)\
$git_branch\
$git_status\
[](bg:grey fg:colour)\
$c\
$rust\
$golang\
$nodejs\
$php\
$java\
$kotlin\
$haskell\
$python\
$conda\
$time\
[ ](fg:grey)\
$cmd_duration\
$line_break\
$character"""

palette = 'colour_grey'

[palettes.colour_grey]
colour = "{{PRIMARY_COLOR}}"
grey = "#333333"         # Dark grey
text_on_colour = "#1A1A1A" 
text_on_grey = "#E0E0E0"

[os]
disabled = false
style = "bg:colour fg:text_on_colour"
format = "[$symbol ]($style)"

[os.symbols]
Windows = ""
Ubuntu = "󰕈"
SUSE = ""
Raspbian = "󰐿"
Mint = "󰣭"
Macos = "󰀵"
Manjaro = ""
Linux = "󰌽"
Gentoo = "󰣨"
Fedora = "󰣛"
Alpine = ""
Amazon = ""
Android = ""
AOSC = ""
Arch = "󰣇"
Artix = "󰣇"
CentOS = ""
Debian = "󰣚"
Redhat = "󱄛"
RedHatEnterprise = "󱄛"

[username]
show_always = true
disabled = true
style_user = "bg:colour fg:text_on_colour"
style_root = "bg:colour fg:text_on_colour"
# Hardcoded to "Ash"
format = '[Ash ]($style)'

[hostname]
disabled = true
ssh_only = false
style = "bg:colour fg:text_on_colour"
format = "[$hostname ]($style)"

[directory]
style = "bg:grey fg:text_on_grey"
format = "[ $path ]($style)"
truncation_length = 3
truncation_symbol = "…/"
# Swaps the ~ for a home icon
home_symbol = " "

[directory.substitutions]
"Documents" = "󰈙 "
"Downloads" = " "
"Music" = "󰝚 "
"Pictures" = " "
"Developer" = "󰲋 "
"docker" = " "
"Gitea" = " "
"Plex" = "󰚺 "
"Videos" = " "

[git_branch]
symbol = ""
style = "bg:colour"
format = '[[ $symbol $branch ](fg:text_on_colour bg:colour)]($style)'

[git_status]
style = "bg:colour"
format = '[[($all_status$ahead_behind )](fg:text_on_colour bg:colour)]($style)'

[nodejs]
symbol = ""
style = "bg:grey"
format = '[[ $symbol( $version) ](fg:text_on_grey bg:grey)]($style)'

[c]
symbol = " "
style = "bg:grey"
format = '[[ $symbol( $version) ](fg:text_on_grey bg:grey)]($style)'

[rust]
symbol = ""
style = "bg:grey"
format = '[[ $symbol( $version) ](fg:text_on_grey bg:grey)]($style)'

[golang]
symbol = ""
style = "bg:grey"
format = '[[ $symbol( $version) ](fg:text_on_grey bg:grey)]($style)'

[php]
symbol = ""
style = "bg:grey"
format = '[[ $symbol( $version) ](fg:text_on_grey bg:grey)]($style)'

[java]
symbol = " "
style = "bg:grey"
format = '[[ $symbol( $version) ](fg:text_on_grey bg:grey)]($style)'

[kotlin]
symbol = ""
style = "bg:grey"
format = '[[ $symbol( $version) ](fg:text_on_grey bg:grey)]($style)'

[haskell]
symbol = ""
style = "bg:grey"
format = '[[ $symbol( $version) ](fg:text_on_grey bg:grey)]($style)'

[python]
symbol = ""
style = "bg:grey"
format = '[[ $symbol( $version)(\(#$virtualenv\)) ](fg:text_on_grey bg:grey)]($style)'

[docker_context]
symbol = ""
style = "bg:colour"
format = '[[ $symbol( $context) ](fg:text_on_colour bg:colour)]($style)'

[conda]
symbol = "  "
style = "fg:text_on_colour bg:colour"
format = '[$symbol$environment ]($style)'
ignore_base = false

[time]
disabled = true
time_format = "%R"
style = "bg:grey"
format = '[[  $time ](fg:text_on_grey bg:grey)]($style)'

[line_break]
disabled = true

[character]
disabled = false
success_symbol = '[❯](bold fg:colour)'
error_symbol = '[❯](bold fg:grey)'
vimcmd_symbol = '[❮](bold fg:colour)'
vimcmd_replace_one_symbol = '[❮](bold fg:grey)'
vimcmd_replace_symbol = '[❮](bold fg:grey)'
vimcmd_visual_symbol = '[❮](bold fg:colour)'

[cmd_duration]
show_milliseconds = true
format = " in $duration "
# Removed background so it floats cleanly outside the powerline block
style = "fg:colour"
disabled = false
show_notifications = true
min_time_to_notify = 45000