Skip to content

Instantly share code, notes, and snippets.

@aarmn
Created November 7, 2022 20:46
Show Gist options
  • Save aarmn/cc401a88bb21324584e24a5d74fa6c7f to your computer and use it in GitHub Desktop.
Save aarmn/cc401a88bb21324584e24a5d74fa6c7f to your computer and use it in GitHub Desktop.
My [close to] perfect, starship config. A continuation of pastel preset, suggestions are welcomed!
"$schema" = 'https://starship.rs/config-schema.json'
# right_format = """
# """
command_timeout = 500000000
format = """
[๎‚ถ](#9A348E)\
[$sudo$username$hostname$localip ](bg:#9A348E)\
[๎‚ฐ](bg:#DA627D fg:#9A348E)\
[($directory)](bg:#DA627D fg:#FFFFFF)\
[๎‚ฐ](fg:#DA627D bg:#FCA17D)\
[( $git_branch$git_status$git_commit$git_state$git_metrics$hg_branch )](fg:#434442 bg:#FCA17D)\
[๎‚ฐ](fg:#FCA17D bg:#86BBD8)\
[($c$vlang$rust$golang$zig$bun$deno$nodejs$elm$purescript$haskell$php$ruby$red$perl$python$julia$rlang$swift$kotlin$scala$java$erlang$elixir$crystal$nim$cobol$dart$dotnet$lua$ocaml$raku)](fg:#434442 bg:#86BBD8)\
[๎‚ฐ](fg:#86BBD8 bg:#06969A)\
[($docker_context)](bg:#06969A)\
[๎‚ฐ](fg:#06969A bg:#666666)\
[( $package )( $conda )( $cmake )( $spack )( $nix_shell )](bg:#666666)\
[๎‚ฐ](fg:#666666 bg:#33658A)\
$time\
[๎‚ฐ ](fg:#33658A)\
$fill\
[๎‚ฒ](fg:#33658A)\
[($jobs)($shell)($shlvl)](bg:#33658A)\
[๎‚ฒ](bg:#33658A fg:#06969A)\
[( $cmd_duration)](bg:#06969A)\
[๎‚ฒ](bg:#06969A fg:#9a348e)\
[($status)](bg:#9a348e)\
[๎‚ด](fg:#9a348e)\
$line_break\
$character\
"""
continuation_prompt = '[๎‚ถ](fg:#666666)[๎‚ฐ](bg:#08969A fg:#666666)[๎‚ฐ](bg:#666666 fg:#08969A)[๎‚ฐ](fg:#666666)'
[jobs]
disabled = false
number_threshold = 1
symbol_threshold = 1
format = " $symbol$number "
symbol = "๏ชด"
[shell]
disabled = false
unknown_indicator = "!?"
format = " ๎ช… $indicator "
[fill]
symbol = " "
[shlvl]
threshold = 2
disabled = false
symbol = "๏˜ต "
format = " $symbol$shlvl "
[sudo]
disabled = false
format = '[$symbol]($style)'
style = "bg:#9A348E fg:#F7665E bold"
[time]
disabled = false
time_format = "%R" # Hour:Minute Format
style = "bg:#33658A"
format = '[ [โ™ฅ ](bg:#33658A)$time ]($style)'
[username]
show_always = true
style_user = "bg:#9A348E"
style_root = "bg:#9A348E fg:#FAA17D bold"
format = '[$user]($style)'
[hostname]
# ssh_only = false
disabled = false
style = "bg:#9A348E"
format = "[( $ssh_symbol) $hostname]($style)"
trim_at = ""
[cmd_duration]
min_time = 0
show_milliseconds = true
show_notifications = true
format = "๏จš$duration "
[directory]
# style = "bg:#DA627D"
format = " $path "
truncation_length = 4
truncation_symbol = "โ€ฆ/"
read_only = " ๐Ÿ”’" # v3 no hope?
read_only_style = "white bold"
[directory.substitutions]
"Documents" = "๏œ˜"
"Downloads" = "๏€™ "
"Music" = "๏€ "
"Pictures" = "๏€พ "
# Here is how you can shorten some long paths by text replacement
# similar to mapped_locations in Oh My Posh:
# 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 ๏œ˜ " = " ๏œ˜๏„ช "
[character]
success_symbol = "[๎‚ถโ–ˆโ–ˆ๎‚ฐ](fg:#06969A)"
error_symbol = "[๎‚ถโ–ˆโ–ˆ๎‚ฐ](fg:#DA627D)"
# vicmd_symbol = "[๎‚ถ](fg:#33658A)[๎˜ซ ](bg:#33658A)[๎‚ฐ](fg:#33658A)]"
vimcmd_replace_one_symbol = "[๎‚ถ](fg:#33658A)[๏ฅ— ](bg:#33658A)[๎‚ฐ](fg:#33658A)]"
vimcmd_replace_symbol = "[๎‚ถ](fg:#33658A)[๏ฅ• ](bg:#33658A)[๎‚ฐ](fg:#33658A)]"
vimcmd_visual_symbol = "[๎‚ถ](fg:#33658A)[๏ฎ ](bg:#33658A)[๎‚ฐ](fg:#33658A)]"
[localip]
disabled = false
format = '( \($localipv4\))'
[status]
disabled = false
format = " ๏ค ($status)( $symbol $common_meaning)( $symbol $signal_name:)($signal_number) "
map_symbol = true
symbol = "๎ช‡"
signal_symbol = "๏ฌ‰"
sigint_symbol = "๏œท"
not_found_symbol = "๎ญŽ"
not_executable_symbol = "๎ฏž"
success_symbol = "๏€Œ"
# โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“ Container, Cloud โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“
[container]
symbol = "๏ฐฉ "
format = " ($symbol)($name) "
[docker_context]
symbol = "๏Œˆ "
format = ' ($symbol)($context) '
[azure]
disabled = false
symbol = "๎ฏ˜ "
format = " ($symbol )($subscription) "
[openstack]
symbol = "๏ƒ‚ OpenStack " # nerdfont update watch v3
format = " $symbol$cloud(\\($project\\)) "
# โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘ Container โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘
# โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“ Version Control โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“
[git_branch]
symbol = "๏˜" # nerdfont update watch
format = '$symbol $branch '
[git_status]
conflicted = "โš”($count)"
ahead = "๐ŸŽ๐Ÿ’จ( โ‡ก$count)"
behind = "๐Ÿ˜ฐ( โ‡ฃ$count)"
diverged = "๐Ÿ˜ต( โ‡ก$ahead_count)( โ‡ฃbehind_count)"
up_to_date = "โœ…"
untracked = "๐Ÿคท($count)"
stashed = "๐Ÿ“ฆ($count)"
modified = "๐Ÿ“($count)"
staged = "๐Ÿชœ($count)"
renamed = "๐Ÿšถ($count)"
deleted = "๐Ÿ—‘($count)"
format = "($all_status$ahead_behind )"
# windows_starship
[git_commit]
commit_hash_length = 5
tag_disabled = false
tag_symbol = " ๏€ซ "
only_detached = false # check
format = "$hash "
[git_state]
format = " ( $state)[bold]( $progress_current/$progress_total) "
[git_metrics]
format = "๎ฎฏ( +$added)( -$deleted)"
disabled = false
[hg_branch]
symbol = "๎‚  " # nerdfont update watch / v3
format = " $symbol( $branch) "
truncation_length = 8
disabled = false
# check, default is way higher
# โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘ Version Control โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘
# โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“ Package Manager, Build System, Automation โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“
[spack]
symbol = "๐Ÿ…ข " # nerdfont update watch / no hope
format = "$symbol($environment)"
truncation_length = 3
# check
[package]
display_private = true # check effect
format = "$symbol$version"
[cmake]
symbol = "โ–ณ " # nerdfont update watch v3 (need balance)
format = " $symbol( $version) "
[conda]
symbol = "๎ž’ " # nerdfont update watch v3
truncation_length = 3 # check
ignore_base = false # check
format = " ($symbol)($environment) "
[nix_shell]
symbol = "๏Œ“ "
format = ' $symbol$state( \($name\)) '
[vcsh]
symbol = "VCSH"
format = " ($symbol )$repo "
[terraform]
symbol = "T7M" # nerdfont update watch v3
format = " ($symbol )$workspace "
# โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘ Package Manager, Build System, Automation โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘
# โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“ Programming Langs โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“โ‡“
[c]
symbol = "๎˜ž"
format = ' $symbol( $name)( $version) '
[bun]
symbol = "๎‰" #v3
format = " $symbol( $version) "
[cobol]
symbol = "๏€“"
format = " $symbol( $version)"
[crystal]
symbol = "๎˜ฏ"
format = " $symbol( $version) "
[dart]
symbol = "๎ž˜" # nerdfont update watch v3
format = " $symbol( $version) "
[deno]
symbol = "๐Ÿฆ•" # nerdfont update watch v3
format = " $symbol( $version) "
[dotnet]
symbol = "๎ฟ" #v3
format = " $symbol( ๎ชœ $tfm)( $version) "
heuristic = false
[erlang]
symbol = "๎žฑ"
format = " $symbol( $version) "
[kotlin]
symbol = "๎˜ด"
format = " $symbol( $version) "
[lua]
symbol = "๎˜ "
format = " $symbol( $version) "
[ocaml]
# symbol = (Nerdfont update watch) v3.0 fix
format = " $symbol( $version)( |($switch_indicator$switch_name|) " # finalize
[perl]
symbol = "๎ฉ"
format = " $symbol( $version) "
[php]
symbol = "๏ ž"
format = " $symbol( $version) "
[python]
symbol = "๎˜†"
format = " $symbol( $pyenv_prefix)( $version)( by $virtualenv) " # finalize
python_binary = ["python", "python3", "python2", "pypy", "pypy3", "pypy2"]
# pyenv_prefix = "pyenv " #check
# pyenv_version_name = true #check
[purescript]
symbol = "๎˜ฐ"
format = " $symbol( $version) "
[raku]
symbol = "๎ŠŽ" # nerdfont update watch
format = " $symbol( $version)(-$vm_version) "
[red]
format = " $symbol( $version) "
[rlang]
symbol = "๏ก—" # nerdfont update watch v3
format = " $symbol( $version) "
[ruby]
symbol = "๎ž‘"
format = " $symbol( $version) "
[scala]
symbol = "๎œท"
format = " $symbol( $version) "
[swift]
symbol = "๏ฏฃ"
format = " $symbol( $version) "
[vlang]
symbol = "V" # v3
format = " $symbol( $version) "
[zig]
symbol = "โ†ฏ" # v3
format = " $symbol( $version) "
[elixir]
symbol = "๎˜ญ"
format = ' $symbol( $version)( \OTP $otp_version\) '
[elm]
symbol = "๎˜ฌ"
format = ' $symbol ($version) '
[golang]
symbol = "๎˜ง"
format = ' $symbol ($version) '
[haskell]
symbol = "๎ท"
format = ' $symbol ($version) '
[java]
symbol = "๎‰–"
format = ' $symbol ($version) '
[julia]
symbol = "๎˜ค"
format = ' $symbol ($version) '
[nodejs]
symbol = "๎œ˜"
format = ' $symbol ($version) '
[nim]
symbol = "๏šค"
format = ' $symbol ($version) '
[rust]
symbol = "๎žจ"
format = ' $symbol ($version) '
# โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘ Programming Langs โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘โ‡‘
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment