summaryrefslogtreecommitdiff
path: root/.zfunc
diff options
context:
space:
mode:
authorlistout <listout@protonmail.com>2021-05-06 18:55:13 +0530
committerlistout <listout@protonmail.com>2021-05-06 18:55:13 +0530
commit84e1062aa220f592ac27a51654a8eab733ee1f44 (patch)
tree86aa4fbfe324bcbf16557a1cc1f7e838cdde358f /.zfunc
parent091a1718e3e2d0c3ef624b89ae8f1ec53be35ded (diff)
fnm completions
Diffstat (limited to '.zfunc')
-rw-r--r--.zfunc/_fnm357
1 files changed, 357 insertions, 0 deletions
diff --git a/.zfunc/_fnm b/.zfunc/_fnm
new file mode 100644
index 0000000..014fc03
--- /dev/null
+++ b/.zfunc/_fnm
@@ -0,0 +1,357 @@
+#compdef fnm
+
+autoload -U is-at-least
+
+_fnm() {
+ typeset -A opt_args
+ typeset -a _arguments_options
+ local ret=1
+
+ if is-at-least 5.2; then
+ _arguments_options=(-s -S -C)
+ else
+ _arguments_options=(-s -C)
+ fi
+
+ local context curcontext="$curcontext" state line
+ _arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--multishell-path=[Where the current node version link is stored. This value will be populated automatically by evaluating `fnm env` in your shell profile. Read more about it using `fnm help env`]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+":: :_fnm_commands" \
+"*::: :->fnm" \
+&& ret=0
+ case $state in
+ (fnm)
+ words=($line[1] "${words[@]}")
+ (( CURRENT += 1 ))
+ curcontext="${curcontext%:*:*}:fnm-command-$line[1]:"
+ case $line[1] in
+ (ls-remote)
+_arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+&& ret=0
+;;
+(list-remote)
+_arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+&& ret=0
+;;
+(ls)
+_arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+&& ret=0
+;;
+(list)
+_arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+&& ret=0
+;;
+(install)
+_arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'--lts[Install latest LTS]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+'::version -- A version string. Can be a partial semver or a LTS version name by the format lts/NAME:_files' \
+&& ret=0
+;;
+(use)
+_arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'--install-if-missing[Install the version if it isn'\''t installed yet]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+'::version:_files' \
+&& ret=0
+;;
+(env)
+_arguments "${_arguments_options[@]}" \
+'--shell=[The shell syntax to use. Infers when missing]: :(bash zsh fish powershell)' \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'--multi[Deprecated. This is the default now]' \
+'--use-on-cd[Print the script to change Node versions every directory change]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+&& ret=0
+;;
+(completions)
+_arguments "${_arguments_options[@]}" \
+'--shell=[The shell syntax to use. Infers when missing]: :(zsh bash fish powershell elvish)' \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+&& ret=0
+;;
+(alias)
+_arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+':to-version:_files' \
+':name:_files' \
+&& ret=0
+;;
+(default)
+_arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+':version:_files' \
+&& ret=0
+;;
+(current)
+_arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+&& ret=0
+;;
+(exec)
+_arguments "${_arguments_options[@]}" \
+'--using=[Either an explicit version, or a filename with the version written in it]' \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'--using-file[Deprecated. This is the default now]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+'::arguments -- The command to run:_files' \
+&& ret=0
+;;
+(uninstall)
+_arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+'::version:_files' \
+&& ret=0
+;;
+(help)
+_arguments "${_arguments_options[@]}" \
+'--node-dist-mirror=[https://nodejs.org/dist/ mirror]' \
+'--fnm-dir=[The root directory of fnm installations]' \
+'--log-level=[The log level of fnm commands]' \
+'--arch=[Override the architecture of the installed Node binary. Defaults to arch of fnm binary]' \
+'-h[Prints help information]' \
+'--help[Prints help information]' \
+'-V[Prints version information]' \
+'--version[Prints version information]' \
+&& ret=0
+;;
+ esac
+ ;;
+esac
+}
+
+(( $+functions[_fnm_commands] )) ||
+_fnm_commands() {
+ local commands; commands=(
+ "list-remote:List all remote Node.js versions" \
+"ls-remote:List all remote Node.js versions" \
+"list:List all locally installed Node.js versions" \
+"ls:List all locally installed Node.js versions" \
+"install:Install a new Node.js version" \
+"use:Change Node.js version" \
+"env:Print and set up required environment variables for fnm" \
+"completions:Print shell completions to stdout" \
+"alias:Alias a version to a common name" \
+"default:Set a version as the default version" \
+"current:Print the current Node.js version" \
+"exec:Run a command within fnm context" \
+"uninstall:Uninstall a Node.js version" \
+"help:Prints this message or the help of the given subcommand(s)" \
+ )
+ _describe -t commands 'fnm commands' commands "$@"
+}
+(( $+functions[_fnm__alias_commands] )) ||
+_fnm__alias_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm alias commands' commands "$@"
+}
+(( $+functions[_fnm__completions_commands] )) ||
+_fnm__completions_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm completions commands' commands "$@"
+}
+(( $+functions[_fnm__current_commands] )) ||
+_fnm__current_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm current commands' commands "$@"
+}
+(( $+functions[_fnm__default_commands] )) ||
+_fnm__default_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm default commands' commands "$@"
+}
+(( $+functions[_fnm__env_commands] )) ||
+_fnm__env_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm env commands' commands "$@"
+}
+(( $+functions[_fnm__exec_commands] )) ||
+_fnm__exec_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm exec commands' commands "$@"
+}
+(( $+functions[_fnm__help_commands] )) ||
+_fnm__help_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm help commands' commands "$@"
+}
+(( $+functions[_fnm__install_commands] )) ||
+_fnm__install_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm install commands' commands "$@"
+}
+(( $+functions[_fnm__list_commands] )) ||
+_fnm__list_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm list commands' commands "$@"
+}
+(( $+functions[_fnm__list-remote_commands] )) ||
+_fnm__list-remote_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm list-remote commands' commands "$@"
+}
+(( $+functions[_fnm__ls_commands] )) ||
+_fnm__ls_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm ls commands' commands "$@"
+}
+(( $+functions[_ls_commands] )) ||
+_ls_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'ls commands' commands "$@"
+}
+(( $+functions[_fnm__ls-remote_commands] )) ||
+_fnm__ls-remote_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm ls-remote commands' commands "$@"
+}
+(( $+functions[_ls-remote_commands] )) ||
+_ls-remote_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'ls-remote commands' commands "$@"
+}
+(( $+functions[_fnm__uninstall_commands] )) ||
+_fnm__uninstall_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm uninstall commands' commands "$@"
+}
+(( $+functions[_fnm__use_commands] )) ||
+_fnm__use_commands() {
+ local commands; commands=(
+
+ )
+ _describe -t commands 'fnm use commands' commands "$@"
+}
+
+_fnm "$@" \ No newline at end of file