Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

[PATCH 4/4] _postfix: Support $enable_long_queue_ids.



Note that this not only adds a second compadd invocation but also adds a space
to the first compadd invocation, to prevent the start of a new-style queue id
from matching as an old-style queue id.
---
 Completion/Unix/Command/_postfix | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/Completion/Unix/Command/_postfix b/Completion/Unix/Command/_postfix
index 8880dbf..e610a1d 100644
--- a/Completion/Unix/Command/_postfix
+++ b/Completion/Unix/Command/_postfix
@@ -7,7 +7,13 @@ typeset -A opt_args
 integer NORMARG
 
 _postfix_queue_id() {
-  compadd "$@" -- ${${(M)${(f)"$(_call_program mailq 'mailq')"}:#(#s)([0-9A-F]##)*}/(#s)(#b)([0-9A-F]##)*/$match[1]}
+  local -a lines=( ${(f)"$(_call_program mailq 'mailq')"} )
+
+  # $enable_long_queue_ids = no
+  compadd "$@" -- ${${(M)lines:#(#s)([0-9A-F]## )*}/(#s)(#b)([0-9A-F]##)*/$match[1]}
+
+  # $enable_long_queue_ids = yes
+  compadd "$@" -- ${${(M)lines:#(#s)[0-9bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ](#c10)z*}%% *}
 }
 
 _postfix_main_cf_parameter() {



Messages sorted by: Reverse Date, Date, Thread, Author