Compare commits

..

4 Commits

Author SHA1 Message Date
Shohei YOSHIDA f70756b020
Merge b546f87141 into 72d91588a3 2026-04-10 11:20:14 -04:00
Shohei YOSHIDA 72d91588a3
Merge pull request #1257 from zsh-users/add-shells
Add other shell completions
2026-04-10 13:18:17 +09:00
Shohei YOSHIDA cc3181fcaa
add nu shell completion 2026-04-07 07:07:08 +09:00
Shohei YOSHIDA 5464333f29
add fish completion 2026-04-07 07:06:56 +09:00
2 changed files with 150 additions and 0 deletions

65
src/_fish Normal file
View File

@ -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) <syohex@gmail.com>
#
# ------------------------------------------------------------------------------
_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

85
src/_nu Normal file
View File

@ -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) <syohex@gmail.com>
#
# ------------------------------------------------------------------------------
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