summaryrefslogtreecommitdiff
path: root/config/essentials/zsh/comp.zsh
diff options
context:
space:
mode:
authorRaymaekers Luca <raymaekers.luca@gmail.com>2024-10-13 12:55:55 +0200
committerRaymaekers Luca <raymaekers.luca@gmail.com>2024-10-13 12:55:55 +0200
commit6e1d0b1f334b8e2b57309cd3ee0c4c0ee2511f75 (patch)
tree53a2aa6bf42251b57813f6f0753d0839b8e2684e /config/essentials/zsh/comp.zsh
parent3edcea302050baacb1b4ca0c042f9c2680a46386 (diff)
checkpoint
Diffstat (limited to 'config/essentials/zsh/comp.zsh')
-rw-r--r--config/essentials/zsh/comp.zsh26
1 files changed, 26 insertions, 0 deletions
diff --git a/config/essentials/zsh/comp.zsh b/config/essentials/zsh/comp.zsh
index 3d3f785..fffdc80 100644
--- a/config/essentials/zsh/comp.zsh
+++ b/config/essentials/zsh/comp.zsh
@@ -58,5 +58,31 @@ _dotnet_zsh_complete()
_values = "${(ps:\n:)completions}"
}
compdef _dotnet_zsh_complete dotnet
+
+_ws_complete() {
+ local -a subcmds
+ ws help 2>&1 |
+ tail -n +3 | # skip usage and COMMANDS line
+ sed -e 's/\s*\([^ ]\+\)\s*\(.\+\)/\1: \2/' |
+ while read -r line; do
+ subcmds+=("$line")
+ done
+ _describe 'ws commands' subcmds
+}
+compdef _ws_complete ws
+
+_go_flag_complete() {
+ local -a subcmds
+ $name -h 2>&1 | tail -n +2 |
+ while read -r l1; do
+ read -r l2
+ l1="$(printf '%s' "$l1" | sed 's/^\s*\([^ ]\+\).*/\1/')"
+ l2="$(printf '%s' "$l2" | sed 's/^\s*//')"
+ subcmds+=("$l1: $l2")
+ done
+ _describe 'commands' subcmds
+}
+
compdef _gnu_generic cpp sqlplus
compdef _gnu_generic air
+compdef _go_flag_complete wbr