From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22180 invoked by alias); 19 Jun 2015 15:00:42 -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: 35527 Received: (qmail 9740 invoked from network); 19 Jun 2015 15:00:39 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2 autolearn=ham autolearn_force=no version=3.4.0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s2048; t=1434725651; bh=+95ZE/6h/npVWe4pMQB0FKvb6LbkxZUnYMYaz/EXymU=; h=In-reply-to:From:References:To:Subject:Date:From:Subject; b=DF8IVeabbSO9Af1ZUWUbjh9OgMW3Wdc2X1PDYGyT7yvcsQ3TpTfR8MUPukJ0XAwsAMX8VrDjXlLvfwOloUw86B2eEu+YSrJLlGmQmDrHnwDNiUyB+L47Tomi9AqVrKndTBvwTtCQVrLfzJXlnT1iBGXEquVnwjGA0VWboGj0fiDwAmsEvdat1ldAT5FsjJ+xyWxv3jdvuRxAyu235EdINSxFArKIO/7Nnha8xOkOhaTc01vUpV9RteSruidmbuTNBf9wapEIcW+tjFThYv4FxsgowwCCbse1hQeUBU31fzQQ3Dgo7zESMhceYEj+vW9k6yc+X/eiq2DWHq7RNVevWA== X-Yahoo-Newman-Id: 586651.19449.bm@smtp147.mail.ir2.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: I_UfTUwVM1kbF5Uc7qoKVjebX58eJK_boZumjJf1VARzEpS x23kKbIR_Fvsk30GXtFTOIXke1X0X9cUyeABz7O2UOuLDR8NS1We0HfqqlIq zVvp56hhq8c9HFRxlnzp.KCno7S6p_p2c_cjdhxB0fPoEnceK_d3wMmRzBaD pUQTVE6z_hCm0BglEbX5W8B007oenqrYRHj4F_lmJuTMA.ukyoQwZBX0c68Q I1belgSyuYP.FwDTtmujDz4gBGUBVzT7ZgLVpkUBEKlLR.x7gj23jdBMhbJb b_tKNk3xV1zR3z7rL.IZrBTYmLqGCO85F32g0KKHxJfbG.hxhhwQFPhrfg4n OUZ7FPV8Be1iBFrWrLeULHOD0FbUtcETG97PO0vs863WA0y4dGhG0iL3BTtO k.kkgjOq5fl1Fle8EtL4oyubK3BpmYd.oZTGtaG6AsKbIEoxDOYVsTVndl1E UkhmdRNf8RHd21rHzT1MPiUdV7Sf9.XgdG5ylEu6X7tLHxwpZNaey15NbteN BzAmmB3ZnAmzDTn6_mU5ax7zP2Hi8BA-- X-Yahoo-SMTP: opAkk_CswBAce_kJ3nIPlH80cJI- In-reply-to: <150617154809.ZM1651@torch.brasslantern.com> From: Oliver Kiddle References: <30597.1434580329@thecus.kiddle.eu> <150617154809.ZM1651@torch.brasslantern.com> To: Zsh workers Subject: Re: PATCH: git subcommand completion formatting MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <6199.1434725650.1@thecus.kiddle.eu> Date: Fri, 19 Jun 2015 16:54:10 +0200 Message-ID: <6200.1434725650@thecus.kiddle.eu> Bart wrote: > I see you handled the list-separator style. There are, however, a few other functions with a hard coded list separators. This fixes them. Oliver diff --git a/Completion/Unix/Type/_email_addresses b/Completion/Unix/Type/_email_addresses index 926e8b4..7d5c942 100644 --- a/Completion/Unix/Type/_email_addresses +++ b/Completion/Unix/Type/_email_addresses @@ -88,7 +88,7 @@ _email-local() { _email_addresses() { local -a plugins reply list args local -A opts files - local plugin rcfile muttrc expl ret fret + local plugin rcfile muttrc expl sep ret fret local __specialx='][()<>@,;:\\".' local __spacex=" " # Space, tab @@ -159,7 +159,8 @@ _email_addresses() { if (( fret == 300 )); then if (( ! $+opts[-c] )) && [[ $opts[-n] = $plugin ]]; then - zformat -a list ' -- ' "${reply[@]}" + zstyle -s ":completion:${curcontext}:$curtag" list-separator sep || sep=-- + zformat -a list " $sep " "${reply[@]}" _wanted mail-aliases expl 'alias' compadd "$@" \ -d list - ${reply%%:*} && ret=0 else diff --git a/Completion/Zsh/Command/_fc b/Completion/Zsh/Command/_fc index 1589244..68456cc 100644 --- a/Completion/Zsh/Command/_fc +++ b/Completion/Zsh/Command/_fc @@ -1,7 +1,7 @@ #compdef fc history r local curcontext="$curcontext" state state_descr line ret=1 -local list events num cmd +local events num cmd sep typeset -A opt_args local fc_common fc_hist fc_r @@ -67,21 +67,20 @@ case $service in esac if [[ -n $state ]]; then + zstyle -s ":completion:${curcontext}:" list-separator sep || sep=-- if [[ -z ${line:#*=*} ]] && compset -P '*='; then _message -e replacements 'replacement' elif [[ -prefix [0-9] ]]; then - events=( ${(ps.\0.)"$(printf '%s:%s\0' ${(kv)history})"} ) - zformat -a list " -- " "$events[@]" - _wanted -2V events expl "$state_descr" compadd -M "B:0=" -ld list - \ - "${events[@]%%:*}" + events=( ${(0)"$(printf "%-${#HISTNO}.${#HISTNO}s $sep %s\0" "${(kv)history[@]}")"} ) + _wanted -2V events expl "$state_descr" compadd -M "B:0=" -ld events - \ + "${events[@]%% *}" elif [[ -prefix - ]]; then - for num cmd in ${(kv)history}; do + for num cmd in "${(kv@)history}"; do (( num=num - HISTNO )) - events+=( $num:$cmd ) + events+=( "${(r.1+$#HISTNO.)num} $sep $cmd" ) done - zformat -a list " -- " "$events[@]" - _wanted -2V events expl "$state_descr" compadd -ld list - \ - "${events[@]%%:*}" + _wanted -2V events expl "$state_descr" compadd -ld events - \ + "${events[@]%% *}" else _wanted events expl "$state_descr" compadd -S '' - \ ${${history%%[=[:IFS:]]*}:#[0-9-]*} || _guard "[0-9]#" event diff --git a/Completion/Zsh/Command/_zpty b/Completion/Zsh/Command/_zpty index ef4ac4b..99251aa 100644 --- a/Completion/Zsh/Command/_zpty +++ b/Completion/Zsh/Command/_zpty @@ -1,6 +1,6 @@ #compdef zpty -local state line list names expl curcontext="$curcontext" +local state line list names expl sep curcontext="$curcontext" typeset -A opt_args _arguments -C -s -S \ @@ -50,8 +50,9 @@ if [[ $state = name ]]; then fi list=( ${${(f)"$(zpty)"}#*\) } ) names=( ${list%%:*} ) - if zstyle -T ":completion:${curcontext}" verbose; then - zformat -a list ' --' ${${(f)"$(zpty)"}#*\) } + if zstyle -T ":completion:${curcontext}:" verbose; then + zstyle -s ":completion:${curcontext}:" list-separator sep || sep=-- + zformat -a list " $sep" ${${(f)"$(zpty)"}#*\) } _wanted names expl 'zpty command name' compadd -d list -a names else _wanted names expl 'zpty command name' compadd -a names