summaryrefslogtreecommitdiff
path: root/Completion
diff options
context:
space:
mode:
Diffstat (limited to 'Completion')
-rw-r--r--Completion/Builtins/_compdef17
-rw-r--r--Completion/Builtins/_zpty23
2 files changed, 27 insertions, 13 deletions
diff --git a/Completion/Builtins/_compdef b/Completion/Builtins/_compdef
index 180df920d..23c6d3a3d 100644
--- a/Completion/Builtins/_compdef
+++ b/Completion/Builtins/_compdef
@@ -6,13 +6,18 @@ typeset -A opt_args
_arguments -C -s \
'(-d)-a[make function autoloadable]' \
'(-d -p -P)-n[leave existing definitions intact]' \
- '(-a -n -p -P -k -K)-d[delete]:*:completed command:->ccom' \
- '(-n -d -P -k -K)-p[completion for command matching pattern]:completion function:->cfun:pattern' \
- '(-n -d -p -k -K)-P[as -p for commands without own completion]:completion function:->cfun:pattern' \
- '(-d -p -P -K)-k[define widget and key binding]:completion function:->cfun:style:->style:*:key' \
- '(-d -p -P -k)-K[define multiple widgets based on function]:*::: :->multi' \
':completion function:->cfun' \
- '*:commands: _command_names' && return 0
+ '*:commands: _command_names' \
+ - d \
+ '(-a -n)-d[delete]:*:completed command:->ccom' \
+ - p \
+ '(-n)-p[completion for command matching pattern]:completion function:->cfun:pattern' \
+ - P \
+ '(-n)-P[as -p for commands without own completion]:completion function:->cfun:pattern' \
+ - k \
+ '-k[define widget and key binding]:completion function:->cfun:style:->style:*:key' \
+ - K \
+ '-K[define multiple widgets based on function]:*::: :->multi' && return 0
if [[ $state = multi ]]; then
case $(( CURRENT % 3 )) in
diff --git a/Completion/Builtins/_zpty b/Completion/Builtins/_zpty
index f3e271342..de793c814 100644
--- a/Completion/Builtins/_zpty
+++ b/Completion/Builtins/_zpty
@@ -4,15 +4,24 @@ local state line list names expl curcontext="$curcontext"
typeset -A opt_args
_arguments -C -s \
- '(-d -w -r -L)-e[echo input characters]' \
- '(-d -w -r -L)-b[io to pseudo-terminal blocking]' \
- '(-e -b -w -r -L)-d[delete command]:*:name:->name' \
- '(-e -b -d -r -L)-w[send string to command]:name:->name:*:strings to write' \
- '(-e -b -d -w -L *)-r[read string from command]:name:->name:param:_parameters' \
- '(-e -b -d -w -r)-L[list defined commands as calls]' \
- '(-r)*::args:_normal' && return 0
+ '(-r)*::args:_normal' \
+ - eb \
+ '-e[echo input characters]' \
+ '-b[io to pseudo-terminal blocking]' \
+ - d \
+ '-d[delete command]:*:name:->name' \
+ - w \
+ '-w[send string to command]:name:->name:*:strings to write' \
+ - L \
+ '-L[list defined commands as calls]' \
+ - r \
+ '(*)-r[read string from command]:name:->name:param:_parameters' && return 0
if [[ $state = name ]]; then
+ if ! zmodload -e zsh/zpty; then
+ _message "zpty module not loaded"
+ return 1
+ fi
list=( ${${(f)"$(zpty)"}#*\) } )
names=( ${list%%:*} )
if zstyle -T ":completion:${curcontext}" verbose; then