Merge branch 'main' of github.com:kristoferssolo/solorice

This commit is contained in:
Kristofers Solo 2025-08-27 19:41:22 +03:00
commit 9e273d276b
Signed by: kristoferssolo
GPG Key ID: 8687F2D3EEE6F0ED
5 changed files with 3215 additions and 1 deletions

View File

@ -57,7 +57,7 @@ update_ms = 1000
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
proc_sorting = "cpu direct"
proc_sorting = "memory"
#* Reverse sorting order, True or False.
proc_reversed = False

View File

@ -0,0 +1,116 @@
#compdef bat
local curcontext="$curcontext" ret=1
local -a state state_descr line
typeset -A opt_args
(( $+functions[_bat_cache_subcommand] )) ||
_bat_cache_subcommand() {
local -a args
args=(
'(-b --build -c --clear)'{-b,--build}'[initialize or update the syntax/theme cache]'
'(-b --build -c --clear)'{-c,--clear}'[remove the cached syntax definitions and themes]'
--source='[specify directory to load syntaxes and themes from]:directory:_files -/'
--target='[specify directory to store the cached syntax and theme set in]:directory:_files -/'
--blank'[create completely new syntax and theme sets]'
--acknowledgements'[build acknowledgements.bin]'
'(: -)'{-h,--help}'[show help information]'
)
_arguments -S -s $args
}
(( $+functions[_bat_main] )) ||
_bat_main() {
local -a args
args=(
'(-A --show-all)'{-A,--show-all}'[show non-printable characters (space, tab, newline, ..)]'
--nonprintable-notation='[specify how to display non-printable characters when using --show-all]:notation:(caret unicode)'
\*{-p,--plain}'[show plain style (alias for `--style=plain`), repeat twice to disable automatic paging (alias for `--paging=never`)]'
'(-l --language)'{-l+,--language=}'[set the language for syntax highlighting]:language:->languages'
\*{-H+,--highlight-line=}'[highlight specified block of lines]:start\:end'
\*--file-name='[specify the name to display for a file]:name:_files'
'(-d --diff)'--diff'[only show lines that have been added/removed/modified]'
--diff-context='[specify lines of context around added/removed/modified lines when using `--diff`]:lines'
--tabs='[set the tab width]:tab width [4]'
--wrap='[specify the text-wrapping mode]:mode [auto]:(auto never character)'
'!(--wrap)'{-S,--chop-long-lines}
--terminal-width='[explicitly set the width of the terminal instead of determining it automatically]:width'
'(-n --number --diff --diff-context)'{-n,--number}'[show line numbers]'
--color='[specify when to use colors]:when:(auto never always)'
--italic-text='[use italics in output]:when:(always never)'
--decorations='[specify when to show the decorations]:when:(auto never always)'
--paging='[specify when to use the pager]:when:(auto never always)'
'(-m --map-syntax)'{-m+,--map-syntax=}'[map a glob pattern to an existing syntax name]: :->syntax-maps'
'(--theme)'--theme='[set the color theme for syntax highlighting]:theme:->theme_preferences'
'(--theme-dark)'--theme-dark='[set the color theme for syntax highlighting for dark backgrounds]:theme:->themes'
'(--theme-light)'--theme-light='[set the color theme for syntax highlighting for light backgrounds]:theme:->themes'
'(: --list-themes --list-languages -L)'--list-themes'[show all supported highlighting themes]'
--style='[comma-separated list of style elements to display]: : _values "style [default]"
default auto full plain changes header header-filename header-filesize grid rule numbers snip'
\*{-r+,--line-range=}'[only print the specified line range]:start\:end'
'(* -)'{-L,--list-languages}'[display all supported languages]'
-P'[disable paging]'
"--no-config[don't use the configuration file]"
"--no-custom-assets[don't load custom assets]"
'(--no-lessopen)'--lessopen'[enable the $LESSOPEN preprocessor]'
'(--lessopen)'--no-lessopen'[disable the $LESSOPEN preprocessor if enabled (overrides --lessopen)]'
'(* -)'--config-dir"[show bat's configuration directory]"
'(* -)'--config-file'[show path to the configuration file]'
'(* -)'--generate-config-file'[generate a default configuration file]'
'(* -)'--cache-dir"[show bat's cache directory]"
'(* -)'{-h,--help}'[show help information]'
'(* -)'{-V,--version}'[show version information]'
'*: :{ _files || compadd cache }'
)
_arguments -S -s $args && ret=0
case "$state" in
syntax-maps)
if ! compset -P '*:'; then
_message -e patterns 'glob pattern:language'
return
fi
;& # fall-through
languages)
local IFS=$'\n'
local -a languages
languages=( $(bat --list-languages | awk -F':|,' '{ for (i = 1; i <= NF; ++i) printf("%s:%s\n", $i, $1) }') )
_describe 'language' languages && ret=0
;;
themes)
local -a themes expl
themes=(${(f)"$(_call_program themes bat --list-themes)"} )
_wanted themes expl 'theme' compadd -a themes && ret=0
;;
theme_preferences)
local -a themes expl
themes=(auto dark light auto:always auto:system ${(f)"$(_call_program themes bat --list-themes)"} )
_wanted themes expl 'theme' compadd -a themes && ret=0
;;
esac
return ret
}
case $words[2] in
cache)
## Completion of the 'cache' command itself is removed for better UX
## See https://github.com/sharkdp/bat/issues/2085#issuecomment-1271646802
shift words
(( CURRENT-- ))
curcontext="${curcontext%:*}-${words[1]}:"
_bat_cache_subcommand
;;
*)
_bat_main
;;
esac

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,635 @@
#compdef sqlx
autoload -U is-at-least
_sqlx() {
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]' \
'--help[Print help]' \
":: :_sqlx_commands" \
"*::: :->sqlx-cli" \
&& ret=0
case $state in
(sqlx-cli)
words=($line[1] "${words[@]}")
(( CURRENT += 1 ))
curcontext="${curcontext%:*:*}:sqlx-command-$line[1]:"
case $line[1] in
(database)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_sqlx__database_commands" \
"*::: :->database" \
&& ret=0
case $state in
(database)
words=($line[1] "${words[@]}")
(( CURRENT += 1 ))
curcontext="${curcontext%:*:*}:sqlx-database-command-$line[1]:"
case $line[1] in
(create)
_arguments "${_arguments_options[@]}" : \
'-D+[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--database-url=[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--connect-timeout=[The maximum time, in seconds, to try connecting to the database server before returning an error]:CONNECT_TIMEOUT:_default' \
'--no-dotenv[Do not automatically load \`.env\` files]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(drop)
_arguments "${_arguments_options[@]}" : \
'-D+[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--database-url=[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--connect-timeout=[The maximum time, in seconds, to try connecting to the database server before returning an error]:CONNECT_TIMEOUT:_default' \
'-y[Automatic confirmation. Without this option, you will be prompted before dropping your database]' \
'--no-dotenv[Do not automatically load \`.env\` files]' \
'-f[PostgreSQL only\: force drops the database]' \
'--force[PostgreSQL only\: force drops the database]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(reset)
_arguments "${_arguments_options[@]}" : \
'--source=[Path to folder containing migrations]:SOURCE:_default' \
'-D+[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--database-url=[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--connect-timeout=[The maximum time, in seconds, to try connecting to the database server before returning an error]:CONNECT_TIMEOUT:_default' \
'-y[Automatic confirmation. Without this option, you will be prompted before dropping your database]' \
'--no-dotenv[Do not automatically load \`.env\` files]' \
'-f[PostgreSQL only\: force drops the database]' \
'--force[PostgreSQL only\: force drops the database]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(setup)
_arguments "${_arguments_options[@]}" : \
'--source=[Path to folder containing migrations]:SOURCE:_default' \
'-D+[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--database-url=[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--connect-timeout=[The maximum time, in seconds, to try connecting to the database server before returning an error]:CONNECT_TIMEOUT:_default' \
'--no-dotenv[Do not automatically load \`.env\` files]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_sqlx__database__help_commands" \
"*::: :->help" \
&& ret=0
case $state in
(help)
words=($line[1] "${words[@]}")
(( CURRENT += 1 ))
curcontext="${curcontext%:*:*}:sqlx-database-help-command-$line[1]:"
case $line[1] in
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(drop)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(setup)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
esac
;;
esac
;;
esac
;;
esac
;;
(prepare)
_arguments "${_arguments_options[@]}" : \
'-D+[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--database-url=[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--connect-timeout=[The maximum time, in seconds, to try connecting to the database server before returning an error]:CONNECT_TIMEOUT:_default' \
'--check[Run in '\''check'\'' mode. Exits with 0 if the query metadata is up-to-date. Exits with 1 if the query metadata needs updating]' \
'--all[Prepare query macros in dependencies that exist outside the current crate or workspace]' \
'--workspace[Generate a single workspace-level \`.sqlx\` folder]' \
'--no-dotenv[Do not automatically load \`.env\` files]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::args -- Arguments to be passed to `cargo rustc ...`:_default' \
&& ret=0
;;
(migrate)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
":: :_sqlx__migrate_commands" \
"*::: :->migrate" \
&& ret=0
case $state in
(migrate)
words=($line[1] "${words[@]}")
(( CURRENT += 1 ))
curcontext="${curcontext%:*:*}:sqlx-migrate-command-$line[1]:"
case $line[1] in
(add)
_arguments "${_arguments_options[@]}" : \
'--source=[Path to folder containing migrations]:SOURCE:_default' \
'-r[If true, creates a pair of up and down migration files with same version else creates a single sql file]' \
'-t[If set, use timestamp versioning for the new migration. Conflicts with \`--sequential\`]' \
'--timestamp[If set, use timestamp versioning for the new migration. Conflicts with \`--sequential\`]' \
'(-t --timestamp)-s[If set, use sequential versioning for the new migration. Conflicts with \`--timestamp\`]' \
'(-t --timestamp)--sequential[If set, use sequential versioning for the new migration. Conflicts with \`--timestamp\`]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
':description:_default' \
&& ret=0
;;
(run)
_arguments "${_arguments_options[@]}" : \
'--source=[Path to folder containing migrations]:SOURCE:_default' \
'-D+[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--database-url=[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--connect-timeout=[The maximum time, in seconds, to try connecting to the database server before returning an error]:CONNECT_TIMEOUT:_default' \
'--target-version=[Apply migrations up to the specified version. If unspecified, apply all pending migrations. If already at the target version, then no-op]:TARGET_VERSION:_default' \
'--dry-run[List all the migrations to be run without applying]' \
'--ignore-missing[Ignore applied migrations that are missing in the resolved migrations]' \
'--no-dotenv[Do not automatically load \`.env\` files]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(revert)
_arguments "${_arguments_options[@]}" : \
'--source=[Path to folder containing migrations]:SOURCE:_default' \
'-D+[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--database-url=[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--connect-timeout=[The maximum time, in seconds, to try connecting to the database server before returning an error]:CONNECT_TIMEOUT:_default' \
'--target-version=[Revert migrations down to the specified version. If unspecified, revert only the last migration. Set to 0 to revert all migrations. If already at the target version, then no-op]:TARGET_VERSION:_default' \
'--dry-run[List the migration to be reverted without applying]' \
'--ignore-missing[Ignore applied migrations that are missing in the resolved migrations]' \
'--no-dotenv[Do not automatically load \`.env\` files]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(info)
_arguments "${_arguments_options[@]}" : \
'--source=[Path to folder containing migrations]:SOURCE:_default' \
'-D+[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--database-url=[Location of the DB, by default will be read from the DATABASE_URL env var or \`.env\` files]:DATABASE_URL:_default' \
'--connect-timeout=[The maximum time, in seconds, to try connecting to the database server before returning an error]:CONNECT_TIMEOUT:_default' \
'--no-dotenv[Do not automatically load \`.env\` files]' \
'-h[Print help]' \
'--help[Print help]' \
&& ret=0
;;
(build-script)
_arguments "${_arguments_options[@]}" : \
'--source=[Path to folder containing migrations]:SOURCE:_default' \
'--force[Overwrite the build script if it already exists]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_sqlx__migrate__help_commands" \
"*::: :->help" \
&& ret=0
case $state in
(help)
words=($line[1] "${words[@]}")
(( CURRENT += 1 ))
curcontext="${curcontext%:*:*}:sqlx-migrate-help-command-$line[1]:"
case $line[1] in
(add)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(run)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(revert)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(info)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(build-script)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
esac
;;
esac
;;
esac
;;
esac
;;
(completions)
_arguments "${_arguments_options[@]}" : \
'-h[Print help]' \
'--help[Print help]' \
':shell:(bash elvish fish powershell zsh)' \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
":: :_sqlx__help_commands" \
"*::: :->help" \
&& ret=0
case $state in
(help)
words=($line[1] "${words[@]}")
(( CURRENT += 1 ))
curcontext="${curcontext%:*:*}:sqlx-help-command-$line[1]:"
case $line[1] in
(database)
_arguments "${_arguments_options[@]}" : \
":: :_sqlx__help__database_commands" \
"*::: :->database" \
&& ret=0
case $state in
(database)
words=($line[1] "${words[@]}")
(( CURRENT += 1 ))
curcontext="${curcontext%:*:*}:sqlx-help-database-command-$line[1]:"
case $line[1] in
(create)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(drop)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(reset)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(setup)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
esac
;;
esac
;;
(prepare)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(migrate)
_arguments "${_arguments_options[@]}" : \
":: :_sqlx__help__migrate_commands" \
"*::: :->migrate" \
&& ret=0
case $state in
(migrate)
words=($line[1] "${words[@]}")
(( CURRENT += 1 ))
curcontext="${curcontext%:*:*}:sqlx-help-migrate-command-$line[1]:"
case $line[1] in
(add)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(run)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(revert)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(info)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(build-script)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
esac
;;
esac
;;
(completions)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
(help)
_arguments "${_arguments_options[@]}" : \
&& ret=0
;;
esac
;;
esac
;;
esac
;;
esac
}
(( $+functions[_sqlx_commands] )) ||
_sqlx_commands() {
local commands; commands=(
'database:Group of commands for creating and dropping your database' \
'prepare:Generate query metadata to support offline compile-time verification' \
'migrate:Group of commands for creating and running migrations' \
'completions:Generate shell completions for the specified shell' \
'help:Print this message or the help of the given subcommand(s)' \
)
_describe -t commands 'sqlx commands' commands "$@"
}
(( $+functions[_sqlx__completions_commands] )) ||
_sqlx__completions_commands() {
local commands; commands=()
_describe -t commands 'sqlx completions commands' commands "$@"
}
(( $+functions[_sqlx__database_commands] )) ||
_sqlx__database_commands() {
local commands; commands=(
'create:Creates the database specified in your DATABASE_URL' \
'drop:Drops the database specified in your DATABASE_URL' \
'reset:Drops the database specified in your DATABASE_URL, re-creates it, and runs any pending migrations' \
'setup:Creates the database specified in your DATABASE_URL and runs any pending migrations' \
'help:Print this message or the help of the given subcommand(s)' \
)
_describe -t commands 'sqlx database commands' commands "$@"
}
(( $+functions[_sqlx__database__create_commands] )) ||
_sqlx__database__create_commands() {
local commands; commands=()
_describe -t commands 'sqlx database create commands' commands "$@"
}
(( $+functions[_sqlx__database__drop_commands] )) ||
_sqlx__database__drop_commands() {
local commands; commands=()
_describe -t commands 'sqlx database drop commands' commands "$@"
}
(( $+functions[_sqlx__database__help_commands] )) ||
_sqlx__database__help_commands() {
local commands; commands=(
'create:Creates the database specified in your DATABASE_URL' \
'drop:Drops the database specified in your DATABASE_URL' \
'reset:Drops the database specified in your DATABASE_URL, re-creates it, and runs any pending migrations' \
'setup:Creates the database specified in your DATABASE_URL and runs any pending migrations' \
'help:Print this message or the help of the given subcommand(s)' \
)
_describe -t commands 'sqlx database help commands' commands "$@"
}
(( $+functions[_sqlx__database__help__create_commands] )) ||
_sqlx__database__help__create_commands() {
local commands; commands=()
_describe -t commands 'sqlx database help create commands' commands "$@"
}
(( $+functions[_sqlx__database__help__drop_commands] )) ||
_sqlx__database__help__drop_commands() {
local commands; commands=()
_describe -t commands 'sqlx database help drop commands' commands "$@"
}
(( $+functions[_sqlx__database__help__help_commands] )) ||
_sqlx__database__help__help_commands() {
local commands; commands=()
_describe -t commands 'sqlx database help help commands' commands "$@"
}
(( $+functions[_sqlx__database__help__reset_commands] )) ||
_sqlx__database__help__reset_commands() {
local commands; commands=()
_describe -t commands 'sqlx database help reset commands' commands "$@"
}
(( $+functions[_sqlx__database__help__setup_commands] )) ||
_sqlx__database__help__setup_commands() {
local commands; commands=()
_describe -t commands 'sqlx database help setup commands' commands "$@"
}
(( $+functions[_sqlx__database__reset_commands] )) ||
_sqlx__database__reset_commands() {
local commands; commands=()
_describe -t commands 'sqlx database reset commands' commands "$@"
}
(( $+functions[_sqlx__database__setup_commands] )) ||
_sqlx__database__setup_commands() {
local commands; commands=()
_describe -t commands 'sqlx database setup commands' commands "$@"
}
(( $+functions[_sqlx__help_commands] )) ||
_sqlx__help_commands() {
local commands; commands=(
'database:Group of commands for creating and dropping your database' \
'prepare:Generate query metadata to support offline compile-time verification' \
'migrate:Group of commands for creating and running migrations' \
'completions:Generate shell completions for the specified shell' \
'help:Print this message or the help of the given subcommand(s)' \
)
_describe -t commands 'sqlx help commands' commands "$@"
}
(( $+functions[_sqlx__help__completions_commands] )) ||
_sqlx__help__completions_commands() {
local commands; commands=()
_describe -t commands 'sqlx help completions commands' commands "$@"
}
(( $+functions[_sqlx__help__database_commands] )) ||
_sqlx__help__database_commands() {
local commands; commands=(
'create:Creates the database specified in your DATABASE_URL' \
'drop:Drops the database specified in your DATABASE_URL' \
'reset:Drops the database specified in your DATABASE_URL, re-creates it, and runs any pending migrations' \
'setup:Creates the database specified in your DATABASE_URL and runs any pending migrations' \
)
_describe -t commands 'sqlx help database commands' commands "$@"
}
(( $+functions[_sqlx__help__database__create_commands] )) ||
_sqlx__help__database__create_commands() {
local commands; commands=()
_describe -t commands 'sqlx help database create commands' commands "$@"
}
(( $+functions[_sqlx__help__database__drop_commands] )) ||
_sqlx__help__database__drop_commands() {
local commands; commands=()
_describe -t commands 'sqlx help database drop commands' commands "$@"
}
(( $+functions[_sqlx__help__database__reset_commands] )) ||
_sqlx__help__database__reset_commands() {
local commands; commands=()
_describe -t commands 'sqlx help database reset commands' commands "$@"
}
(( $+functions[_sqlx__help__database__setup_commands] )) ||
_sqlx__help__database__setup_commands() {
local commands; commands=()
_describe -t commands 'sqlx help database setup commands' commands "$@"
}
(( $+functions[_sqlx__help__help_commands] )) ||
_sqlx__help__help_commands() {
local commands; commands=()
_describe -t commands 'sqlx help help commands' commands "$@"
}
(( $+functions[_sqlx__help__migrate_commands] )) ||
_sqlx__help__migrate_commands() {
local commands; commands=(
'add:Create a new migration with the given description' \
'run:Run all pending migrations' \
'revert:Revert the latest migration with a down file' \
'info:List all available migrations' \
'build-script:Generate a \`build.rs\` to trigger recompilation when a new migration is added' \
)
_describe -t commands 'sqlx help migrate commands' commands "$@"
}
(( $+functions[_sqlx__help__migrate__add_commands] )) ||
_sqlx__help__migrate__add_commands() {
local commands; commands=()
_describe -t commands 'sqlx help migrate add commands' commands "$@"
}
(( $+functions[_sqlx__help__migrate__build-script_commands] )) ||
_sqlx__help__migrate__build-script_commands() {
local commands; commands=()
_describe -t commands 'sqlx help migrate build-script commands' commands "$@"
}
(( $+functions[_sqlx__help__migrate__info_commands] )) ||
_sqlx__help__migrate__info_commands() {
local commands; commands=()
_describe -t commands 'sqlx help migrate info commands' commands "$@"
}
(( $+functions[_sqlx__help__migrate__revert_commands] )) ||
_sqlx__help__migrate__revert_commands() {
local commands; commands=()
_describe -t commands 'sqlx help migrate revert commands' commands "$@"
}
(( $+functions[_sqlx__help__migrate__run_commands] )) ||
_sqlx__help__migrate__run_commands() {
local commands; commands=()
_describe -t commands 'sqlx help migrate run commands' commands "$@"
}
(( $+functions[_sqlx__help__prepare_commands] )) ||
_sqlx__help__prepare_commands() {
local commands; commands=()
_describe -t commands 'sqlx help prepare commands' commands "$@"
}
(( $+functions[_sqlx__migrate_commands] )) ||
_sqlx__migrate_commands() {
local commands; commands=(
'add:Create a new migration with the given description' \
'run:Run all pending migrations' \
'revert:Revert the latest migration with a down file' \
'info:List all available migrations' \
'build-script:Generate a \`build.rs\` to trigger recompilation when a new migration is added' \
'help:Print this message or the help of the given subcommand(s)' \
)
_describe -t commands 'sqlx migrate commands' commands "$@"
}
(( $+functions[_sqlx__migrate__add_commands] )) ||
_sqlx__migrate__add_commands() {
local commands; commands=()
_describe -t commands 'sqlx migrate add commands' commands "$@"
}
(( $+functions[_sqlx__migrate__build-script_commands] )) ||
_sqlx__migrate__build-script_commands() {
local commands; commands=()
_describe -t commands 'sqlx migrate build-script commands' commands "$@"
}
(( $+functions[_sqlx__migrate__help_commands] )) ||
_sqlx__migrate__help_commands() {
local commands; commands=(
'add:Create a new migration with the given description' \
'run:Run all pending migrations' \
'revert:Revert the latest migration with a down file' \
'info:List all available migrations' \
'build-script:Generate a \`build.rs\` to trigger recompilation when a new migration is added' \
'help:Print this message or the help of the given subcommand(s)' \
)
_describe -t commands 'sqlx migrate help commands' commands "$@"
}
(( $+functions[_sqlx__migrate__help__add_commands] )) ||
_sqlx__migrate__help__add_commands() {
local commands; commands=()
_describe -t commands 'sqlx migrate help add commands' commands "$@"
}
(( $+functions[_sqlx__migrate__help__build-script_commands] )) ||
_sqlx__migrate__help__build-script_commands() {
local commands; commands=()
_describe -t commands 'sqlx migrate help build-script commands' commands "$@"
}
(( $+functions[_sqlx__migrate__help__help_commands] )) ||
_sqlx__migrate__help__help_commands() {
local commands; commands=()
_describe -t commands 'sqlx migrate help help commands' commands "$@"
}
(( $+functions[_sqlx__migrate__help__info_commands] )) ||
_sqlx__migrate__help__info_commands() {
local commands; commands=()
_describe -t commands 'sqlx migrate help info commands' commands "$@"
}
(( $+functions[_sqlx__migrate__help__revert_commands] )) ||
_sqlx__migrate__help__revert_commands() {
local commands; commands=()
_describe -t commands 'sqlx migrate help revert commands' commands "$@"
}
(( $+functions[_sqlx__migrate__help__run_commands] )) ||
_sqlx__migrate__help__run_commands() {
local commands; commands=()
_describe -t commands 'sqlx migrate help run commands' commands "$@"
}
(( $+functions[_sqlx__migrate__info_commands] )) ||
_sqlx__migrate__info_commands() {
local commands; commands=()
_describe -t commands 'sqlx migrate info commands' commands "$@"
}
(( $+functions[_sqlx__migrate__revert_commands] )) ||
_sqlx__migrate__revert_commands() {
local commands; commands=()
_describe -t commands 'sqlx migrate revert commands' commands "$@"
}
(( $+functions[_sqlx__migrate__run_commands] )) ||
_sqlx__migrate__run_commands() {
local commands; commands=()
_describe -t commands 'sqlx migrate run commands' commands "$@"
}
(( $+functions[_sqlx__prepare_commands] )) ||
_sqlx__prepare_commands() {
local commands; commands=()
_describe -t commands 'sqlx prepare commands' commands "$@"
}
if [ "$funcstack[1]" = "_sqlx" ]; then
_sqlx "$@"
else
compdef _sqlx sqlx
fi

View File

@ -0,0 +1,120 @@
#!/bin/env zsh
# =============================================================================
#
# Utility functions for zoxide.
#
# pwd based on the value of _ZO_RESOLVE_SYMLINKS.
function __zoxide_pwd() {
\builtin pwd -L
}
# cd + custom logic based on the value of _ZO_ECHO.
function __zoxide_cd() {
# shellcheck disable=SC2164
\builtin cd -- "$@"
}
# =============================================================================
#
# Hook configuration for zoxide.
#
# Hook to add new entries to the database.
function __zoxide_hook() {
# shellcheck disable=SC2312
\command zoxide add -- "$(__zoxide_pwd)"
}
# Initialize hook.
# shellcheck disable=SC2154
if [[ ${precmd_functions[(Ie)__zoxide_hook]:-} -eq 0 ]] && [[ ${chpwd_functions[(Ie)__zoxide_hook]:-} -eq 0 ]]; then
chpwd_functions+=(__zoxide_hook)
fi
# =============================================================================
#
# When using zoxide with --no-cmd, alias these internal functions as desired.
#
# Jump to a directory using only keywords.
function __zoxide_z() {
# shellcheck disable=SC2199
if [[ "$#" -eq 0 ]]; then
__zoxide_cd ~
elif [[ "$#" -eq 1 ]] && { [[ -d "$1" ]] || [[ "$1" = '-' ]] || [[ "$1" =~ ^[-+][0-9]$ ]]; }; then
__zoxide_cd "$1"
else
\builtin local result
# shellcheck disable=SC2312
result="$(\command zoxide query --exclude "$(__zoxide_pwd)" -- "$@")" && __zoxide_cd "${result}"
fi
}
# Jump to a directory using interactive search.
function __zoxide_zi() {
\builtin local result
result="$(\command zoxide query --interactive -- "$@")" && __zoxide_cd "${result}"
}
# =============================================================================
#
# Commands for zoxide. Disable these using --no-cmd.
#
function z() {
__zoxide_z "$@"
}
function zi() {
__zoxide_zi "$@"
}
# Completions.
if [[ -o zle ]]; then
__zoxide_result=''
function __zoxide_z_complete() {
# Only show completions when the cursor is at the end of the line.
# shellcheck disable=SC2154
[[ "${#words[@]}" -eq "${CURRENT}" ]] || return 0
if [[ "${#words[@]}" -eq 2 ]]; then
# Show completions for local directories.
_files -/
elif [[ "${words[-1]}" == '' ]]; then
# Show completions for Space-Tab.
# shellcheck disable=SC2086
__zoxide_result="$(\command zoxide query --exclude "$(__zoxide_pwd || \builtin true)" --interactive -- ${words[2,-1]})" || __zoxide_result=''
# Bind '\e[0n' to helper function.
\builtin bindkey '\e[0n' '__zoxide_z_complete_helper'
# Send '\e[0n' to console input.
\builtin printf '\e[5n'
fi
# Report that the completion was successful, so that we don't fall back
# to another completion function.
return 0
}
function __zoxide_z_complete_helper() {
if [[ -n "${__zoxide_result}" ]]; then
# shellcheck disable=SC2034,SC2296
BUFFER="z ${(q-)__zoxide_result}"
\builtin zle reset-prompt
\builtin zle accept-line
else
\builtin zle reset-prompt
fi
}
\builtin zle -N __zoxide_z_complete_helper
[[ "${+functions[compdef]}" -ne 0 ]] && \compdef __zoxide_z_complete z
fi
# =============================================================================
#
# To initialize zoxide, add this to your configuration (usually ~/.zshrc):
#
eval "$(zoxide init zsh)"