Skip to content

Instantly share code, notes, and snippets.

@invisiblemonki
Last active November 20, 2022 17:48
Show Gist options
  • Save invisiblemonki/3b8b7cef9f3468755daffc40c6de5f6d to your computer and use it in GitHub Desktop.
Save invisiblemonki/3b8b7cef9f3468755daffc40c6de5f6d to your computer and use it in GitHub Desktop.
Cut-and-pasta w/customization Starship Prompt (used with fish shell)
#
# A conglomeration of custom and copy&paste styling
# [took me a ⏱ to figure some of this 💩 out]
# SPECIFIC USE CASE: FISH SHELL
##############################################################
command_timeout = 500
scan_timeout = 500
right_format = """[$cmd_duration]($style)[$time]($style)"""
[time]
disabled = false
time_format = "%r"
utc_time_offset = "-10" # this is for where I am (Honolulu Hawaii), replace with YOUR utc offset.
format ="[⧖](cyan)[$time](yellow)"
[character]
success_symbol = "[❯](blue bold)[❯](purple bold)[❯](bold green)"
error_symbol = ""
#[battery]
#full_symbol = ""
#charging_symbol = ""
#discharging_symbol = ""
#[[battery.display]]
#threshold = 100
#style = "bold green"
#[[battery.display]]
#threshold = 90
#style ="bold yellow"
#[[battery.display]]
#threshold = 30
#style = "bold red"
[cmd_duration]
min_time = 10 # this is 10 milliseconds. it pretty much always shows. you can change this to a larger threshold.
format = '[⏱$duration](bold purple)'
# skully is better than that silly 'at'
# colors are chosen here
[username]
style_user = "bg:cyan bold fg:black" # sometimes you need "bold" because bg: will use "faded" version
style_root = "bg:white bold fg:black" # root has a different scheme to make "su root" obvious
# the foreground and background colors are reversed for the fade-out
format =" [░▒▓█](fg:cyan bg:black)[ $user ]($style) "
disabled = false
show_always = true
# same reversed color scheme
[hostname]
ssh_only = false
format = "🕱 [ $hostname ]($style)[█▓▒░](fg:cyan bg:black) "
disabled = false
trim_at = "."
style = "bg:cyan bold fg:black" # notice bold again. might just be my system.
# this is where you choose colors for directory and git repo directories (separate style for git root)
[directory]
format = "[$path]($style)[$read_only]($read_only_style) "
style = "bold #f57800"
read_only = "🔒"
read_only_style = "red"
truncation_symbol = ".../"
fish_style_pwd_dir_length = 1
repo_root_style = "bold #02aee3"
truncate_to_repo = true
truncation_length = 3
repo_root_format = "[$before_root_path]($style)[$repo_root](underline $repo_root_style)[$path](bold #02e391)"
#[directory.substitutions] # this will disable fish-style truncation
#~/coding/rubystuff" = "ruby//"
#"~/coding/pythonstuff" = "python//"
#"~/coding/purescriptstuff" = "purescript//"
#"~/coding/typescriptstuff" = "typescript//"
#"~/coding/haskellstuff" = "haskell//"
[git_branch]
symbol = " "
style = "bold purple"
format = '\[[$symbol$branch]($style)\]'
[git_commit]
format = "[($hash)]($style) [($tag)]($style)"
style = "bold green"
[git_status]
format = '([\[$all_status$ahead_behind\]]($style))'
conflicted = "="
ahead = "⇡${count} "
behind = "⇣${count} "
diverged = "⇕⇡${ahead_count}⇣${behind_count}"
untracked = "?${count} "
stashed = "$${count} "
modified = "!${count} "
staged = "+${count} "
renamed = "»${count} "
deleted = "✘ ${count} "
style = "bold red"
disabled = false
[git_state]
rebase = "REBASING"
merge = "MERGING"
revert = "REVERTING"
cherry_pick = "CHERRY-PICKING"
bisect = "BISECTING"
am = "AM"
am_or_rebase = "AM/REBASE"
style = "bold yellow"
format = '\([$state( $progress_current/$progress_total)]($style)\) '
disabled = false
[git_metrics]
disabled = false
[hg_branch]
style = "bold purple"
format = '\[[$symbol$branch]($style)\]'
disabled = false
# memory usage only shows up if you're using over %75 of it. if that happens, i like to know.
[memory_usage]
symbol = " "
style = "bold dimmed green"
disabled = false
format = '\[$symbol[$ram( | $swap)]($style)\]'
threshold = 75
[nodejs]
format = '\[[$symbol($version)]($style)\]'
style = "bold red"
disabled = false
not_capable_style = "bold red"
[status]
format = "[« $symbol $status »]($style)"
style = "bold red"
disabled = false
[aws]
format = '\[[$symbol($profile)(\($region\))(\[$duration\])]($style)\]'
[bun]
format = '\[[$symbol($version)]($style)\]'
[c]
format = '\[[$symbol($version(-$name))]($style)\]'
[cmake]
format = '\[[$symbol($version)]($style)\]'
[cobol]
format = '\[[$symbol($version)]($style)\]'
[conda]
format = '\[[$symbol$environment]($style)\]'
[crystal]
format = '\[[$symbol($version)]($style)\]'
[daml]
format = '\[[$symbol($version)]($style)\]'
[dart]
format = '\[[$symbol($version)]($style)\]'
[deno]
format = '\[[$symbol($version)]($style)\]'
[docker_context]
format = '\[[$symbol$context]($style)\]'
[dotnet]
format = '\[[$symbol($version)(🎯 $tfm)]($style)\]'
[elixir]
format = '\[[$symbol($version \(OTP $otp_version\))]($style)\]'
[elm]
format = '\[[$symbol($version)]($style)\]'
[erlang]
format = '\[[$symbol($version)]($style)\]'
[gcloud]
format = '\[[$symbol$account(@$domain)(\($region\))]($style)\]'
[golang]
format = '\[[$symbol($version)]($style)\]'
[haskell]
format = '\[[$symbol($version)]($style)\]'
[helm]
format = '\[[$symbol($version)]($style)\]'
[java]
format = '\[[$symbol($version)]($style)\]'
[julia]
format = '\[[$symbol($version)]($style)\]'
[kotlin]
format = '\[[$symbol($version)]($style)\]'
[kubernetes]
format = '\[[$symbol$context( \($namespace\))]($style)\]'
[lua]
format = '\[[$symbol($version)]($style)\]'
[nim]
format = '\[[$symbol($version)]($style)\]'
[nix_shell]
format = '\[[$symbol$state( \($name\))]($style)\]'
[ocaml]
format = '\[[$symbol($version)(\($switch_indicator$switch_name\))]($style)\]'
[openstack]
format = '\[[$symbol$cloud(\($project\))]($style)\]'
[package]
format = '\[[$symbol$version]($style)\]'
[perl]
format = '\[[$symbol($version)]($style)\]'
[php]
format = '\[[$symbol($version)]($style)\]'
[pulumi]
format = '\[[$symbol$stack]($style)\]'
[purescript]
format = '\[[$symbol($version)]($style)\]'
[python]
format = '\[[${symbol}${pyenv_prefix}(${version})(\($virtualenv\))]($style)\]'
[raku]
format = '\[[$symbol($version-$vm_version)]($style)\]'
[red]
format = '\[[$symbol($version)]($style)\]'
[ruby]
format = '\[[$symbol($version)]($style)\]'
[rust]
format = '\[[$symbol($version)]($style)\]'
[scala]
format = '\[[$symbol($version)]($style)\]'
[spack]
format = '\[[$symbol$environment]($style)\]'
[sudo]
format = '\[[as $symbol]\]'
[swift]
format = '\[[$symbol($version)]($style)\]'
[terraform]
format = '\[[$symbol$workspace]($style)\]'
[vagrant]
format = '\[[$symbol($version)]($style)\]'
[vlang]
format = '\[[$symbol($version)]($style)\]'
[zig]
format = '\[[$symbol($version)]($style)\]'
@invisiblemonki
Copy link
Author

Yes, the hostname for my laptop is Lapdance. On KDE. On GNOME it's Lapgnome. Isn't THAT evocative?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment