bug: disable stdin by default unless RTX_RAW=1 (#229)

This commit is contained in:
Jeff Dickey 2023-02-27 21:47:08 -06:00 committed by GitHub
parent faa2987943
commit 5c26bf3bd4
36 changed files with 682 additions and 423 deletions

View File

@ -15,9 +15,11 @@ _rtx() {
local context curcontext="$curcontext" state line
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -37,12 +39,14 @@ _rtx() {
_arguments "${_arguments_options[@]}" \
'-s+[Shell type to generate the script for]:SHELL:(bash fish xonsh zsh)' \
'--shell=[Shell type to generate the script for]:SHELL:(bash fish xonsh zsh)' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'--status[Show "rtx: <PLUGIN>@<VERSION>" message when changing directories]' \
'-q[noop]' \
'--quiet[noop]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -54,9 +58,11 @@ _arguments "${_arguments_options[@]}" \
_arguments "${_arguments_options[@]}" \
'-p+[filter aliases by plugin]:PLUGIN: ' \
'--plugin=[filter aliases by plugin]:PLUGIN: ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \
@ -73,9 +79,11 @@ _arguments "${_arguments_options[@]}" \
case $line[1] in
(get)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -88,9 +96,11 @@ _arguments "${_arguments_options[@]}" \
_arguments "${_arguments_options[@]}" \
'-p+[Show aliases for <PLUGIN>]:PLUGIN: ' \
'--plugin=[Show aliases for <PLUGIN>]:PLUGIN: ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -99,9 +109,11 @@ _arguments "${_arguments_options[@]}" \
;;
(set)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -113,9 +125,11 @@ _arguments "${_arguments_options[@]}" \
;;
(unset)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -166,9 +180,11 @@ esac
;;
(asdf)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \
@ -178,9 +194,11 @@ _arguments "${_arguments_options[@]}" \
;;
(bin-paths)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \
@ -189,9 +207,11 @@ _arguments "${_arguments_options[@]}" \
;;
(cache)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -208,9 +228,11 @@ _arguments "${_arguments_options[@]}" \
case $line[1] in
(clear)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \
@ -249,9 +271,11 @@ esac
_arguments "${_arguments_options[@]}" \
'-s+[shell type]:SHELL:(bash elvish fish powershell zsh)' \
'--shell=[shell type]:SHELL:(bash elvish fish powershell zsh)' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -260,9 +284,11 @@ _arguments "${_arguments_options[@]}" \
;;
(current)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -272,9 +298,11 @@ _arguments "${_arguments_options[@]}" \
;;
(deactivate)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -283,9 +311,11 @@ _arguments "${_arguments_options[@]}" \
;;
(direnv)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -302,9 +332,11 @@ _arguments "${_arguments_options[@]}" \
case $line[1] in
(envrc)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \
@ -313,9 +345,11 @@ _arguments "${_arguments_options[@]}" \
;;
(exec)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \
@ -324,9 +358,11 @@ _arguments "${_arguments_options[@]}" \
;;
(activate)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -371,9 +407,11 @@ esac
;;
(doctor)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -384,9 +422,11 @@ _arguments "${_arguments_options[@]}" \
_arguments "${_arguments_options[@]}" \
'-s+[Shell type to generate environment variables for]:SHELL:(bash fish xonsh zsh)' \
'--shell=[Shell type to generate environment variables for]:SHELL:(bash fish xonsh zsh)' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -398,9 +438,11 @@ _arguments "${_arguments_options[@]}" \
_arguments "${_arguments_options[@]}" \
'()-c+[Command string to execute]:C: ' \
'()--command=[Command string to execute]:C: ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -411,11 +453,13 @@ _arguments "${_arguments_options[@]}" \
(global)
_arguments "${_arguments_options[@]}" \
'*--remove=[Remove the plugin(s) from ~/.tool-versions]:PLUGIN: ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'--pin[Save exact version to `~/.tool-versions`]' \
'--fuzzy[Save fuzzy version to `~/.tool-versions`]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -427,10 +471,12 @@ _arguments "${_arguments_options[@]}" \
_arguments "${_arguments_options[@]}" \
'-s+[Shell type to generate script for]:SHELL:(bash fish xonsh zsh)' \
'--shell=[Shell type to generate script for]:SHELL:(bash fish xonsh zsh)' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'--status[Show "rtx: <PLUGIN>@<VERSION>" message when changing directories]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \
@ -439,11 +485,13 @@ _arguments "${_arguments_options[@]}" \
;;
(implode)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'--config[Also remove config directory]' \
'--dry-run[List directories that would be removed without actually removing them]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -454,15 +502,17 @@ _arguments "${_arguments_options[@]}" \
_arguments "${_arguments_options[@]}" \
'()*-p+[Only install runtime(s) for <PLUGIN>]:PLUGIN: ' \
'()*--plugin=[Only install runtime(s) for <PLUGIN>]:PLUGIN: ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-f[Force reinstall even if already installed]' \
'--force[Force reinstall even if already installed]' \
'(-p --plugin -f --force)-a[Install all missing runtimes as well as all plugins for the current directory]' \
'(-p --plugin -f --force)--all[Install all missing runtimes as well as all plugins for the current directory]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'*::runtime -- Runtime(s) to install:' \
@ -470,9 +520,11 @@ _arguments "${_arguments_options[@]}" \
;;
(latest)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -484,15 +536,17 @@ _arguments "${_arguments_options[@]}" \
(local)
_arguments "${_arguments_options[@]}" \
'*--remove=[Remove the plugin(s) from .tool-versions]:PLUGIN: ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-p[Recurse up to find a .tool-versions file rather than using the current directory only
by default this command will only set the runtime in the current directory ("$PWD/.tool-versions")]' \
'--parent[Recurse up to find a .tool-versions file rather than using the current directory only
by default this command will only set the runtime in the current directory ("$PWD/.tool-versions")]' \
'--pin[Save exact version to `.tool-versions`]' \
'--fuzzy[Save fuzzy version to `.tool-versions`]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -504,11 +558,13 @@ by default this command will only set the runtime in the current directory ("$PW
_arguments "${_arguments_options[@]}" \
'-p+[Only show runtimes from \[PLUGIN\]]:PLUGIN: ' \
'--plugin=[Only show runtimes from \[PLUGIN\]]:PLUGIN: ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-c[Only show runtimes currently specified in .tool-versions]' \
'--current[Only show runtimes currently specified in .tool-versions]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -518,9 +574,11 @@ _arguments "${_arguments_options[@]}" \
;;
(ls-remote)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -531,9 +589,11 @@ _arguments "${_arguments_options[@]}" \
;;
(mangen)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \
@ -542,13 +602,15 @@ _arguments "${_arguments_options[@]}" \
;;
(plugins)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-a[list all available remote plugins]' \
'--all[list all available remote plugins]' \
'-u[show the git url for each plugin]' \
'--urls[show the git url for each plugin]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -565,15 +627,17 @@ _arguments "${_arguments_options[@]}" \
case $line[1] in
(install)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-f[Reinstall even if plugin exists]' \
'--force[Reinstall even if plugin exists]' \
'(-f --force)-a[Install all missing plugins]' \
'(-f --force)--all[Install all missing plugins]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'::name -- The name of the plugin to install:' \
@ -582,13 +646,15 @@ _arguments "${_arguments_options[@]}" \
;;
(ls)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-a[List all available remote plugins]' \
'--all[List all available remote plugins]' \
'-u[Show the git url for each plugin]' \
'--urls[Show the git url for each plugin]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -597,11 +663,13 @@ _arguments "${_arguments_options[@]}" \
;;
(ls-remote)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-u[Show the git url for each plugin]' \
'--urls[Show the git url for each plugin]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -610,9 +678,11 @@ _arguments "${_arguments_options[@]}" \
;;
(uninstall)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -622,11 +692,13 @@ _arguments "${_arguments_options[@]}" \
;;
(update)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'()-a[Update all plugins]' \
'()--all[Update all plugins]' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -680,9 +752,11 @@ esac
;;
(reshim)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -693,9 +767,11 @@ _arguments "${_arguments_options[@]}" \
;;
(self-update)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \
@ -704,9 +780,11 @@ _arguments "${_arguments_options[@]}" \
;;
(settings)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \
@ -723,9 +801,11 @@ _arguments "${_arguments_options[@]}" \
case $line[1] in
(get)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -735,9 +815,11 @@ _arguments "${_arguments_options[@]}" \
;;
(ls)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -746,9 +828,11 @@ _arguments "${_arguments_options[@]}" \
;;
(set)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -759,9 +843,11 @@ _arguments "${_arguments_options[@]}" \
;;
(unset)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -811,9 +897,11 @@ esac
;;
(shell)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -823,9 +911,11 @@ _arguments "${_arguments_options[@]}" \
;;
(uninstall)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -835,9 +925,11 @@ _arguments "${_arguments_options[@]}" \
;;
(version)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \
@ -846,9 +938,11 @@ _arguments "${_arguments_options[@]}" \
;;
(where)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -859,9 +953,11 @@ _arguments "${_arguments_options[@]}" \
;;
(which)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help (see more with '\''--help'\'')]' \
@ -871,9 +967,11 @@ _arguments "${_arguments_options[@]}" \
;;
(render-help)
_arguments "${_arguments_options[@]}" \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-j+[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--jobs=[Number of plugins and runtimes to install in parallel, default: 4]: : ' \
'--log-level=[Set the log output verbosity]:LEVEL: ' \
'-r[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'--raw[Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.]' \
'*-v[Show installation output]' \
'*--verbose[Show installation output]' \
'-h[Print help]' \

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,6 @@
complete -c rtx -n "__fish_use_subcommand" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_use_subcommand" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_use_subcommand" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_use_subcommand" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_use_subcommand" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_use_subcommand" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_use_subcommand" -s V -l version -d 'Print version'
@ -36,15 +37,17 @@ complete -c rtx -n "__fish_use_subcommand" -f -a "which" -d 'shows the plugin th
complete -c rtx -n "__fish_use_subcommand" -f -a "render-help" -d 'internal command to generate markdown from help'
complete -c rtx -n "__fish_use_subcommand" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c rtx -n "__fish_seen_subcommand_from activate" -s s -l shell -d 'Shell type to generate the script for' -r -f -a "{bash ,fish ,xonsh ,zsh }"
complete -c rtx -n "__fish_seen_subcommand_from activate" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from activate" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from activate" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from activate" -l status -d 'Show "rtx: <PLUGIN>@<VERSION>" message when changing directories'
complete -c rtx -n "__fish_seen_subcommand_from activate" -s q -l quiet -d 'noop'
complete -c rtx -n "__fish_seen_subcommand_from activate" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from activate" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from activate" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -s p -l plugin -d 'filter aliases by plugin' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "get" -d 'Show an alias for a plugin'
@ -54,21 +57,25 @@ These can come from user config or from plugins in `bin/list-aliases`.'
complete -c rtx -n "__fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "set" -d 'Add/update an alias for a plugin'
complete -c rtx -n "__fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "unset" -d 'Clears an alias for a plugin'
complete -c rtx -n "__fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from get" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from get" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from get" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from get" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from get" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from get" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from ls" -s p -l plugin -d 'Show aliases for <PLUGIN>' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from ls" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from ls" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from ls" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from ls" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from ls" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from ls" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from set" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from set" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from set" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from set" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from set" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from set" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from unset" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from unset" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from unset" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from unset" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from unset" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from unset" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "get" -d 'Show an alias for a plugin'
@ -78,41 +85,49 @@ These can come from user config or from plugins in `bin/list-aliases`.'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "set" -d 'Add/update an alias for a plugin'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "unset" -d 'Clears an alias for a plugin'
complete -c rtx -n "__fish_seen_subcommand_from alias; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c rtx -n "__fish_seen_subcommand_from asdf" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from asdf" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from asdf" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from asdf" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from asdf" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from asdf" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from bin-paths" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from bin-paths" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from bin-paths" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from bin-paths" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from bin-paths" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from bin-paths" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from cache; and not __fish_seen_subcommand_from clear; and not __fish_seen_subcommand_from help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from cache; and not __fish_seen_subcommand_from clear; and not __fish_seen_subcommand_from help" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from cache; and not __fish_seen_subcommand_from clear; and not __fish_seen_subcommand_from help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from cache; and not __fish_seen_subcommand_from clear; and not __fish_seen_subcommand_from help" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from cache; and not __fish_seen_subcommand_from clear; and not __fish_seen_subcommand_from help" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from cache; and not __fish_seen_subcommand_from clear; and not __fish_seen_subcommand_from help" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from cache; and not __fish_seen_subcommand_from clear; and not __fish_seen_subcommand_from help" -f -a "clear" -d 'Deletes all cache files in rtx'
complete -c rtx -n "__fish_seen_subcommand_from cache; and not __fish_seen_subcommand_from clear; and not __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c rtx -n "__fish_seen_subcommand_from cache; and __fish_seen_subcommand_from clear" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from cache; and __fish_seen_subcommand_from clear" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from cache; and __fish_seen_subcommand_from clear" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from cache; and __fish_seen_subcommand_from clear" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from cache; and __fish_seen_subcommand_from clear" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from cache; and __fish_seen_subcommand_from clear" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from cache; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from clear; and not __fish_seen_subcommand_from help" -f -a "clear" -d 'Deletes all cache files in rtx'
complete -c rtx -n "__fish_seen_subcommand_from cache; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from clear; and not __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c rtx -n "__fish_seen_subcommand_from complete" -s s -l shell -d 'shell type' -r -f -a "{bash ,elvish ,fish ,powershell ,zsh }"
complete -c rtx -n "__fish_seen_subcommand_from complete" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from complete" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from complete" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from complete" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from complete" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from complete" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from current" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from current" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from current" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from current" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from current" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from current" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from deactivate" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from deactivate" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from deactivate" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from deactivate" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from deactivate" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from deactivate" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -f -a "envrc" -d '[internal] This is an internal command that writes an envrc file
@ -121,16 +136,19 @@ complete -c rtx -n "__fish_seen_subcommand_from direnv; and not __fish_seen_subc
for direnv to consume.'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -f -a "activate" -d 'Output direnv function to use rtx inside direnv'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from envrc" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from envrc" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from envrc" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from envrc" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from envrc" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from envrc" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from exec" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from exec" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from exec" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from exec" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from exec" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from exec" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from activate" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from activate" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from activate" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from activate" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from activate" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from activate" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -f -a "envrc" -d '[internal] This is an internal command that writes an envrc file
@ -139,77 +157,90 @@ complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcomma
for direnv to consume.'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -f -a "activate" -d 'Output direnv function to use rtx inside direnv'
complete -c rtx -n "__fish_seen_subcommand_from direnv; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from envrc; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c rtx -n "__fish_seen_subcommand_from doctor" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from doctor" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from doctor" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from doctor" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from doctor" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from doctor" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from env" -s s -l shell -d 'Shell type to generate environment variables for' -r -f -a "{bash ,fish ,xonsh ,zsh }"
complete -c rtx -n "__fish_seen_subcommand_from env" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from env" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from env" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from env" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from env" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from env" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from exec" -s c -l command -d 'Command string to execute' -r
complete -c rtx -n "__fish_seen_subcommand_from exec" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from exec" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from exec" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from exec" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from exec" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from exec" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from global" -l remove -d 'Remove the plugin(s) from ~/.tool-versions' -r
complete -c rtx -n "__fish_seen_subcommand_from global" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from global" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from global" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from global" -l pin -d 'Save exact version to `~/.tool-versions`'
complete -c rtx -n "__fish_seen_subcommand_from global" -l fuzzy -d 'Save fuzzy version to `~/.tool-versions`'
complete -c rtx -n "__fish_seen_subcommand_from global" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from global" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from global" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from hook-env" -s s -l shell -d 'Shell type to generate script for' -r -f -a "{bash ,fish ,xonsh ,zsh }"
complete -c rtx -n "__fish_seen_subcommand_from hook-env" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from hook-env" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from hook-env" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from hook-env" -l status -d 'Show "rtx: <PLUGIN>@<VERSION>" message when changing directories'
complete -c rtx -n "__fish_seen_subcommand_from hook-env" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from hook-env" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from hook-env" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from implode" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from implode" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from implode" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from implode" -l config -d 'Also remove config directory'
complete -c rtx -n "__fish_seen_subcommand_from implode" -l dry-run -d 'List directories that would be removed without actually removing them'
complete -c rtx -n "__fish_seen_subcommand_from implode" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from implode" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from implode" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from install" -s p -l plugin -d 'Only install runtime(s) for <PLUGIN>' -r
complete -c rtx -n "__fish_seen_subcommand_from install" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from install" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from install" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from install" -s f -l force -d 'Force reinstall even if already installed'
complete -c rtx -n "__fish_seen_subcommand_from install" -s a -l all -d 'Install all missing runtimes as well as all plugins for the current directory'
complete -c rtx -n "__fish_seen_subcommand_from install" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from install" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from install" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from latest" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from latest" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from latest" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from latest" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from latest" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from latest" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from local" -l remove -d 'Remove the plugin(s) from .tool-versions' -r
complete -c rtx -n "__fish_seen_subcommand_from local" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from local" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from local" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from local" -s p -l parent -d 'Recurse up to find a .tool-versions file rather than using the current directory only
by default this command will only set the runtime in the current directory ("$PWD/.tool-versions")'
complete -c rtx -n "__fish_seen_subcommand_from local" -l pin -d 'Save exact version to `.tool-versions`'
complete -c rtx -n "__fish_seen_subcommand_from local" -l fuzzy -d 'Save fuzzy version to `.tool-versions`'
complete -c rtx -n "__fish_seen_subcommand_from local" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from local" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from local" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from ls" -s p -l plugin -d 'Only show runtimes from [PLUGIN]' -r
complete -c rtx -n "__fish_seen_subcommand_from ls" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from ls" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from ls" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from ls" -s c -l current -d 'Only show runtimes currently specified in .tool-versions'
complete -c rtx -n "__fish_seen_subcommand_from ls" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from ls" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from ls" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from ls-remote" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from ls-remote" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from ls-remote" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from ls-remote" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from ls-remote" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from ls-remote" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from mangen" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from mangen" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from mangen" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from mangen" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from mangen" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from mangen" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -s a -l all -d 'list all available remote plugins'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -s u -l urls -d 'show the git url for each plugin'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -f -a "install" -d 'Install a plugin'
@ -218,30 +249,35 @@ complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_sub
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -f -a "uninstall" -d 'Removes a plugin'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -f -a "update" -d 'Updates a plugin to the latest version'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from install" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from install" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from install" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from install" -s f -l force -d 'Reinstall even if plugin exists'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from install" -s a -l all -d 'Install all missing plugins'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from install" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from install" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from install" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls" -s a -l all -d 'List all available remote plugins'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls" -s u -l urls -d 'Show the git url for each plugin'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls-remote" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls-remote" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls-remote" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls-remote" -s u -l urls -d 'Show the git url for each plugin'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls-remote" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls-remote" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from ls-remote" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from uninstall" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from uninstall" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from uninstall" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from uninstall" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from uninstall" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from uninstall" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from update" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from update" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from update" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from update" -s a -l all -d 'Update all plugins'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from update" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from update" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from update" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -f -a "install" -d 'Install a plugin'
@ -250,16 +286,19 @@ complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcomm
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -f -a "uninstall" -d 'Removes a plugin'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -f -a "update" -d 'Updates a plugin to the latest version'
complete -c rtx -n "__fish_seen_subcommand_from plugins; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from update; and not __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c rtx -n "__fish_seen_subcommand_from reshim" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from reshim" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from reshim" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from reshim" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from reshim" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from reshim" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from self-update" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from self-update" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from self-update" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from self-update" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from self-update" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from self-update" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from settings; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from settings; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from settings; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from settings; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "get" -d 'Show a current setting'
@ -267,20 +306,24 @@ complete -c rtx -n "__fish_seen_subcommand_from settings; and not __fish_seen_su
complete -c rtx -n "__fish_seen_subcommand_from settings; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "set" -d 'Add/update a setting'
complete -c rtx -n "__fish_seen_subcommand_from settings; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "unset" -d 'Clears a setting'
complete -c rtx -n "__fish_seen_subcommand_from settings; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from get" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from get" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from get" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from get" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from get" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from get" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from ls" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from ls" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from ls" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from ls" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from ls" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from ls" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from set" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from set" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from set" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from set" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from set" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from set" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from unset" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from unset" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from unset" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from unset" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from unset" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from unset" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "get" -d 'Show a current setting'
@ -288,28 +331,34 @@ complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcom
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "set" -d 'Add/update a setting'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "unset" -d 'Clears a setting'
complete -c rtx -n "__fish_seen_subcommand_from settings; and __fish_seen_subcommand_from help; and not __fish_seen_subcommand_from get; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from set; and not __fish_seen_subcommand_from unset; and not __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c rtx -n "__fish_seen_subcommand_from shell" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from shell" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from shell" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from shell" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from shell" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from shell" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from uninstall" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from uninstall" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from uninstall" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from uninstall" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from uninstall" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from uninstall" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from version" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from version" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from version" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from version" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from version" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from version" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from where" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from where" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from where" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from where" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from where" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from where" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from which" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from which" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from which" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from which" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from which" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from which" -s h -l help -d 'Print help (see more with \'--help\')'
complete -c rtx -n "__fish_seen_subcommand_from render-help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from render-help" -s j -l jobs -d 'Number of plugins and runtimes to install in parallel, default: 4' -r
complete -c rtx -n "__fish_seen_subcommand_from render-help" -l log-level -d 'Set the log output verbosity' -r
complete -c rtx -n "__fish_seen_subcommand_from render-help" -s r -l raw -d 'Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.'
complete -c rtx -n "__fish_seen_subcommand_from render-help" -s v -l verbose -d 'Show installation output'
complete -c rtx -n "__fish_seen_subcommand_from render-help" -s h -l help -d 'Print help'
complete -c rtx -n "__fish_seen_subcommand_from help; and not __fish_seen_subcommand_from activate; and not __fish_seen_subcommand_from alias; and not __fish_seen_subcommand_from asdf; and not __fish_seen_subcommand_from bin-paths; and not __fish_seen_subcommand_from cache; and not __fish_seen_subcommand_from complete; and not __fish_seen_subcommand_from current; and not __fish_seen_subcommand_from deactivate; and not __fish_seen_subcommand_from direnv; and not __fish_seen_subcommand_from doctor; and not __fish_seen_subcommand_from env; and not __fish_seen_subcommand_from exec; and not __fish_seen_subcommand_from global; and not __fish_seen_subcommand_from hook-env; and not __fish_seen_subcommand_from implode; and not __fish_seen_subcommand_from install; and not __fish_seen_subcommand_from latest; and not __fish_seen_subcommand_from local; and not __fish_seen_subcommand_from ls; and not __fish_seen_subcommand_from ls-remote; and not __fish_seen_subcommand_from mangen; and not __fish_seen_subcommand_from plugins; and not __fish_seen_subcommand_from reshim; and not __fish_seen_subcommand_from self-update; and not __fish_seen_subcommand_from settings; and not __fish_seen_subcommand_from shell; and not __fish_seen_subcommand_from uninstall; and not __fish_seen_subcommand_from version; and not __fish_seen_subcommand_from where; and not __fish_seen_subcommand_from which; and not __fish_seen_subcommand_from render-help; and not __fish_seen_subcommand_from help" -f -a "activate" -d 'Enables rtx to automatically modify runtimes when changing directory'

14
e2e/test_raw Executable file
View File

@ -0,0 +1,14 @@
#!/usr/bin/env bash
set -euo pipefail
assert() {
local actual
actual="$($*)"
if [[ "$actual" != "$2" ]]; then
echo "Expected '$2' but got '$actual'"
exit 1
fi
}
rtx i --raw -f tiny@1 tiny@2 tiny@3
RTX_RAW=1 rtx i -f tiny@1 tiny@2 tiny@3

View File

@ -4,7 +4,7 @@
.SH NAME
rtx \- Polyglot runtime manager (asdf rust clone)
.SH SYNOPSIS
\fBrtx\fR [\fB\-j\fR|\fB\-\-jobs\fR] [\fB\-v\fR|\fB\-\-verbose\fR]... [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fIsubcommands\fR>
\fBrtx\fR [\fB\-j\fR|\fB\-\-jobs\fR] [\fB\-r\fR|\fB\-\-raw\fR] [\fB\-v\fR|\fB\-\-verbose\fR]... [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR] <\fIsubcommands\fR>
.SH DESCRIPTION
rtx is a tool for managing runtime versions. https://github.com/jdxcode/rtx
.PP
@ -19,6 +19,9 @@ https://asdf\-vm.com/
\fB\-j\fR, \fB\-\-jobs\fR
Number of plugins and runtimes to install in parallel, default: 4
.TP
\fB\-r\fR, \fB\-\-raw\fR
Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets \-\-jobs=1.
.TP
\fB\-v\fR, \fB\-\-verbose\fR
Show installation output
.TP

View File

@ -1,4 +1,5 @@
pub mod jobs;
pub mod log_level;
pub mod raw;
pub mod runtime;
pub mod verbose;

14
src/cli/args/raw.rs Normal file
View File

@ -0,0 +1,14 @@
use clap::{Arg, ArgAction};
pub struct Raw(pub bool);
impl Raw {
pub fn arg() -> Arg {
Arg::new("raw")
.short('r')
.long("raw")
.help("Directly pipe stdin/stdout/stderr from plugin scripts to user. Sets --jobs=1.")
.action(ArgAction::SetTrue)
.global(true)
}
}

View File

@ -13,7 +13,7 @@ pub struct BinPaths {}
impl Command for BinPaths {
fn run(self, config: Config, out: &mut Output) -> Result<()> {
let ts = ToolsetBuilder::new().with_install_missing().build(&config);
for p in ts.list_paths() {
for p in ts.list_paths(&config.settings) {
rtxprintln!(out, "{}", p.display());
}
Ok(())

View File

@ -47,7 +47,7 @@ impl Command for Envrc {
shell_escape::unix::escape(v.into()),
)?;
}
for path in ts.list_paths().into_iter().rev() {
for path in ts.list_paths(&config.settings).into_iter().rev() {
writeln!(file, "PATH_add {}", path.to_string_lossy())?;
}

View File

@ -35,7 +35,7 @@ impl Command for DirenvExec {
for (k, v) in ts.env() {
cmd = cmd.env(k, v);
}
cmd = cmd.env("PATH", ts.path_env());
cmd = cmd.env("PATH", ts.path_env(&config.settings));
let json = cmd!("direnv", "watch", "json", ".tool-versions").read()?;
let w: DirenvWatches = serde_json::from_str(&json)?;

View File

@ -6,5 +6,6 @@ expression: envrc
watch_file ~/cwd/.test-tool-versions
watch_file ~/.test-tool-versions
export JDXCODE_TINY=3.1.0
PATH_add ~/data/installs/dummy/ref-master/bin
PATH_add ~/data/installs/tiny/3.1.0/bin

View File

@ -43,7 +43,8 @@ impl Command for Env {
let v = v.to_string();
rtxprint!(out, "{}", shell.set_env(&k, &v));
}
rtxprintln!(out, "{}", shell.set_env("PATH", ts.path_env().as_ref()));
let path = ts.path_env(&config.settings);
rtxprintln!(out, "{}", shell.set_env("PATH", &path));
Ok(())
}

View File

@ -55,7 +55,7 @@ impl Command for Exec {
let (program, args) = parse_command(&env::SHELL, self.command, self.c);
let mut env = ts.env();
env.insert("PATH".into(), ts.path_env());
env.insert("PATH".into(), ts.path_env(&config.settings));
if config.settings.missing_runtime_behavior != Ignore {
// prevent rtx from auto-installing inside a shim
env.insert("RTX_MISSING_RUNTIME_BEHAVIOR".into(), "warn".into());

View File

@ -44,7 +44,7 @@ impl Command for HookEnv {
let mut diff = EnvDiff::new(&env::PRISTINE_ENV, env);
let mut patches = diff.to_patches();
let installs = ts.list_paths(); // load the active runtime paths
let installs = ts.list_paths(&config.settings); // load the active runtime paths
diff.path = installs.clone(); // update __RTX_DIFF with the new paths for the next run
patches.extend(self.build_path_operations(&installs, &__RTX_DIFF.path)?);

View File

@ -84,7 +84,7 @@ impl Install {
if let Some(rtv) = &v.rtv {
if rtv.is_installed() {
info!("uninstalling {}", rtv);
rtv.uninstall()?;
rtv.uninstall(&config.settings)?;
}
}
}

View File

@ -159,8 +159,9 @@ impl Cli {
.arg_required_else_help(true)
.subcommand_required(true)
.after_help(AFTER_HELP.as_str())
.arg(args::log_level::LogLevel::arg())
.arg(args::jobs::Jobs::arg())
.arg(args::log_level::LogLevel::arg())
.arg(args::raw::Raw::arg())
.arg(args::verbose::Verbose::arg()),
)
}
@ -184,9 +185,16 @@ impl Cli {
if let Some(jobs) = matches.get_one::<usize>("jobs") {
config.settings.jobs = *jobs;
}
if let Some(raw) = matches.get_one::<bool>("raw") {
config.settings.raw = *raw;
}
if *matches.get_one::<u8>("verbose").unwrap() > 0 {
config.settings.verbose = true;
}
if config.settings.raw {
config.settings.jobs = 1;
config.settings.verbose = true;
}
if let Some((command, sub_m)) = matches.subcommand() {
external::execute(&config, command, sub_m, self.external_commands)?;
}

View File

@ -419,10 +419,14 @@ plugin_autoupdate_last_check_duration = 10080 # (one week) set to 0 to disable u
verbose = false # set to true to see full installation output, see `RTX_VERBOSE`
asdf_compat = false # set to true to ensure .tool-versions will be compatible with asdf, see `RTX_ASDF_COMPAT`
jobs = 4 # number of plugins or runtimes to install in parallel. The default is `4`.
raw = false # set to true to directly pipe plugins to stdin/stdout/stderr
shorthands_file = '~/.config/rtx/shorthands.toml' # path to the shorthands file, see `RTX_SHORTHANDS_FILE`
disable_default_shorthands = false # disable the default shorthands, see `RTX_DISABLE_DEFAULT_SHORTHANDS`
experimental = false # enable experimental features such as shims
shims_dir = '~/.local/share/rtx/shims' # [experimental] directory where shims are stored
[alias.nodejs]
my_custom_node = '18' # makes `rtx install nodejs@my_custom_node` install node-18.x
# this can also be specified in a plugin (see below in "Aliases")
@ -498,6 +502,14 @@ Only output `.tool-versions` files in `rtx local|global` which will be usable by
Set the number plugins or runtimes to install in parallel. The default is `4`.
#### `RTX_RAW=1`
Set to "1" to directly pipe plugin scripts to stdin/stdout/stderr. By default stdin is disabled
because when installing a bunch of plugins in parallel you won't see the prompt. Use this if a
plugin accepts input or otherwise does not seem to be installing correctly.
Sets `RTX_JOBS=1` because only 1 plugin script can be executed at a time.
#### `RTX_SHORTHANDS_FILE=~/.config/rtx/shorthands.toml`
Use a custom file for the shorthand aliases. This is useful if you want to share plugins within
@ -531,6 +543,14 @@ You likely do not want to be using rtx if it is that old. I'm doing this instead
autoupdating. If, for some reason, you want to stay on some old version, you can hide
this message with `RTX_HIDE_OUTDATED_BUILD=1`.
#### `RTX_EXPERIMENTAL=1`
Enables experimental features such as shims.
#### [experimental] `RTX_SHIMS_DIR=~/.local/share/rtx/shims`
Set a directory to output shims when running `rtx reshim`. Requires `experimental = true`.
## Aliases
rtx supports aliasing the versions of runtimes. One use-case for this is to define aliases for LTS

View File

@ -41,7 +41,7 @@ impl Command for Reshim {
let _ = remove_dir_all(&shims_dir);
create_dir_all(&shims_dir)?;
for path in ts.list_paths() {
for path in ts.list_paths(&config.settings) {
if !path.exists() {
continue;
}

View File

@ -35,6 +35,7 @@ impl Command for SettingsSet {
"shorthands_file" => self.value.into(),
"disable_default_shorthands" => parse_bool(&self.value)?,
"shims_dir" => self.value.into(),
"raw" => parse_bool(&self.value)?,
_ => return Err(eyre!("Unknown setting: {}", self.key)),
};

View File

@ -13,4 +13,5 @@ jobs = 2
disable_default_shorthands = false
log_level = INFO
shims_dir = ~/data/shims
raw = false

View File

@ -13,4 +13,5 @@ jobs = 2
disable_default_shorthands = false
log_level = INFO
shims_dir = ~/data/shims
raw = false

View File

@ -59,6 +59,7 @@ mod tests {
disable_default_shorthands = false
log_level = INFO
shims_dir = ~/data/shims
raw = false
"###);
reset_config();

View File

@ -3,4 +3,5 @@ source: src/cli/bin_paths.rs
expression: output
---
~/data/installs/tiny/3.1.0/bin
~/data/installs/dummy/ref-master/bin

View File

@ -3,4 +3,5 @@ source: src/cli/current.rs
expression: output
---
tiny 3.1.0
dummy ref-master

View File

@ -0,0 +1,6 @@
---
source: src/cli/which.rs
expression: output
---
~/data/installs/dummy/1.0.0/bin/dummy

View File

@ -31,7 +31,7 @@ impl Command for Uninstall {
}
rtxprintln!(out, "uninstalling {}", style(rtv).cyan());
rtv.uninstall()
rtv.uninstall(&config.settings)
.wrap_err_with(|| eyre!("error uninstalling {}", rtv))?;
}
Ok(())

View File

@ -18,16 +18,13 @@ pub struct Which {
}
impl Command for Which {
fn run(self, config: Config, _out: &mut Output) -> Result<()> {
fn run(self, config: Config, out: &mut Output) -> Result<()> {
let ts = ToolsetBuilder::new().build(&config);
if !config.settings.experimental {
err_experimental()?;
}
match ts.which(&self.bin_name) {
match ts.which(&config.settings, &self.bin_name) {
Some(rtv) => {
println!("{}", rtv.which(&self.bin_name)?.unwrap().display());
let path = rtv.which(&config.settings, &self.bin_name)?;
rtxprintln!(out, "{}", path.unwrap().display());
Ok(())
}
None => Err(eyre!("{} not found", self.bin_name)),
@ -35,16 +32,6 @@ impl Command for Which {
}
}
fn err_experimental() -> Result<()> {
return Err(eyre!(formatdoc!(
r#"
rtx is not configured to use experimental features.
Please set the `{}` setting to `true`.
"#,
style("experimental").yellow()
)));
}
static AFTER_LONG_HELP: Lazy<String> = Lazy::new(|| {
formatdoc! {r#"
{}
@ -52,3 +39,16 @@ static AFTER_LONG_HELP: Lazy<String> = Lazy::new(|| {
/home/username/.local/share/rtx/installs/nodejs/18.0.0/bin/node
"#, style("Examples:").bold().underlined()}
});
#[cfg(test)]
mod tests {
use crate::{assert_cli, assert_cli_snapshot};
#[test]
fn test_which() {
assert_cli!("global", "dummy@1.0.0");
assert_cli_snapshot!("which", "dummy");
assert_cli!("global", "dummy@ref:master");
assert_cli!("uninstall", "dummy@1.0.0");
}
}

View File

@ -106,6 +106,7 @@ impl RTXFile {
}
"log_level" => self.settings.log_level = Some(self.parse_log_level(v)?),
"shims_dir" => self.settings.shims_dir = Some(self.parse_path(k, v)?),
"raw" => self.settings.raw = Some(self.parse_bool(k, v)?),
"alias" => self.settings.aliases = Some(self.parse_aliases(v)?),
"get_path" => {}
"disable_plugin_short_name_repository" => {}

View File

@ -8,8 +8,8 @@ use log::LevelFilter;
use crate::config::AliasMap;
use crate::env;
use crate::env::{
RTX_ASDF_COMPAT, RTX_DISABLE_DEFAULT_SHORTHANDS, RTX_JOBS, RTX_LOG_LEVEL, RTX_SHIMS_DIR,
RTX_SHORTHANDS_FILE, RTX_VERBOSE,
RTX_ASDF_COMPAT, RTX_DISABLE_DEFAULT_SHORTHANDS, RTX_JOBS, RTX_LOG_LEVEL, RTX_RAW,
RTX_SHIMS_DIR, RTX_SHORTHANDS_FILE, RTX_VERBOSE,
};
use crate::plugins::PluginName;
@ -28,6 +28,7 @@ pub struct Settings {
pub disable_default_shorthands: bool,
pub log_level: LevelFilter,
pub shims_dir: Option<PathBuf>,
pub raw: bool,
}
impl Default for Settings {
@ -46,6 +47,7 @@ impl Default for Settings {
disable_default_shorthands: *RTX_DISABLE_DEFAULT_SHORTHANDS,
log_level: *RTX_LOG_LEVEL,
shims_dir: RTX_SHIMS_DIR.clone(),
raw: *RTX_RAW,
}
}
}
@ -87,6 +89,7 @@ impl Settings {
if let Some(shims) = &self.shims_dir {
map.insert("shims_dir".into(), shims.to_string_lossy().to_string());
}
map.insert("raw".into(), self.raw.to_string());
map
}
}
@ -106,6 +109,7 @@ pub struct SettingsBuilder {
pub disable_default_shorthands: Option<bool>,
pub log_level: Option<LevelFilter>,
pub shims_dir: Option<PathBuf>,
pub raw: Option<bool>,
}
impl SettingsBuilder {
@ -156,6 +160,9 @@ impl SettingsBuilder {
if other.aliases.is_some() {
self.aliases = other.aliases;
}
if other.raw.is_some() {
self.raw = other.raw;
}
self
}
@ -194,8 +201,14 @@ impl SettingsBuilder {
.unwrap_or(settings.disable_default_shorthands);
settings.log_level = self.log_level.unwrap_or(settings.log_level);
settings.shims_dir = self.shims_dir.clone().or(settings.shims_dir);
settings.raw = self.raw.unwrap_or(settings.raw);
settings.aliases = self.aliases.clone().unwrap_or(settings.aliases);
if settings.raw {
settings.verbose = true;
settings.jobs = 1;
}
settings
}
}

View File

@ -102,10 +102,7 @@ lazy_static! {
pub static ref RTX_TRACE: bool = var_is_true("RTX_TRACE");
pub static ref RTX_VERBOSE: bool = *RTX_DEBUG || *RTX_TRACE || var_is_true("RTX_VERBOSE");
pub static ref DUMB_TERMINAL: bool = cfg!(test) || var("TERM").map_or(false, |term| term == "dumb");
pub static ref RTX_JOBS: usize = var("RTX_JOBS")
.ok()
.and_then(|v| v.parse::<usize>().ok())
.unwrap_or(4);
pub static ref RTX_JOBS: usize = var("RTX_JOBS").ok().and_then(|v| v.parse::<usize>().ok()).unwrap_or(4);
/// essentially, this is whether we show spinners or build output on runtime install
pub static ref PRISTINE_ENV: HashMap<String, String> =
get_pristine_env(&__RTX_DIFF, vars().collect());
@ -126,6 +123,7 @@ lazy_static! {
pub static ref RTX_SHORTHANDS_FILE: Option<PathBuf> = var_path("RTX_SHORTHANDS_FILE");
pub static ref RTX_DISABLE_DEFAULT_SHORTHANDS: bool = var_is_true("RTX_DISABLE_DEFAULT_SHORTHANDS");
pub static ref RTX_SHIMS_DIR: Option<PathBuf> = var_path("RTX_SHIMS_DIR");
pub static ref RTX_RAW: bool = var_is_true("RTX_RAW");
pub static ref GITHUB_API_TOKEN: Option<String> = var("GITHUB_API_TOKEN").ok();
}
@ -223,12 +221,13 @@ fn prefer_stale(args: &[String]) -> bool {
#[cfg(test)]
mod tests {
use super::*;
use std::collections::HashMap;
use crate::env::apply_patches;
use crate::env_diff::EnvDiffOperation;
use super::*;
#[test]
fn test_apply_patches() {
let mut env = HashMap::new();

View File

@ -297,7 +297,7 @@ impl Plugin {
fn fetch_remote_versions(&self, settings: &Settings) -> Result<Vec<String>> {
let result = self
.script_man
.cmd(Script::ListAll)
.cmd(settings, Script::ListAll)
.stdout_capture()
.stderr_capture()
.unchecked()
@ -334,7 +334,7 @@ impl Plugin {
}
Ok(self
.script_man
.read(Script::ListLegacyFilenames, settings.verbose)?
.read(settings, Script::ListLegacyFilenames, settings.verbose)?
.split_whitespace()
.map(|v| v.into())
.collect())
@ -355,7 +355,7 @@ impl Plugin {
}
let stdout = self
.script_man
.read(Script::ListAliases, settings.verbose)?;
.read(settings, Script::ListAliases, settings.verbose)?;
let aliases = stdout
.lines()
.filter_map(|line| {
@ -380,7 +380,7 @@ impl Plugin {
trace!("parsing legacy file: {}", legacy_file.to_string_lossy());
let script = ParseLegacyFile(legacy_file.to_string_lossy().into());
let legacy_version = match self.script_man.script_exists(&script) {
true => self.script_man.read(script, settings.verbose)?,
true => self.script_man.read(settings, script, settings.verbose)?,
false => fs::read_to_string(legacy_file)?,
}
.trim()

View File

@ -11,6 +11,7 @@ use indexmap::{indexmap, IndexMap};
use once_cell::sync::Lazy;
use crate::cmd::cmd;
use crate::config::Settings;
use crate::env;
use crate::errors::Error::ScriptFailed;
use crate::file::basename;
@ -43,7 +44,7 @@ pub enum Script {
// ExecEnv,
}
impl fmt::Display for Script {
impl Display for Script {
fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result {
match self {
// Plugin
@ -120,7 +121,7 @@ impl ScriptManager {
self.get_script_path(script).is_file()
}
pub fn cmd(&self, script: Script) -> Expression {
pub fn cmd(&self, settings: &Settings, script: Script) -> Expression {
let args = match &script {
Script::ParseLegacyFile(filename) => vec![filename.clone()],
_ => vec![],
@ -130,14 +131,18 @@ impl ScriptManager {
// return Err(PluginNotInstalled(self.plugin_name.clone()).into());
// }
let mut cmd = cmd(&script_path, args);
if !settings.raw {
// ignore stdin, otherwise a prompt may show up where the user won't see it
cmd = cmd.stdin_null();
}
for (k, v) in self.env.iter() {
cmd = cmd.env(k, v);
}
cmd
}
pub fn run(&self, script: Script) -> Result<()> {
let cmd = self.cmd(script);
pub fn run(&self, settings: &Settings, script: Script) -> Result<()> {
let cmd = self.cmd(settings, script);
let Output { status, .. } = cmd.unchecked().run()?;
match status.success() {
@ -146,42 +151,60 @@ impl ScriptManager {
}
}
pub fn read(&self, script: Script, verbose: bool) -> Result<String> {
let mut cmd = self.cmd(script);
if !verbose {
pub fn read(&self, settings: &Settings, script: Script, verbose: bool) -> Result<String> {
let mut cmd = self.cmd(settings, script);
if !verbose && !settings.raw {
cmd = cmd.stderr_null();
}
cmd.read()
.with_context(|| ScriptFailed(self.plugin_name.clone(), None))
}
pub fn run_by_line<F1, F2>(&self, script: Script, on_error: F1, on_output: F2) -> Result<()>
pub fn run_by_line<F1, F2>(
&self,
settings: &Settings,
script: Script,
on_error: F1,
on_output: F2,
) -> Result<()>
where
F1: Fn(String),
F2: Fn(&str),
{
let reader = self.cmd(script).stderr_to_stdout().unchecked().reader()?;
let reader = Arc::new(reader);
let cmd = self.cmd(settings, script);
let mut output = vec![];
for line in BufReader::new(&*reader).lines() {
let line = line.unwrap();
on_output(&line);
output.push(line);
}
match reader.try_wait() {
Err(err) => {
on_error(output.join("\n"));
Err(err)?
}
Ok(out) => match out.unwrap().status.success() {
if settings.raw {
let Output { status, .. } = cmd.unchecked().run()?;
match status.success() {
true => Ok(()),
false => {
on_error(output.join("\n"));
let err = ScriptFailed(self.plugin_name.clone(), Some(out.unwrap().status));
Err(ScriptFailed(self.plugin_name.clone(), Some(status)).into())
}
}
} else {
let reader = cmd.stdin_null().stderr_to_stdout().unchecked().reader()?;
let reader = Arc::new(reader);
for line in BufReader::new(&*reader).lines() {
let line = line.unwrap();
on_output(&line);
output.push(line);
}
match reader.try_wait() {
Err(err) => {
on_error(output.join("\n"));
Err(err)?
}
},
Ok(out) => match out.unwrap().status.success() {
true => Ok(()),
false => {
on_error(output.join("\n"));
let err = ScriptFailed(self.plugin_name.clone(), Some(out.unwrap().status));
Err(err)?
}
},
}
}
}
}

View File

@ -93,6 +93,7 @@ impl RuntimeVersion {
let run_script = |script| {
self.script_man.run_by_line(
settings,
script,
|output| {
self.cleanup_install_dirs_on_error(settings);
@ -134,17 +135,17 @@ impl RuntimeVersion {
Ok(())
}
pub fn list_bin_paths(&self) -> Result<Vec<PathBuf>> {
pub fn list_bin_paths(&self, settings: &Settings) -> Result<Vec<PathBuf>> {
Ok(self
.bin_paths_cache
.get_or_try_init(|| self.fetch_bin_paths())?
.get_or_try_init(|| self.fetch_bin_paths(settings))?
.iter()
.map(|path| self.install_path.join(path))
.collect())
}
pub fn which(&self, bin_name: &str) -> Result<Option<PathBuf>> {
let bin_paths = self.list_bin_paths()?;
pub fn which(&self, settings: &Settings, bin_name: &str) -> Result<Option<PathBuf>> {
let bin_paths = self.list_bin_paths(settings)?;
for bin_path in bin_paths {
let bin_path = bin_path.join(bin_name);
if bin_path.exists() {
@ -164,10 +165,10 @@ impl RuntimeVersion {
}
}
pub fn uninstall(&self) -> Result<()> {
pub fn uninstall(&self, settings: &Settings) -> Result<()> {
debug!("uninstall {} {}", self.plugin.name, self.version);
if self.plugin.plugin_path.join("bin/uninstall").exists() {
let err = self.script_man.run(Script::Uninstall);
let err = self.script_man.run(settings, Script::Uninstall);
if err.is_err() {
warn!("Failed to run uninstall script: {}", err.unwrap_err());
}
@ -209,10 +210,10 @@ impl RuntimeVersion {
Ok(env)
}
fn fetch_bin_paths(&self) -> Result<Vec<String>> {
fn fetch_bin_paths(&self, settings: &Settings) -> Result<Vec<String>> {
let list_bin_paths = self.plugin.plugin_path.join("bin/list-bin-paths");
if list_bin_paths.exists() {
let output = self.script_man.cmd(Script::ListBinPaths).read()?;
let output = self.script_man.cmd(settings, Script::ListBinPaths).read()?;
Ok(output.split_whitespace().map(|e| e.into()).collect())
} else {
Ok(vec!["bin".into()])

View File

@ -29,7 +29,7 @@ pub fn handle_shim(config: Config, args: &[String], out: &mut Output) -> Result<
fn is_valid_shim(config: &Config, bin_name: &str) -> Result<()> {
let ts = ToolsetBuilder::new().build(config);
match ts.which(bin_name) {
match ts.which(&config.settings, bin_name) {
Some(_) => Ok(()),
None => Err(eyre!("{} is not a valid shim", bin_name)),
}

View File

@ -19,7 +19,7 @@ pub use tool_version::ToolVersion;
pub use tool_version::ToolVersionType;
use crate::cli::args::runtime::{RuntimeArg, RuntimeArgVersion};
use crate::config::{Config, MissingRuntimeBehavior};
use crate::config::{Config, MissingRuntimeBehavior, Settings};
use crate::env;
use crate::plugins::{InstallType, Plugin, PluginName};
use crate::runtimes::RuntimeVersion;
@ -274,17 +274,17 @@ impl Toolset {
entries.sort_keys();
entries
}
pub fn path_env(&self) -> String {
let installs = self.list_paths();
pub fn path_env(&self, settings: &Settings) -> String {
let installs = self.list_paths(settings);
join_paths([installs, env::PATH.clone()].concat())
.unwrap()
.to_string_lossy()
.into()
}
pub fn list_paths(&self) -> Vec<PathBuf> {
pub fn list_paths(&self, settings: &Settings) -> Vec<PathBuf> {
self.list_current_installed_versions()
.into_par_iter()
.flat_map(|rtv| match rtv.list_bin_paths() {
.flat_map(|rtv| match rtv.list_bin_paths(settings) {
Ok(paths) => paths,
Err(e) => {
warn!("Error listing bin paths for {}: {}", rtv, e);
@ -358,11 +358,11 @@ impl Toolset {
}
}
pub fn which(&self, bin_name: &str) -> Option<&RuntimeVersion> {
pub fn which(&self, settings: &Settings, bin_name: &str) -> Option<&RuntimeVersion> {
self.list_current_installed_versions()
.into_par_iter()
.find_first(|v| {
if let Ok(x) = v.which(bin_name) {
if let Ok(x) = v.which(settings, bin_name) {
x.is_some()
} else {
false

View File

@ -1 +1,2 @@
tiny 2
tiny 2
dummy ref:master