-
Notifications
You must be signed in to change notification settings - Fork 578
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add: zsh completions with descriptions
This commit add zsh completions for the keydb `client`. They have contextual host completion and full argument descriptions. Vendor-distributed completions for zsh should end up in `/usr/share/zsh/vendor-completions`, but unfortunatly I'm not familiar with the packaging method for *.deb archives, so these completions will need to be moved to the appropriate directory.
- Loading branch information
Showing
1 changed file
with
53 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
#compdef keydb-cli | ||
local -a options | ||
options=( | ||
'-h[Server hostname (default: 127.0.0.1).]: :_hosts' | ||
'-p[Server port (default: 6379).]' | ||
'-s[Server socket (overrides hostname and port).]' | ||
'-a[Password to use when connecting to the server. You can also use the REDISCLI_AUTH environment variable to pass this password more safely (if both are used, this argument takes precedence).]' | ||
'--user[Used to send ACL style "AUTH username pass". Needs -a.]' | ||
'--pass[Alias of -a for consistency with the new --user option.]' | ||
'--askpass[Force user to input password with mask from STDIN. If this argument is used, "-a" and REDISCLI_AUTH environment variable will be ignored.]' | ||
'-u[Server URI.]' | ||
'-r[Execute specified command N times.]' | ||
'-i[When -r is used, waits <interval> seconds per command. It is possible to specify sub-second times like -i 0.1.]' | ||
'-n[Database number.]' | ||
'-3[Start session in RESP3 protocol mode.]' | ||
'-x[Read last argument from STDIN.]' | ||
'-d[Delimiter between response bulks for raw formatting (default: \n).]' | ||
'-D[D <delimiter> Delimiter between responses for raw formatting (default: \n).]' | ||
'-c[Enable cluster mode (follow -ASK and -MOVED redirections).]' | ||
'-e[Return exit error code when command execution fails.]' | ||
'--raw[Use raw formatting for replies (default when STDOUT is not a tty).]' | ||
'--no-raw[Force formatted output even when STDOUT is not a tty.]' | ||
'--quoted-input[Force input to be handled as quoted strings.]' | ||
'--csv[Output in CSV format.]' | ||
'--show-pushes[Whether to print RESP3 PUSH messages. Enabled by default when STDOUT is a tty but can be overriden with --show-pushes no.]' | ||
'--stat[Print rolling stats about server: mem, clients, ...]' | ||
'--latency[Enter a special mode continuously sampling latency. If you use this mode in an interactive session it runs forever displaying real-time stats. Otherwise if --raw or --csv is specified, or if you redirect the output to a non TTY, it samples the latency for 1 second (you can use -i to change the interval), then produces a single output and exits.]' | ||
'--latency-history[Like --latency but tracking latency changes over time. Default time interval is 15 sec. Change it using -i.]' | ||
'--latency-dist[Shows latency as a spectrum, requires xterm 256 colors. Default time interval is 1 sec. Change it using -i.]' | ||
'--lru-test[Simulate a cache workload with an 80-20 distribution.]' | ||
'--replica[Simulate a replica showing commands received from the master.]' | ||
'--rdb[Transfer an RDB dump from remote server to local file.]' | ||
'--pipe[Transfer raw KeyDB protocol from stdin to server.]' | ||
'--pipe-timeout[In --pipe mode, abort with error if after sending all data. no reply is received within <n> seconds. Default timeout: 30. Use 0 to wait forever.]' | ||
'--bigkeys[Sample KeyDB keys looking for keys with many elements (complexity).]' | ||
'--memkeys[Sample KeyDB keys looking for keys consuming a lot of memory.]' | ||
'--memkeys-samples[Sample KeyDB keys looking for keys consuming a lot of memory. And define number of key elements to sample]' | ||
'--hotkeys[Sample KeyDB keys looking for hot keys. only works when maxmemory-policy is *lfu.]' | ||
'--scan[List all keys using the SCAN command.]' | ||
'--pattern[Keys pattern when using the --scan, --bigkeys or --hotkeys options (default: *).]' | ||
'--quoted-pattern[Same as --pattern, but the specified string can be quoted, in order to pass an otherwise non binary-safe string.]' | ||
'--intrinsic-latency[Run a test to measure intrinsic system latency. The test will run for the specified amount of seconds.]' | ||
'--eval[Send an EVAL command using the Lua script at <file>.]' | ||
'--ldb[Used with --eval enable the Redis Lua debugger.]' | ||
'--ldb-sync-mode[Like --ldb but uses the synchronous Lua debugger, in this mode the server is blocked and script changes are not rolled back from the server memory.]' | ||
'--cluster[<command> args... opts... Cluster Manager command and arguments (see below).]' | ||
'--verbose[Verbose mode.]' | ||
'--no-auth-warning[Dont show warning message when using password on command line interface.]' | ||
'--help[Output this help and exit.]' | ||
'--version[Output version and exit.]' | ||
) | ||
|
||
_arguments -s $options |