Move config files from config to chezmoi Add script to auto install packages with DNF and Cargo
440 lines
17 KiB
Text
440 lines
17 KiB
Text
#compdef starship
|
|
|
|
autoload -U is-at-least
|
|
|
|
_starship() {
|
|
typeset -A opt_args
|
|
typeset -a _arguments_options
|
|
local ret=1
|
|
|
|
if is-at-least 5.2; then
|
|
_arguments_options=(-s -S -C)
|
|
else
|
|
_arguments_options=(-s -C)
|
|
fi
|
|
|
|
local context curcontext="$curcontext" state line
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
'-V[Print version information]' \
|
|
'--version[Print version information]' \
|
|
":: :_starship_commands" \
|
|
"*::: :->starship" \
|
|
&& ret=0
|
|
case $state in
|
|
(starship)
|
|
words=($line[1] "${words[@]}")
|
|
(( CURRENT += 1 ))
|
|
curcontext="${curcontext%:*:*}:starship-command-$line[1]:"
|
|
case $line[1] in
|
|
(bug-report)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
&& ret=0
|
|
;;
|
|
(completions)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
':shell:(bash elvish fish powershell zsh)' \
|
|
&& ret=0
|
|
;;
|
|
(config)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
'::name -- Configuration key to edit:' \
|
|
'::value -- Value to place into that key:' \
|
|
&& ret=0
|
|
;;
|
|
(explain)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-s+[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
|
'--status=[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
|
'*--pipestatus=[Bash, Fish and Zsh support returning codes for each process in a pipeline]:PIPESTATUS: ' \
|
|
'-w+[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
|
'--terminal-width=[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
|
'-p+[The path that the prompt should render for]:PATH:_files' \
|
|
'--path=[The path that the prompt should render for]:PATH:_files' \
|
|
'-P+[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
|
'--logical-path=[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
|
'-d+[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
|
'--cmd-duration=[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
|
'-k+[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
|
'--keymap=[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
|
'-j+[The number of currently running jobs]:JOBS: ' \
|
|
'--jobs=[The number of currently running jobs]:JOBS: ' \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
&& ret=0
|
|
;;
|
|
(init)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'--print-full-init[]' \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
':shell:' \
|
|
&& ret=0
|
|
;;
|
|
(module)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-s+[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
|
'--status=[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
|
'*--pipestatus=[Bash, Fish and Zsh support returning codes for each process in a pipeline]:PIPESTATUS: ' \
|
|
'-w+[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
|
'--terminal-width=[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
|
'-p+[The path that the prompt should render for]:PATH:_files' \
|
|
'--path=[The path that the prompt should render for]:PATH:_files' \
|
|
'-P+[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
|
'--logical-path=[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
|
'-d+[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
|
'--cmd-duration=[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
|
'-k+[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
|
'--keymap=[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
|
'-j+[The number of currently running jobs]:JOBS: ' \
|
|
'--jobs=[The number of currently running jobs]:JOBS: ' \
|
|
'-l[List out all supported modules]' \
|
|
'--list[List out all supported modules]' \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
'::name -- The name of the module to be printed:' \
|
|
&& ret=0
|
|
;;
|
|
(preset)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-l[List out all preset names]' \
|
|
'--list[List out all preset names]' \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
'::name -- The name of preset to be printed:(bracketed-segments nerd-font-symbols no-empty-icons no-nerd-font no-runtime-versions pastel-powerline plain-text-symbols pure-preset tokyo-night)' \
|
|
&& ret=0
|
|
;;
|
|
(print-config)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-d[Print the default instead of the computed config]' \
|
|
'--default[Print the default instead of the computed config]' \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
'*::name -- Configuration keys to print:' \
|
|
&& ret=0
|
|
;;
|
|
(prompt)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-s+[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
|
'--status=[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
|
'*--pipestatus=[Bash, Fish and Zsh support returning codes for each process in a pipeline]:PIPESTATUS: ' \
|
|
'-w+[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
|
'--terminal-width=[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
|
'-p+[The path that the prompt should render for]:PATH:_files' \
|
|
'--path=[The path that the prompt should render for]:PATH:_files' \
|
|
'-P+[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
|
'--logical-path=[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
|
'-d+[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
|
'--cmd-duration=[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
|
'-k+[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
|
'--keymap=[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
|
'-j+[The number of currently running jobs]:JOBS: ' \
|
|
'--jobs=[The number of currently running jobs]:JOBS: ' \
|
|
'--right[Print the right prompt (instead of the standard left prompt)]' \
|
|
'(--right)--continuation[Print the continuation prompt (instead of the standard left prompt)]' \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
&& ret=0
|
|
;;
|
|
(session)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
&& ret=0
|
|
;;
|
|
(time)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
&& ret=0
|
|
;;
|
|
(timings)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-s+[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
|
'--status=[The status code of the previously run command as an unsigned or signed 32bit integer]:STATUS_CODE: ' \
|
|
'*--pipestatus=[Bash, Fish and Zsh support returning codes for each process in a pipeline]:PIPESTATUS: ' \
|
|
'-w+[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
|
'--terminal-width=[The width of the current interactive terminal]:TERMINAL_WIDTH: ' \
|
|
'-p+[The path that the prompt should render for]:PATH:_files' \
|
|
'--path=[The path that the prompt should render for]:PATH:_files' \
|
|
'-P+[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
|
'--logical-path=[The logical path that the prompt should render for. This path should be a virtual/logical representation of the PATH argument]:LOGICAL_PATH:_files' \
|
|
'-d+[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
|
'--cmd-duration=[The execution duration of the last command, in milliseconds]:CMD_DURATION: ' \
|
|
'-k+[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
|
'--keymap=[The keymap of fish/zsh/cmd]:KEYMAP: ' \
|
|
'-j+[The number of currently running jobs]:JOBS: ' \
|
|
'--jobs=[The number of currently running jobs]:JOBS: ' \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
&& ret=0
|
|
;;
|
|
(toggle)
|
|
_arguments "${_arguments_options[@]}" \
|
|
'-h[Print help information]' \
|
|
'--help[Print help information]' \
|
|
':name -- The name of the module to be toggled:' \
|
|
'::value -- The key of the config to be toggled:' \
|
|
&& ret=0
|
|
;;
|
|
(help)
|
|
_arguments "${_arguments_options[@]}" \
|
|
":: :_starship__help_commands" \
|
|
"*::: :->help" \
|
|
&& ret=0
|
|
|
|
case $state in
|
|
(help)
|
|
words=($line[1] "${words[@]}")
|
|
(( CURRENT += 1 ))
|
|
curcontext="${curcontext%:*:*}:starship-help-command-$line[1]:"
|
|
case $line[1] in
|
|
(bug-report)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(completions)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(config)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(explain)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(init)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(module)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(preset)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(print-config)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(prompt)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(session)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(time)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(timings)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(toggle)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
(help)
|
|
_arguments "${_arguments_options[@]}" \
|
|
&& ret=0
|
|
;;
|
|
esac
|
|
;;
|
|
esac
|
|
;;
|
|
esac
|
|
;;
|
|
esac
|
|
}
|
|
|
|
(( $+functions[_starship_commands] )) ||
|
|
_starship_commands() {
|
|
local commands; commands=(
|
|
'bug-report:Create a pre-populated GitHub issue with information about your configuration' \
|
|
'completions:Generate starship shell completions for your shell to stdout' \
|
|
'config:Edit the starship configuration' \
|
|
'explain:Explains the currently showing modules' \
|
|
'init:Prints the shell function used to execute starship' \
|
|
'module:Prints a specific prompt module' \
|
|
'preset:Prints a preset config' \
|
|
'print-config:Prints the computed starship configuration' \
|
|
'prompt:Prints the full starship prompt' \
|
|
'session:Generate random session key' \
|
|
'time:Prints time in milliseconds' \
|
|
'timings:Prints timings of all active modules' \
|
|
'toggle:Toggle a given starship module' \
|
|
'help:Print this message or the help of the given subcommand(s)' \
|
|
)
|
|
_describe -t commands 'starship commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__bug-report_commands] )) ||
|
|
_starship__bug-report_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship bug-report commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__bug-report_commands] )) ||
|
|
_starship__help__bug-report_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help bug-report commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__completions_commands] )) ||
|
|
_starship__completions_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship completions commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__completions_commands] )) ||
|
|
_starship__help__completions_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help completions commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__config_commands] )) ||
|
|
_starship__config_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship config commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__config_commands] )) ||
|
|
_starship__help__config_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help config commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__explain_commands] )) ||
|
|
_starship__explain_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship explain commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__explain_commands] )) ||
|
|
_starship__help__explain_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help explain commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help_commands] )) ||
|
|
_starship__help_commands() {
|
|
local commands; commands=(
|
|
'bug-report:Create a pre-populated GitHub issue with information about your configuration' \
|
|
'completions:Generate starship shell completions for your shell to stdout' \
|
|
'config:Edit the starship configuration' \
|
|
'explain:Explains the currently showing modules' \
|
|
'init:Prints the shell function used to execute starship' \
|
|
'module:Prints a specific prompt module' \
|
|
'preset:Prints a preset config' \
|
|
'print-config:Prints the computed starship configuration' \
|
|
'prompt:Prints the full starship prompt' \
|
|
'session:Generate random session key' \
|
|
'time:Prints time in milliseconds' \
|
|
'timings:Prints timings of all active modules' \
|
|
'toggle:Toggle a given starship module' \
|
|
'help:Print this message or the help of the given subcommand(s)' \
|
|
)
|
|
_describe -t commands 'starship help commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__help_commands] )) ||
|
|
_starship__help__help_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help help commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__init_commands] )) ||
|
|
_starship__help__init_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help init commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__init_commands] )) ||
|
|
_starship__init_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship init commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__module_commands] )) ||
|
|
_starship__help__module_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help module commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__module_commands] )) ||
|
|
_starship__module_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship module commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__preset_commands] )) ||
|
|
_starship__help__preset_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help preset commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__preset_commands] )) ||
|
|
_starship__preset_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship preset commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__print-config_commands] )) ||
|
|
_starship__help__print-config_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help print-config commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__print-config_commands] )) ||
|
|
_starship__print-config_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship print-config commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__prompt_commands] )) ||
|
|
_starship__help__prompt_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help prompt commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__prompt_commands] )) ||
|
|
_starship__prompt_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship prompt commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__session_commands] )) ||
|
|
_starship__help__session_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help session commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__session_commands] )) ||
|
|
_starship__session_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship session commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__time_commands] )) ||
|
|
_starship__help__time_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help time commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__time_commands] )) ||
|
|
_starship__time_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship time commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__timings_commands] )) ||
|
|
_starship__help__timings_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help timings commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__timings_commands] )) ||
|
|
_starship__timings_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship timings commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__help__toggle_commands] )) ||
|
|
_starship__help__toggle_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship help toggle commands' commands "$@"
|
|
}
|
|
(( $+functions[_starship__toggle_commands] )) ||
|
|
_starship__toggle_commands() {
|
|
local commands; commands=()
|
|
_describe -t commands 'starship toggle commands' commands "$@"
|
|
}
|
|
|
|
_starship "$@"
|