feat(starship): rainbow prompt

This commit is contained in:
winston 2023-01-01 15:53:04 +01:00
parent 0a2d62a693
commit c7a7db034d
Signed by: winston
GPG key ID: 3786770EDBC2B481

View file

@ -1,27 +1,28 @@
# Get editor completions based on the config schema # Get editor completions based on the config schema
'$schema' = 'https://starship.rs/config-schema.json' "$schema" = "https://starship.rs/config-schema.json"
### MAIN SHELL ### MAIN SHELL
# directory | username@hostname | cmd duration | sudo | VCS | language versions | kubernetes # directory | username@hostname | cmd duration | sudo | VCS | language versions | kubernetes
# > input after line break # > input after line break
format = """ format = """
${custom.top}\ [ ](bg:red)\
$directory\ $directory\
$username\ $username\
$hostname\ $hostname\
$container\ $container\
$sudo\ $sudo\
$shlvl\ $shlvl\
[](fg:red bg:16)\
$vcsh\ $vcsh\
$git_branch\ $git_branch\
$git_commit\ $git_commit\
$git_state\ $git_state\
$git_metrics\ $git_metrics\
$git_status\ $git_status\
[](fg:16 bg:yellow)\
$cmd_duration\ $cmd_duration\
$status\ $status\
$fill\ [](fg:yellow bg:green)\
$package\
$deno\ $deno\
$golang\ $golang\
$helm\ $helm\
@ -31,6 +32,9 @@ $php\
$python\ $python\
$rust\ $rust\
$vagrant\ $vagrant\
[](fg:green bg:blue)\
$package\
[](fg:blue bg:purple)\
$aws\ $aws\
$azure\ $azure\
$gcloud\ $gcloud\
@ -38,49 +42,73 @@ $openstack\
$docker_context\ $docker_context\
$kubernetes\ $kubernetes\
$terraform\ $terraform\
[](fg:purple)\
$line_break\ $line_break\
$shell\ $shell\
${custom.bottom}\
$character""" $character"""
add_newline = true add_newline = true
[custom.top] [custom.left]
symbol = "┌┤" symbol = ""
style = "bold black" style = "fg:bright-purple"
when = true when = true
[custom.bottom] [custom.right]
symbol = "" symbol = ""
style = "bold black" style = "fg:bright-purple"
when = true when = true
[character]
success_symbol = '[▶](bold cyan)'
error_symbol = '[▶](bold red)'
vimcmd_symbol = '[▷](bold cyan)'
[directory] [directory]
format = "[$path]($style)[$read_only]($read_only_style)[├](fg:black)" format = "[$path]($style)[$read_only]($read_only_style)"
style = 'fg:bright-cyan' style = 'bg:red fg:#000000'
read_only = '' read_only = ''
use_os_path_sep = false use_os_path_sep = false
[username] [username]
format = '[┤](fg:black)[$user]($style)[├](fg:black)' format = '[$user]($style)'
style_root = 'bg:red fg:#000000'
style_user = 'bg:red fg:#000000'
[hostname]
format = '[$ssh_symbol$hostname]($style)'
style = 'bg:red fg:#000000'
ssh_symbol = ' '
[container]
format = '[$hostname]($style)'
style = 'bg:red fg:#000000'
[sudo] [sudo]
disabled = false disabled = false
format = '[┤](fg:black)[$symbol]($style)[├](fg:black)' format = '[$symbol]($style)'
style = 'fg:red' style = 'bg:red fg:#000000'
symbol = ' ' symbol = ' '
[shlvl]
style = 'bg:red fg:#000000'
### VCS
[git_branch] [git_branch]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol$branch]($style)[├](fg:black)' format = '[$symbol$branch]($style)'
style = 'fg:bright-purple' style = 'bg:16 fg:#000000'
[hg_branch]
format = '[$symbol$branch]($style)'
style = 'bg:16 fg:#000000'
[git_commit]
format = '[\($hash$tag\)]($style)'
tag_disabled = false
tag_symbol = '  '
style = 'bg:16 fg:#000000'
[git_state]
format = '[\($state( $progress_current/$progress_total)\)]($style)'
style = 'bg:16 fg:#000000'
[git_status] [git_status]
format = '([┤](fg:black)[$all_status$ahead_behind]($style)[├](fg:black))' format = '([ $all_status$ahead_behind]($style))'
ahead = "↑" ahead = "↑"
behind = "↓" behind = "↓"
conflicted = "!" conflicted = "!"
@ -89,166 +117,215 @@ diverged = "↕"
modified = "~" modified = "~"
renamed = "»" renamed = "»"
untracked = "+" untracked = "+"
style = 'fg:bright-purple' staged = "●"
stashed = "ﮅ "
[hg_branch] style = 'bg:16 fg:#000000'
format = '[┤](fg:black)[$symbol$branch]($style)[├](fg:black)'
[cmd_duration] [cmd_duration]
format = '[┤](fg:black)[ $duration]($style)[├](fg:black)' format = '[ $duration]($style)'
style = 'bg:yellow fg:#000000'
[fill] [status]
symbol = '─' style = 'bg:yellow fg:#000000'
style = 'fg:black'
### LANGUAGE VERSION INDICATORS ### LANGUAGE VERSION INDICATORS
[c] [c]
format = '[┤](fg:black)[$symbol($version(-$name))]($style)[├](fg:black)' format = '[ $symbol($version(-$name)) ]($style)'
style = 'bg:green fg:#000000'
[cmake] [cmake]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[cobol] [cobol]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[conda] [conda]
format = '[┤](fg:black)[$symbol$environment]($style)[├](fg:black)' format = '[ $symbol$environment ]($style)'
style = 'bg:green fg:#000000'
[crystal] [crystal]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[dart] [dart]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[deno] [deno]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[dotnet] [dotnet]
format = '[┤](fg:black)[$symbol($version)(🎯 $tfm)]($style)[├](fg:black)' format = '[ $symbol($version)( $tfm) ]($style)'
style = 'bg:green fg:#000000'
[elixir] [elixir]
format = '[┤](fg:black)[$symbol($version \(OTP $otp_version\))]($style)[├](fg:black)' format = '[ $symbol($version \(OTP $otp_version\)) ]($style)'
style = 'bg:green fg:#000000'
[elm] [elm]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[erlang] [erlang]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[golang] [golang]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[haskell] [haskell]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[helm] [helm]
symbol = 'ﴱ ' symbol = 'ﴱ '
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[java] [java]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[julia] [julia]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[kotlin] [kotlin]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[lua] [lua]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[nim] [nim]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[nix_shell] [nix_shell]
format = '[┤](fg:black)[$symbol$state( \($name\))]($style)[├](fg:black)' format = '[ $symbol$state( \($name\)) ]($style)'
style = 'bg:green fg:#000000'
[nodejs] [nodejs]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
detect_extensions = [] detect_extensions = []
style = 'green' style = 'bg:green fg:#000000'
[ocaml] [ocaml]
format = '[┤](fg:black)[$symbol($version)(\($switch_indicator$switch_name\))]($style)[├](fg:black)' format = '[ $symbol($version)(\($switch_indicator$switch_name\)) ]($style)'
style = 'bg:green fg:#000000'
[package]
symbol = ' '
format = '[┤](fg:black)[$symbol$version]($style)[├](fg:black)'
style = '16'
[perl] [perl]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[php] [php]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[pulumi] [pulumi]
format = '[┤](fg:black)[$symbol$stack]($style)[├](fg:black)' format = '[ $symbol$stack ]($style)'
style = 'bg:green fg:#000000'
[purescript] [purescript]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[python] [python]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[${symbol}${pyenv_prefix}(${version})(\($virtualenv\))]($style)[├](fg:black)' format = '[ ${symbol}${pyenv_prefix}(${version})(\($virtualenv\)) ]($style)'
style = 'bg:green fg:#000000'
[red] [red]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[ruby] [ruby]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[rust] [rust]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[scala] [scala]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[spack] [spack]
format = '[┤](fg:black)[$symbol$environment]($style)[├](fg:black)' format = '[ $symbol$environment ]($style)'
style = 'bg:green fg:#000000'
[swift] [swift]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[vagrant] [vagrant]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[vlang] [vlang]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
[zig] [zig]
format = '[┤](fg:black)[$symbol($version)]($style)[├](fg:black)' format = '[ $symbol($version) ]($style)'
style = 'bg:green fg:#000000'
### PACKAGE INDICATORS
[package]
symbol = ' '
format = '[ $symbol$version ]($style)'
style = 'bg:blue fg:#000000'
### CONTEXT INDICATORS ### CONTEXT INDICATORS
[aws] [aws]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol($profile)(\($region\))(\[$duration[├](fg:black))]($style)\]' format = '[ $symbol($profile)(\($region\))(\[$duration\]) ]($style)'
style = 'bg:purple fg:#000000'
[docker_context] [docker_context]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol$context]($style)[├](fg:black)' format = '[ $symbol$context ]($style)'
style = 'bg:purple fg:#000000'
[gcloud] [gcloud]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol$account(@$domain)(\($region\))]($style)[├](fg:black)' format = '[ $symbol$account(@$domain)(\($region\)) ]($style)'
style = 'bg:purple fg:#000000'
[kubernetes] [kubernetes]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol($cluster/$namespace)]($style)[├](fg:black)' format = '[ $symbol($cluster/$namespace) ]($style)'
disabled = false disabled = false
style = 'bg:purple fg:#000000'
[openstack] [openstack]
symbol = ' ' symbol = ' '
format = '[┤](fg:black)[$symbol$cloud(\($project\))]($style)[├](fg:black)' format = '[ $symbol$cloud(\($project\)) ]($style)'
style = 'bg:purple fg:#000000'
[terraform] [terraform]
format = '[┤](fg:black)[$symbol$workspace]($style)[├](fg:black)' format = '[ $symbol$workspace ]($style)'
style = 'bg:purple fg:#000000'
### STATUS INDICATORS
[character]
success_symbol = '[ﬦ](bold cyan)'
error_symbol = '[ﬦ](bold red)'
vimcmd_symbol = '[ﬦ](bold cyan)'