about summary refs log tree commit diff
path: root/Completion/Unix/Command/_php
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Unix/Command/_php')
-rw-r--r--Completion/Unix/Command/_php5
1 files changed, 3 insertions, 2 deletions
diff --git a/Completion/Unix/Command/_php b/Completion/Unix/Command/_php
index bd210dccd..7688dd571 100644
--- a/Completion/Unix/Command/_php
+++ b/Completion/Unix/Command/_php
@@ -44,13 +44,14 @@ _arguments -C -s -S -A "-*" "$args[@]" && return 0
 
 case $state in
   directive)
-    local -a directives
+    local -a directives suf
     local code='foreach (ini_get_all() as $k => $v) { echo "$k\n"; }'
     directives=( $(_call_program directives $words[1] -r ${(q)code} 2>/dev/null) )
     if compset -P '*='; then
       _default && return 0
     else
-      _wanted directives expl 'configuration directive' compadd -qS= -a directives && return 0
+      compset -S '=*' || suf=( -qS '=' )
+      _wanted directives expl 'configuration directive' compadd "$suf[@]" -a directives && return 0
     fi
   ;;
   extension)