From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2479 invoked by alias); 17 Aug 2017 04:19:27 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 41558 Received: (qmail 23395 invoked by uid 1010); 17 Aug 2017 04:19:27 -0000 X-Qmail-Scanner-Diagnostics: from out1-smtp.messagingengine.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(66.111.4.25):SA:0(-2.6/5.0):. Processed in 5.138493 secs); 17 Aug 2017 04:19:27 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,T_DKIM_INVALID autolearn=ham autolearn_force=no version=3.4.1 X-Envelope-From: d.s@daniel.shahaf.name X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= daniel.shahaf.name; h=date:from:message-id:subject:to :x-me-sender:x-me-sender:x-sasl-enc:x-sasl-enc; s=fm1; bh=JNHIHY 6mVHfyhz091lZFpSHBAfUBUGPjSMCjpv+VWck=; b=NmwDcStk1MIDFjOnsWzW8L 49wgiOPr4biTmjrumPs0hhrOjf6M8TkpretP6YiFey6EUd5tqa4QkEba4VbafZmg aWMxMgpwVOjQNNaQDtPP+Nn8a2g/wqM9cMeBiuDiTyz2DnT4+7nH0M4nm/uUHnWK Ki5Us5AoWX2HZ2LUpoWu3jZapNOEpvepeku6zSdx+U3Si7bz1v7/ATz0YoU8/FXD 5tcFqOh2iLMbmqE5lKwdHtV8SpB70c42lmYu9lf2G9kRvFDXqYSh1JJo7m7BGY8r v2ltiZ/zEL+STWIJafM2jBAv7cZwUCvFOZwU5RgjxeCP9tW6zNVwdPlaWXGiiVWQ == DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=date:from:message-id:subject:to :x-me-sender:x-me-sender:x-sasl-enc:x-sasl-enc; s=fm1; bh=JNHIHY 6mVHfyhz091lZFpSHBAfUBUGPjSMCjpv+VWck=; b=g2vOyjdSwmywcQ+IeXewPI 8EP5Lv/tSSS5/Bi/rlWuJL3Rbr1U1VzSSldEJh5dhQ5EDotAWq2GBHhQG1cBjBV9 3mGj0FYgPN1FFfWq3c+1Z8Pfy33v0GhA1JPVw30CvgnrzqrbPj31JTUUYHym71ZA IN1/tGGLvuXDON1rQsWVcPlVRINUZcw2RJmiOf7zBxT3F+rggqABNj2nhdsfX++f WOaUC4v02fz67AJYsi1ACsX4tkSrtlzwlyIBn2YD4NwEESi7UOC+pdK3BD2AK/OS xybhH8yylUNPgdzKCs5bPpQ1saC1f8XWBAfuUqeZcrCaL0nAsoOGG4aCQYHG192w == X-ME-Sender: X-Sasl-enc: 2VvirEFqgFAkqYfGm5jKbOBDxVn32fUuvgTHR1mfV10L 1502943554 From: Daniel Shahaf To: zsh-workers@zsh.org Subject: [PATCH 1/2] _tmux: Complete option names for show-options and show-window-options. Date: Thu, 17 Aug 2017 04:19:10 +0000 Message-Id: <20170817041911.9623-1-danielsh@tarpaulin.shahaf.local2> X-Mailer: git-send-email 2.11.0 --- Completion/Unix/Command/_tmux | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/Completion/Unix/Command/_tmux b/Completion/Unix/Command/_tmux index 7ef20c666..9339d6556 100644 --- a/Completion/Unix/Command/_tmux +++ b/Completion/Unix/Command/_tmux @@ -745,7 +745,7 @@ _tmux-set-option() { local mode=session local curcontext="$curcontext" state line ret=1 typeset -A opt_args - _arguments -C -s \ + _arguments -C -s : \ '-a[append to string options]' \ '-g[set a global session option]' \ '-o[prevent setting of an option that is already set]' \ @@ -769,7 +769,7 @@ _tmux-set-window-option() { [[ -n ${tmux_describe} ]] && print "set a window option" && return local curcontext="$curcontext" state line ret=1 typeset -A opt_args - _arguments -C -s \ + _arguments -C -s : \ '-a[append to string options]' \ '-g[set a global window option]' \ '-o[prevent setting of an option that is already set]' \ @@ -820,21 +820,38 @@ _tmux-show-messages() { _tmux-show-options() { [[ -n ${tmux_describe} ]] && print "show session options" && return - _arguments -s \ + local mode=session + local curcontext="$curcontext" state line ret=1 + typeset -A opt_args + _arguments -C -s : \ '-g[show global options]' \ '-q[suppress errors about unknown or ambiguous options]' \ '-s[show server options]' \ '-v[show only the option value, not the name]' \ '-w[show window options]' \ - '-t+[specify target session]:target session:__tmux-sessions' + '-t+[specify target session]:target session:__tmux-sessions' \ + '*:: :->name_or_value' && ret=0 + + if (( ${+opt_args[-w]} )); then + mode=window + elif (( ${+opt_args[-s]} )); then + mode=server + fi + __tmux-options-complete ${mode} ${state} && ret=0 + return ret } _tmux-show-window-options() { [[ -n ${tmux_describe} ]] && print "show window options" && return - _arguments -s \ + local curcontext="$curcontext" state line ret=1 + typeset -A opt_args + _arguments -C -s : \ '-g[show global options]' \ '-v[show only the option value, not the name]' \ - '-t+[specify target window]:target window:__tmux-windows' + '-t+[specify target window]:target window:__tmux-windows' \ + '*:: :->name_or_value' && ret=0 + __tmux-options-complete window ${state} && ret=0 + return ret } _tmux-source-file() {