-
-
Save Frankie-B/36270cebe867d88b00be8fe751b94405 to your computer and use it in GitHub Desktop.
Starship config
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Get editor completions based on the config schema | |
| "$schema" = 'https://starship.rs/config-schema.json' | |
| format = """ | |
| $username\ | |
| $hostname\ | |
| $localip\ | |
| $shlvl\ | |
| $singularity\ | |
| $kubernetes\ | |
| $directory\ | |
| $vcsh\ | |
| $fossil_branch\ | |
| ${custom.git_server}\ | |
| $git_branch\ | |
| $git_commit\ | |
| $git_state\ | |
| $git_metrics\ | |
| $git_status\ | |
| $hg_branch\ | |
| $pijul_channel\ | |
| $docker_context\ | |
| $package\ | |
| $c\ | |
| $cmake\ | |
| $cobol\ | |
| $daml\ | |
| $dart\ | |
| $deno\ | |
| $dotnet\ | |
| $elixir\ | |
| $elm\ | |
| $erlang\ | |
| $fennel\ | |
| $golang\ | |
| $guix_shell\ | |
| $haskell\ | |
| $haxe\ | |
| $helm\ | |
| $java\ | |
| $julia\ | |
| $kotlin\ | |
| $gradle\ | |
| $lua\ | |
| $nim\ | |
| $nodejs\ | |
| $ocaml\ | |
| $opa\ | |
| $perl\ | |
| $php\ | |
| $pulumi\ | |
| $purescript\ | |
| $python\ | |
| $raku\ | |
| $rlang\ | |
| $red\ | |
| $ruby\ | |
| $rust\ | |
| $scala\ | |
| $swift\ | |
| $terraform\ | |
| $vlang\ | |
| $vagrant\ | |
| $zig\ | |
| $buf\ | |
| $nix_shell\ | |
| $conda\ | |
| $meson\ | |
| $spack\ | |
| $memory_usage\ | |
| $aws\ | |
| $gcloud\ | |
| $openstack\ | |
| $azure\ | |
| $env_var\ | |
| $crystal\ | |
| $custom\ | |
| $sudo\ | |
| $cmd_duration\ | |
| $line_break\ | |
| $jobs\ | |
| $battery\ | |
| $time\ | |
| $status\ | |
| $os\ | |
| $container\ | |
| $shell\ | |
| $character""" | |
| ################################################################################ | |
| ## Custom Commands | |
| ################################################################################ | |
| [custom.git_server] | |
| #disabled = true | |
| description = "Display symbol for remote Git server" | |
| command = """ | |
| GIT_REMOTE=$(command git ls-remote --get-url 2> /dev/null) | |
| if [[ "$GIT_REMOTE" =~ "github" ]]; then | |
| GIT_REMOTE_SYMBOL="ο " | |
| elif [[ "$GIT_REMOTE" =~ "gitlab" ]]; then | |
| GIT_REMOTE_SYMBOL="ο " | |
| elif [[ "$GIT_REMOTE" =~ "bitbucket" ]]; then | |
| GIT_REMOTE_SYMBOL="ο ± " | |
| elif [[ "$GIT_REMOTE" =~ "git" ]]; then | |
| GIT_REMOTE_SYMBOL="ο‘ " | |
| else | |
| GIT_REMOTE_SYMBOL="ο " | |
| fi | |
| echo "$GIT_REMOTE_SYMBOL " | |
| """ | |
| when = 'git rev-parse --is-inside-work-tree 2> /dev/null' | |
| style = "white" | |
| format = '[$output]($style) ' | |
| [custom.git_scope] | |
| disabled = true | |
| command = ''' | |
| printf "%s (%s)" \ | |
| "$(if [ -n "$GIT_AUTHOR_EMAIL" ]; then echo "$GIT_AUTHOR_EMAIL"; else git config user.email; fi)" \ | |
| "$(if [ -n "$GIT_AUTHOR_NAME" ]; then echo "$GIT_AUTHOR_NAME"; else git config user.name; fi)" | |
| ''' | |
| description = 'The currently configured Git user.{email,name}' | |
| format = '$output ' | |
| style = 'blue bold' | |
| when = 'git rev-parse --is-inside-work-tree' | |
| [custom.git_last_commit] | |
| disabled = true | |
| description = "Display last commit hash and message" | |
| command = "git show -s --format='ξ©%h \"%s\"'" | |
| when = 'git rev-parse --is-inside-work-tree 2> /dev/null' | |
| style = "bright-yellow bold" | |
| format = "[$output]($style) " | |
| [custom.ssh_no_keys] | |
| disabled = true | |
| description = "SSH missing keys" | |
| when = "ssh-add -l | grep -q 'no identities'" | |
| command = "echo π«" | |
| format = '\[$symbol[$output]($style)\]' | |
| shell = ["bash", "--noprofile", "--norc"] | |
| symbol = "π" | |
| style = "bold fg:red" | |
| [custom.ssh_keys] | |
| disabled = true | |
| description = "SSH key count" | |
| when = "ssh-add -l | grep -v -q 'no identities'" | |
| command = "ssh-add -l | grep -v 'no identities' | wc -l" | |
| format = '\[$symbol[$output]($style)\]' | |
| shell = ["bash", "--noprofile", "--norc"] | |
| symbol = "π" | |
| style = "bold fg:green" | |
| ################################################################################ | |
| ## Shell | |
| ################################################################################ | |
| [battery] | |
| full_symbol = "π" | |
| charging_symbol = "π" | |
| discharging_symbol = "β‘" | |
| [[battery.display]] | |
| threshold = 30 | |
| style = "bold red" | |
| [cmd_duration] | |
| min_time = 10_000 # Show command duration over 10,000 milliseconds (=10 sec) | |
| format = '\[[β± $duration]($style)\]' | |
| style = 'yellow' | |
| [memory_usage] | |
| format = '\[$symbol[${ram}( | ${swap})]($style)\]' | |
| threshold = 70 | |
| style = "bold dimmed white" | |
| disabled = false | |
| [time] | |
| time_format = "%T" | |
| format = "π $time($style) " | |
| style = "bright-white" | |
| disabled = true | |
| [username] | |
| format = '\[[$user]($style)\]' | |
| style_user = "bold dimmed blue" | |
| show_always = false | |
| [hostname] | |
| ssh_only = false | |
| format = "<[$hostname]($style)>" | |
| trim_at = "-" | |
| style = "bold dimmed white" | |
| disabled = true | |
| [directory] | |
| truncation_length = 5 | |
| format = "[$path]($style)[$lock_symbol]($lock_style) " | |
| [directory.substitutions] | |
| "Documents" = "ο " | |
| "Downloads" = "ο " | |
| "Music" = "ο " | |
| "Pictures" = "οΎ " | |
| ################################################################################ | |
| ## GIT | |
| ################################################################################ | |
| [git_branch] | |
| format = '\[[$symbol$branch]($style)\]' | |
| symbol = 'π± ' | |
| style = "bold green" | |
| [git_state] | |
| format = '\[[\($state( $progress_current of $progress_total)\)]($style)\]' | |
| [git_status] | |
| conflicted = "βοΈ " | |
| ahead = "π¨${count} " | |
| behind = "π’${count} " | |
| diverged = "π± π¨${ahead_count} π’${behind_count} " | |
| untracked = "π€οΈ ${count} " | |
| stashed = "π¦ " | |
| modified = "π${count} " | |
| staged = "ποΈ ${count} " | |
| renamed = "π${count} " | |
| deleted = "ποΈ ${count} " | |
| style = "bright-white" | |
| format = '\[ $all_status$ahead_behind\]' | |
| [git_commit] | |
| commit_hash_length = 8 | |
| style = "bold white" | |
| tag_symbol = 'π ' | |
| disabled = false | |
| ################################################################################ | |
| ## Languages & Tools | |
| ################################################################################ | |
| [aws] | |
| format = '\[[$symbol($profile)(\($region\))(\[$duration\])]($style)\]' | |
| symbol = 'σ° ' | |
| style = "yellow" | |
| [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)\]' | |
| [fennel] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [fossil_branch] | |
| format = '\[[$symbol$branch]($style)\]' | |
| [gcloud] | |
| format = '\[[$symbol$account(@$domain)(\($region\))]($style)\]' | |
| [golang] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [gradle] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [guix_shell] | |
| format = '\[[$symbol]($style)\]' | |
| [haskell] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [haxe] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [helm] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [hg_branch] | |
| format = '\[[$symbol$branch]($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)\]' | |
| [meson] | |
| format = '\[[$symbol$project]($style)\]' | |
| [nim] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [nix_shell] | |
| format = '\[[$symbol$state( \($name\))]($style)\]' | |
| [nodejs] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [ocaml] | |
| format = '\[[$symbol($version)(\($switch_indicator$switch_name\))]($style)\]' | |
| [opa] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [openstack] | |
| format = '\[[$symbol$cloud(\($project\))]($style)\]' | |
| [os] | |
| format = '\[[$symbol]($style)\]' | |
| [package] | |
| format = '\[[$symbol$version]($style)\]' | |
| [perl] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [php] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [pijul_channel] | |
| format = '\[[$symbol$channel]($style)\]' | |
| [pulumi] | |
| format = '\[[$symbol$stack]($style)\]' | |
| [purescript] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [python] | |
| format = '\[[${symbol}${pyenv_prefix}(${version})(\($virtualenv\))]($style)\]' | |
| style = "bold green" | |
| [raku] | |
| format = '\[[$symbol($version-$vm_version)]($style)\]' | |
| [red] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [ruby] | |
| format = '\[[$symbol($version)]($style)\]' | |
| [rust] | |
| format = '\[[$symbol($version)]($style)\]' | |
| style = "bold green" | |
| [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)\]' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment