Skip to content

Instantly share code, notes, and snippets.

@alexrecuenco
Last active December 2, 2024 12:02
Show Gist options
  • Save alexrecuenco/64aba121ab1ee1876d177dd99df3f3a6 to your computer and use it in GitHub Desktop.
Save alexrecuenco/64aba121ab1ee1876d177dd99df3f3a6 to your computer and use it in GitHub Desktop.
Ranbow Starship Preset (fixed)
# Get editor completions based on the config schema
# https://starship.rs/config/
# https://starship.rs/presets/
# https://starship.rs/presets/pastel-powerline
# Find other symbols here
# https://www.nerdfonts.com/cheat-sheet
# Check conditional format strings
# https://starship.rs/config/#conditional-format-strings
# MacOS terminal doesn't have true color support, so this pretty thing just won't do :')
"$schema" = 'https://starship.rs/config-schema.json'
command_timeout = 300
# Maybe go back to this preset??
# See the default here https://starship.rs/config/#default-prompt-format
# format = '$all'
format = """\
[](fg:#C76CB1)\
[$username\
$os\
$hostname\
$localip\
$shlvl\
$singularity\
](bold bg:#C76CB1)\
[](fg:#C76CB1 bg:#EE9CAF)\
[$directory\
](bold bg:#EE9CAF)\
[](fg:#EE9CAF bg:#FFD0B8)\
[$vcsh\
$fossil_branch\
$fossil_metrics\
$git_branch\
$git_commit\
$git_state\
$git_metrics\
$git_status\
$hg_branch\
](bold bg:#FFD0B8)\
[](fg:#FFD0B8 bg:#86BBD8)\
[$pijul_channel\
$package\
$c\
$cmake\
$cobol\
$daml\
$dart\
$deno\
$dotnet\
$elixir\
$elm\
$erlang\
$fennel\
$gleam\
$golang\
$guix_shell\
$haskell\
$haxe\
$helm\
$java\
$julia\
$kotlin\
$gradle\
$lua\
$nim\
$nodejs\
$ocaml\
$opa\
$perl\
$php\
$pulumi\
$purescript\
$python\
$quarto\
$raku\
$rlang\
$red\
$ruby\
$rust\
$scala\
$solidity\
$swift\
](bold bg:#86BBD8)\
[](fg:#86BBD8 bg:#71C5C8)\
[$docker_context\
$terraform\
](bold bg:#71C5C8)\
[](fg:#71C5C8 bg:#729FBF)\
[$typst\
$vlang\
$vagrant\
$zig\
$buf\
$nix_shell\
$conda\
$meson\
$spack\
$aws\
$gcloud\
$openstack\
$azure\
$nats\
$direnv\
$env_var\
$crystal\
$custom\
$sudo\
$jobs\
$battery\
$time\
$status\
$container\
](bold #FFFFFF bg:#729FBF)\
[ ](fg:#729FBF)\
[$fill\
$time\
$cmd_duration\
$kubernetes\
$memory_usage\
$line_break\
$shell\
$character\
](bold)\
"""
[character]
disabled = false
error_symbol = "[❯](bold red)"
success_symbol = "[❯](bold green)"
vimcmd_replace_one_symbol = "[❮](bold purple)"
format = "$symbol "
[fill]
disabled = false
symbol = " "
# You can also replace your username with a neat symbol like  or disable this
# and use the os module below
[username]
show_always = false
style_user = "bg:#C76CB1"
style_root = "bg:#C76CB1"
format = '[$user ]($style)'
disabled = false
# An alternative to the username module which displays a symbol that
# represents the current operating system
[os]
style = "bg:#C76CB1"
disabled = true # Disabled by default
[os.symbols]
Macos = " "
Alpaquita = " "
Alpine = " "
AlmaLinux = " "
Amazon = " "
Android = " "
Arch = " "
Artix = " "
CentOS = " "
Debian = " "
DragonFly = " "
Emscripten = " "
EndeavourOS = " "
Fedora = " "
FreeBSD = " "
Garuda = "󰛓 "
Gentoo = " "
HardenedBSD = "󰞌 "
Illumos = "󰈸 "
Kali = " "
Linux = " "
Mabox = " "
Manjaro = " "
Mariner = " "
MidnightBSD = " "
Mint = " "
NetBSD = " "
NixOS = " "
OpenBSD = "󰈺 "
openSUSE = " "
OracleLinux = "󰌷 "
Pop = " "
Raspbian = " "
Redhat = " "
RedHatEnterprise = " "
RockyLinux = " "
Redox = "󰀘 "
Solus = "󰠳 "
SUSE = " "
Ubuntu = " "
Unknown = " "
Void = " "
Windows = "󰍲 "
[directory]
style = "bg:#EE9CAF"
format = "[ $path]($style)"
truncation_symbol = "../"
read_only = " 󰌾"
truncate_to_repo = false
# 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" = " "
"Movies" = " "
"Desktop" = " "
"Workspace" = ""
"Projects" = ""
# 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)'
[terraform]
style = "bg:#71C5C8"
[docker_context]
symbol = " "
style = "bg:#71C5C8"
format = '[ $symbol $context ]($style)'
[elixir]
symbol = " "
style = "bg:#86BBD8"
format = '[ $symbol ($version) ]($style)'
[elm]
symbol = " "
style = "bg:#86BBD8"
format = '[ $symbol ($version) ]($style)'
[golang]
symbol = " "
style = "bg:#86BBD8"
format = '[ $symbol ($version) ]($style)'
[gradle]
style = "bg:#86BBD8"
format = '[ $symbol ($version) ]($style)'
symbol = " "
[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 = true
time_format = "%R" # Hour:Minute Format
style = "bg:#729FBF"
format = '[ ♥ $time ]($style)'
[pijul_channel]
symbol = " "
style = "bg:#86BBD8"
[package]
style = "bg:#86BBD8"
symbol = "󰏗 "
[cmake]
style = "bg:#86BBD8"
[cobol]
style = "bg:#86BBD8"
[daml]
style = "bg:#86BBD8"
[dart]
symbol = " "
style = "bg:#86BBD8"
[deno]
style = "bg:#86BBD8"
[dotnet]
style = "bg:#86BBD8"
[erlang]
style = "bg:#86BBD8"
[fennel]
symbol = " "
style = "bg:#86BBD8"
[gleam]
style = "bg:#86BBD8"
[guix_shell]
symbol = " "
style = "bg:#86BBD8"
[haxe]
symbol = " "
style = "bg:#86BBD8"
[helm]
style = "bg:#86BBD8"
[kotlin]
symbol = " "
style = "bg:#86BBD8"
[lua]
symbol = " "
style = "bg:#86BBD8"
[ocaml]
symbol = " "
style = "bg:#86BBD8"
[opa]
style = "bg:#86BBD8"
[perl]
symbol = " "
style = "bg:#86BBD8"
[php]
symbol = " "
style = "bg:#86BBD8"
[pulumi]
style = "bg:#86BBD8"
[purescript]
style = "bg:#86BBD8"
[python]
symbol = " "
style = "bg:#86BBD8"
[quarto]
style = "bg:#86BBD8"
[raku]
style = "bg:#86BBD8"
[rlang]
symbol = "󰟔 "
style = "bg:#86BBD8"
[red]
style = "bg:#86BBD8"
[ruby]
style = "bg:#86BBD8"
symbol = " "
[solidity]
style = "bg:#86BBD8"
[swift]
symbol = " "
style = "bg:#86BBD8"
[typst]
style = "bg:#729FBF"
[vlang]
style = "bg:#729FBF"
[vagrant]
style = "bg:#729FBF"
[zig]
symbol = " "
style = "bg:#729FBF"
[buf]
style = "bg:#729FBF"
symbol = " "
[nix_shell]
symbol = " "
style = "bg:#729FBF"
[conda]
symbol = " "
style = "bg:#729FBF"
[meson]
symbol = "󰔷 "
style = "bg:#729FBF"
[spack]
style = "bg:#729FBF"
[memory_usage]
disabled = true
format = "$symbol[$ram( | $swap)]($style) "
style = "bold"
symbol = "󰍛 "
# style = "bg:#729FBF"
[aws]
symbol = " "
style = "bg:#729FBF"
[gcloud]
style = "bg:#729FBF"
[openstack]
style = "bg:#729FBF"
[azure]
style = "bg:#729FBF"
[nats]
style = "bg:#729FBF"
[direnv]
style = "bg:#729FBF"
[crystal]
symbol = " "
style = "bg:#729FBF"
[sudo]
disabled = false
format = "[sudo $symbol]($style)"
style = "#FFF0F0 bg:#729FBF"
[jobs]
style = "bg:#729FBF"
[status]
style = "bg:#729FBF"
[container]
style = "bg:#729FBF"
[shell]
style = "bg:#729FBF"
[vcsh]
style = "bg:#FFD0B8"
[fossil_branch]
style = "bg:#FFD0B8"
[git_branch]
symbol = " "
style = "bg:#FFD0B8"
format = "on [$symbol$branch(:$remote_name/$remote_branch)]($style) "
truncation_length = 16
[git_commit]
style = "bg:#FFD0B8"
format = "[$hash$tag]($style) "
tag_disabled = false
tag_symbol = '  '
[git_metrics]
disabled = false
ignore_submodules = true
added_style = "bold green bg:#FFD0B8"
deleted_style = "bold red bg:#FFD0B8"
[git_status]
style = "bold #aa0000 bg:#FFD0B8"
format = '[$all_status$ahead_behind ]($style)'
conflicted = "=${count}"
untracked = "?${count}"
stashed = "\\$${count}"
modified = "!${count}"
staged = "+${count}"
renamed = "»${count}"
deleted = "✘${count}"
ahead = '⇡${count}'
behind = '⇣${count}'
diverged = '⇕⇡${ahead_count}⇣${behind_count}'
[git_state]
style = "bg:#FFD0B8"
[hg_branch]
symbol = " "
style = "bg:#FFD0B8"
[hostname]
ssh_symbol = " "
style = "bg:#C76CB1"
[localip]
style = "bg:#C76CB1"
[shlvl]
style = "bg:#C76CB1"
[singularity]
style = "bg:#C76CB1"
[kubernetes]
format = "[$symbol$context]($style)"
disabled = false
contexts = [ # List of contexts to display
{ context_pattern = ".*aks.*", style = "red bold" },
{ context_pattern = "minikube", style = "green bold" },
]

Get started

git clone https://gist.github.com/alexrecuenco/64aba121ab1ee1876d177dd99df3f3a6 starship-gist
ln -s "$(pwd)/starship-gist/"* ~/.config/
# Get editor completions based on the config schema
# https://starship.rs/config/
# https://starship.rs/presets/
# https://starship.rs/presets/pastel-powerline
# Find other symbols here
# https://www.nerdfonts.com/cheat-sheet
# Check conditional format strings
# https://starship.rs/config/#conditional-format-strings
"$schema" = 'https://starship.rs/config-schema.json'
command_timeout = 300
format = "$all$fill$nodejs$python$time$kubernetes$line_break$shell$character"
[fill]
symbol = " "
# Maybe go back to this preset??
# add_newline = false
# right_format = """$time$node$python"""
# Here is how you can shorten some long paths by text replacement
# similar to mapped_locations in Oh My Posh:
[kubernetes]
disabled = false
# format = "via [$symbol$context( \\($namespace\\))]($style)"
format = "via [$symbol$context]($style)"
# Variable Description
# context_pattern Required Regular expression to match current Kubernetes context name.
# user_pattern Regular expression to match current Kubernetes user name.
# context_alias Context alias to display instead of the full context name.
# user_alias User alias to display instead of the full user name.
# style The style for the module when using this context. If not set, will use module's style.
# symbol The symbol for the module when using this context. If not set, will use module's symbol.
contexts = [ # List of contexts to display
{ context_pattern = ".*aks.*", style = "red bold" },
{ context_pattern = "minikube", style = "green bold" },
]
[directory.substitutions]
"Documents" = "󰈙 "
"Downloads" = " "
"Music" = " "
"Pictures" = " "
"Movies" = " "
"Desktop" = " "
"Workspace" = ""
"Projects" = ""
[aws]
symbol = " "
[buf]
symbol = " "
[c]
symbol = " "
[conda]
symbol = " "
[crystal]
symbol = " "
[dart]
symbol = " "
[directory]
truncation_symbol = "…/"
read_only = " 󰌾"
truncate_to_repo = false
[docker_context]
symbol = " "
[elixir]
symbol = " "
[elm]
symbol = " "
[fennel]
symbol = " "
[fossil_branch]
symbol = " "
[git_branch]
symbol = " "
format = "on [$symbol$branch(:$remote_name/$remote_branch)]($style) "
truncation_length = 16
always_show_remote = false
# ignore_branches = ['master', 'main']
[git_commit]
format = "[$hash$tag]($style) "
tag_disabled = false
tag_symbol = '  '
[git_metrics]
disabled = false
ignore_submodules = true
[git_status]
conflicted = "=${count}"
untracked = "?${count}"
stashed = "\\$${count}"
modified = "!${count}"
staged = "+${count}"
renamed = "»${count}"
deleted = "✘${count}"
ahead = '⇡${count}'
behind = '⇣${count}'
diverged = '⇕⇡${ahead_count}⇣${behind_count}'
[sudo]
disabled = false
format = "[sudo $symbol]($style)"
[golang]
symbol = " "
[guix_shell]
symbol = " "
[haskell]
symbol = " "
[haxe]
symbol = " "
[hg_branch]
symbol = " "
[hostname]
ssh_symbol = " "
[java]
symbol = " "
[julia]
symbol = " "
[kotlin]
symbol = " "
[lua]
symbol = " "
[memory_usage]
symbol = "󰍛 "
[meson]
symbol = "󰔷 "
[nim]
symbol = "󰆥 "
[nix_shell]
symbol = " "
[nodejs]
symbol = " "
[ocaml]
symbol = " "
[os.symbols]
Alpaquita = " "
Alpine = " "
AlmaLinux = " "
Amazon = " "
Android = " "
Arch = " "
Artix = " "
CentOS = " "
Debian = " "
DragonFly = " "
Emscripten = " "
EndeavourOS = " "
Fedora = " "
FreeBSD = " "
Garuda = "󰛓 "
Gentoo = " "
HardenedBSD = "󰞌 "
Illumos = "󰈸 "
Kali = " "
Linux = " "
Mabox = " "
Macos = " "
Manjaro = " "
Mariner = " "
MidnightBSD = " "
Mint = " "
NetBSD = " "
NixOS = " "
OpenBSD = "󰈺 "
openSUSE = " "
OracleLinux = "󰌷 "
Pop = " "
Raspbian = " "
Redhat = " "
RedHatEnterprise = " "
RockyLinux = " "
Redox = "󰀘 "
Solus = "󰠳 "
SUSE = " "
Ubuntu = " "
Unknown = " "
Void = " "
Windows = "󰍲 "
[package]
symbol = "󰏗 "
[perl]
symbol = " "
[php]
symbol = " "
[pijul_channel]
symbol = " "
[python]
symbol = " "
[rlang]
symbol = "󰟔 "
[ruby]
symbol = " "
[rust]
symbol = "󱘗 "
[scala]
symbol = " "
[swift]
symbol = " "
[zig]
symbol = " "
[gradle]
symbol = " "
{
"terminal.integrated.drawBoldTextInBrightColors": false,
"terminal.integrated.minimumContrastRatio": 7,
"workbench.colorTheme": "Visual Studio Light",
"window.autoDetectColorScheme": true,
"workbench.preferredLightColorTheme": "Visual Studio Light",
"workbench.preferredDarkColorTheme": "Visual Studio Dark"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment