From 5464333f298351b5f18289995d611fe1c9219c7d Mon Sep 17 00:00:00 2001 From: Shohei YOSHIDA Date: Tue, 7 Apr 2026 07:06:56 +0900 Subject: [PATCH 1/2] add fish completion --- src/_fish | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 src/_fish diff --git a/src/_fish b/src/_fish new file mode 100644 index 0000000..4183f48 --- /dev/null +++ b/src/_fish @@ -0,0 +1,65 @@ +#compdef fish +# ------------------------------------------------------------------------------ +# Copyright (c) 2026 Github zsh-users - https://github.com/zsh-users +# +# Permission is hereby granted, free of charge, to any person obtaining +# a copy of this software and associated documentation files (the +# "Software"), to deal in the Software without restriction, including +# without limitation the rights to use, copy, modify, merge, publish, +# distribute, sublicense, and/or sell copies of the Software, and to +# permit persons to whom the Software is furnished to do so, subject to +# the following conditions: +# +# The above copyright notice and this permission notice shall be included +# in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR +# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +# OTHER DEALINGS IN THE SOFTWARE. +# ------------------------------------------------------------------------------ +# Description +# ----------- +# +# Completion script for fish 4.6.0 (https://fishshell.com/) +# +# ------------------------------------------------------------------------------ +# Authors +# ------- +# +# * Shohei Yoshida (https://github.com/syohex) +# +# ------------------------------------------------------------------------------ + +_fish_debug_categories() { + local -a categories=(${(f)"$(fish --print-debug-categories | awk '{n=$1;$1="";printf("%s[%s]\n",n,substr($0,2)) }')"}) + _values -s ',' categories $categories +} + +_arguments -s \ + '(-c --command)'{-c,--command=}'[Evaluate the specified commands instead of reading from the commandline]:command' \ + '(-C --init-command)'{-C,--init-command=}'[Evaluate specified commands after reading the configuration]:command' \ + '(-d --debug)'{-d,--debug=}'[Enable debug output and specify a pattern for matching categories]:categories:_fish_debug_categories' \ + '(-i --interactive)'{-i,--interactive}'[The shell is interactive]' \ + '(-l --login)'{-l,--login}'[Act as if invoked as a login shell]' \ + '(-N --no-config)'{-N,--no-config}'[Do not read configuration files]' \ + '(-n --no-execute)'{-n,--no-execute}'[Do not execute any commands, only perform syntax checking]' \ + '(-p --profile)'{-p,--profile=}'[Output timing information on all executed commands to the specified file]:file:_files' \ + '--profile-startup=[Write timing for fish startup to specified file]:file:_files' \ + '(-P --private)'{-P,--private}'[Enable private mode]' \ + '--print-rusage-self[When fish exits, output stats from getrusage]' \ + '(- *)--print-debug-categories[Print all debug categories, and then exit]' \ + '(- *)'{-v,--version}'[Print version and exit]' \ + '(-f --features)'{-f,--features}'[Enable one or more comma-separated feature flags]:features' \ + '*:: :_files' + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et From cc3181fcaacbbcfca7e001036598637b739c7cb3 Mon Sep 17 00:00:00 2001 From: Shohei YOSHIDA Date: Tue, 7 Apr 2026 07:07:08 +0900 Subject: [PATCH 2/2] add nu shell completion --- src/_nu | 85 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 src/_nu diff --git a/src/_nu b/src/_nu new file mode 100644 index 0000000..1589754 --- /dev/null +++ b/src/_nu @@ -0,0 +1,85 @@ +#compdef nu +# ------------------------------------------------------------------------------ +# Copyright (c) 2026 Github zsh-users - https://github.com/zsh-users +# +# Permission is hereby granted, free of charge, to any person obtaining +# a copy of this software and associated documentation files (the +# "Software"), to deal in the Software without restriction, including +# without limitation the rights to use, copy, modify, merge, publish, +# distribute, sublicense, and/or sell copies of the Software, and to +# permit persons to whom the Software is furnished to do so, subject to +# the following conditions: +# +# The above copyright notice and this permission notice shall be included +# in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR +# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +# OTHER DEALINGS IN THE SOFTWARE. +# ------------------------------------------------------------------------------ +# Description +# ----------- +# +# Completion script for nu 0.111.0 (https://www.nushell.sh/) +# +# ------------------------------------------------------------------------------ +# Authors +# ------- +# +# * Shohei Yoshida (https://github.com/syohex) +# +# ------------------------------------------------------------------------------ + +local -a table_modes=( + ascii_rounded basic_compact basic compact_double compact default + dots double heavy light markdown none psql reinforced restructured + rounded single thin with_love +) + +_arguments \ + '(- *)'{-h,--help}'[show help message]' \ + '(- *)'{-v,--version}'[print the version]' \ + '(-i --interactive)'{-i,--interactive}'[start as an interactive shell]' \ + '(-l --login)'{-l,--login}'[start as a login shell]' \ + '(-c --commands)'{-c,--commands}'[run the given command and then exit]:command' \ + '(-e --execute)'{-e,--execute}'[run the given commands and then enter an interactive shell]:command' \ + '(-m --table-mode)'{-m,--table-mode}'[table mode to use]:mode:($table_modes)' \ + '--error-style[error style to use]:style:(fancy plain)' \ + '--no-newline[print the result for --commands(-c) without a newline]' \ + '--stdin[redirect standard input to a command(with "-c") or a script file]' \ + '--testbin[run internal test binary]:binary' \ + "--mcp[start nu's model context protocol server]" \ + '--mcp-transport[transport to use for MCP server]:transport:(stdin http)' \ + '--mcp-port[port for MCP HTTP transport(default: 8080)]:port' \ + '(-I --include-path)'{-I,--include-path}'[set the NU_LIB_DIRS for the given script]:dir:_files -/' \ + '(-n --no-config-file)'{-n,--no-config-file}'[start with no config file and no env file]' \ + '--no-history[disable reading and writing to command history]' \ + '--no-std-lib[start with no standard library]' \ + '--config[start with an alternate config file]:file:_files' \ + '--env-config[start with an alternate environment config file]:file:_files' \ + '--log-level[log level for diagnostic logs]:level:(error warn info debug trace)' \ + '--log-target[set the target for the log to output]:target: _alternative "std\:std\:(stdout stderr)" "files\:file\:_files"' \ + '--log-include[set the Rust module prefixes to include in the log output]:prefix' \ + '--log-exclude[set the Rust module prefixes to exclude from the log output]:prefix' \ + "--lsp[start nu's language server protocol]" \ + '--ide-goto-def[go to the definition of the item at the given position]:pos' \ + '--ide-hover[give information about the item at the given position]:pos' \ + '--ide-complete[list completions for the item at the given position]:pos' \ + '--ide-check[run a diagnostic check on the given source and limit number of errors returned to provided number]:num' \ + '--ide-ast[generate the ast on the given source]' \ + '--experimental-options[enable or disable experimental options]:options:(all)' \ + '--plugin-config[start with an alternative plugin registry file]:file:_files' \ + '--plugins[list of plugin executable files to load]:file:_files' \ + '*:: :_files' + +# Local Variables: +# mode: Shell-Script +# sh-indentation: 2 +# indent-tabs-mode: nil +# sh-basic-offset: 2 +# End: +# vim: ft=zsh sw=2 ts=2 et