mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-01-30 02:44:42 +01:00
feat(opencode): add completion and alias plugin for opencode
Signed-off-by: Pranav Avva <pranav.avva@gmail.com>
This commit is contained in:
parent
67cd8c4673
commit
ef36dc215e
2 changed files with 53 additions and 0 deletions
25
plugins/opencode/README.md
Normal file
25
plugins/opencode/README.md
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
# opencode plugin
|
||||||
|
|
||||||
|
This plugin adds several aliases and shell completion for the [`opencode`](https://opencode.ai) command line tool from Anomaly Innovations.
|
||||||
|
|
||||||
|
To use it, add `opencode` to the plugins array of your `.zshrc` file:
|
||||||
|
|
||||||
|
```zsh
|
||||||
|
plugins=(... opencode)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
See the [opencode docs](https://opencode.ai/docs#install) for installation instructions.
|
||||||
|
|
||||||
|
|
||||||
|
## Aliases
|
||||||
|
|
||||||
|
|Alias|Command|Description|
|
||||||
|
|-|-|-|
|
||||||
|
|`oc`|`opencode`|Run the `opencode` command|
|
||||||
|
|`ocr`|`opencode run` |Run `opencode` with a message|
|
||||||
|
|
||||||
|
## Completions
|
||||||
|
|
||||||
|
This plugin configures shell completion for the `opencode` command.
|
||||||
28
plugins/opencode/opencode.plugin.zsh
Normal file
28
plugins/opencode/opencode.plugin.zsh
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
if ! (( $+commands[opencode] )); then
|
||||||
|
print "zsh opencode plugin: opencode not found. Please install opencode before using this plugin." >&2
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# See `opencode completion`
|
||||||
|
_opencode_yargs_completions() {
|
||||||
|
local reply
|
||||||
|
local si=$IFS
|
||||||
|
IFS=$'
|
||||||
|
' reply=($(COMP_CWORD="$((CURRENT-1))" COMP_LINE="$BUFFER" COMP_POINT="$CURSOR" opencode --get-yargs-completions "${words[@]}"))
|
||||||
|
IFS=$si
|
||||||
|
if [[ ${#reply} -gt 0 ]]; then
|
||||||
|
_describe 'values' reply
|
||||||
|
else
|
||||||
|
_default
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
if [[ "'${zsh_eval_context[-1]}" == "loadautofunc" ]]; then
|
||||||
|
_opencode_yargs_completions "$@"
|
||||||
|
else
|
||||||
|
compdef _opencode_yargs_completions opencode
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Aliases
|
||||||
|
alias oc="opencode"
|
||||||
|
alias ocr="opencode run"
|
||||||
Loading…
Add table
Add a link
Reference in a new issue