diff options
| author | Shohei YOSHIDA <syohex@gmail.com> | 2023-09-18 00:04:08 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-09-18 00:04:08 +0900 |
| commit | bed209ca6454d2fab69654e79a47e716a4efff61 (patch) | |
| tree | cce179a3e1fee16cf8a06aac1ebac577e5a177ae /src | |
| parent | Merge pull request #1043 from zsh-users/update-fwupdmgr (diff) | |
| parent | implement suggestions (diff) | |
| download | zsh-completions-bed209ca6454d2fab69654e79a47e716a4efff61.tar zsh-completions-bed209ca6454d2fab69654e79a47e716a4efff61.tar.gz zsh-completions-bed209ca6454d2fab69654e79a47e716a4efff61.tar.bz2 zsh-completions-bed209ca6454d2fab69654e79a47e716a4efff61.tar.lz zsh-completions-bed209ca6454d2fab69654e79a47e716a4efff61.tar.xz zsh-completions-bed209ca6454d2fab69654e79a47e716a4efff61.tar.zst zsh-completions-bed209ca6454d2fab69654e79a47e716a4efff61.zip | |
Merge pull request #1039 from johannes87/master
Add completion script for chatblade
Diffstat (limited to 'src')
| -rw-r--r-- | src/_chatblade | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/src/_chatblade b/src/_chatblade new file mode 100644 index 0000000..62d12e6 --- /dev/null +++ b/src/_chatblade @@ -0,0 +1,63 @@ +#compdef chatblade +# ------------------------------------------------------------------------------ +# Description +# ----------- +# +# Completion script for chatblade (https://github.com/npiv/chatblade) +# +# ------------------------------------------------------------------------------ +# Authors +# ------- +# +# * Johannes Bittner (https://github.com/johannes87) +# +# ------------------------------------------------------------------------------ + +_chatblade() { + local -a args + local context state state_descr line + typeset -A opt_args + + args+=( + '(- *)'{-h,--help}'[show this help message and exit]' + '--openai-api-key[the OpenAI API key can also be set as env variable OPENAI_API_KEY]:key' + '--temperature[temperature (openai setting)]:temperature' + '(-c --chat-gpt)'{-c,--chat-gpt}'[chat GPT model 3.5/4 shorthand or full qualified model name, can also be set via env variable OPENAI_API_MODEL]:chat GPT model:(3.5 4)' + '(-i --interactive)'{-i,--interactive}'[start an interactive chat session. This will implicitly continue the conversation]' + '(-s --stream)'{-s,--stream}'[Stream the incoming text to the terminal]' + '(-t --tokens)'{-t,--tokens}'[display what *would* be sent, how many tokens, and estimated costs]' + '(-p --prompt-file)'{-p,--prompt-file}'[prompt name - will load the prompt with that name at ~/.config/chatblade/name or a path to a file]:prompt file:_files' + '(-e --extract)'{-e,--extract}'[extract content from response if possible (either json or code block)]' + '(-r --raw)'{-r,--raw}'[print session as pure text, dont pretty print or format]' + '(-n --no-format)'{-n,--no-format}'[do not add pretty print formatting to output]' + '(-o --only)'{-o,--only}'[Only display the response, omit query]' + '--theme[Set the theme for syntax highlighting see https://pygments.org/styles/, can also be set with CHATBLADE_THEME]:theme:_values "theme" default emacs friendly manni monokai' + '(-l --last)'{-l,--last}'[alias for -S last, the default session if none is specified]' + '(-S --session)'{-S,--session}'[initiate or continue named session]:session:->sessions' + '--session-list[list sessions]' + '--session-path[show path to session file]' + '--session-dump[dump session to stdout]' + '--session-delete[delete session]' + '--session-rename[rename session]:new session:->sessions' + ) + + _arguments -s $args + + case $state in + (sessions) + local -a sessions + sessions=("${(@f)$(chatblade --session-list)}") + _describe 'session' sessions + ;; + esac +} + +_chatblade + +# 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 |
