From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 31495 invoked from network); 6 Jul 2020 15:50:26 -0000 Received: from ns1.primenet.com.au (HELO primenet.com.au) (203.24.36.2) by inbox.vuxu.org with ESMTPUTF8; 6 Jul 2020 15:50:26 -0000 Received: (qmail 21036 invoked by alias); 6 Jul 2020 15:50:14 -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: List-Unsubscribe: Sender: zsh-workers@zsh.org X-Seq: 46195 Received: (qmail 23312 invoked by uid 1010); 6 Jul 2020 15:50:14 -0000 X-Qmail-Scanner-Diagnostics: from park01.gkg.net by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.102.3/25863. spamassassin: 3.4.4. Clear:RC:0(205.235.26.22):SA:0(-2.3/5.0):. Processed in 3.00005 secs); 06 Jul 2020 15:50:14 -0000 X-Envelope-From: SRS0=pM0s=AR=yahoo.co.uk=okiddle@bounces.park01.gkg.net X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: pass (ns1.primenet.com.au: SPF record at bounces.park01.gkg.net designates 205.235.26.22 as permitted sender) X-Virus-Scanned: by amavisd-new at gkg.net Authentication-Results: amavisd4.gkg.net (amavisd-new); dkim=pass (2048-bit key) header.d=yahoo.co.uk X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0 X-YMail-OSG: _TNcBtAVM1msdo11MsfsmZINP4wmMVVh7lO8HzTlaT3MunuWQXg9xHDga1f_M0g FYsFvaMiGz3AIxI7OU3cIQB4mYGcFKoJsxYHEXBnY4aAmqinzDSakonIPvlKAow.kDfg3cQ0VsKy jJDmtWuXqiDyfnLCimkrXSALI_I58ZPg6m4_HMo3zk96HQp1zRb3wyJKGXxjt5r8YW5JcyyGP6EJ 6lYyJgXGYRV4FK0aqqGKKNEKdChh_lDY_uI1rnMDfbVjybp8p4mlXpMpxbSrxVQb51TuEZdgn7df NQt7GzAnRKiGwlTExzYtzD2hJfyQqZwejye3UzffaaBPzNm_kndFg6vnWFKcvZjgCgwt6PTtCkvr qgmtS4Y7jW3pPFKdp.B2aChvQILbnhz9JXcQAXHpALZARpir61xbp433w7kTVlrAwO6lzyuGL3Rt 3qopFSjGt39DWseo0LV_hBoyzZ8RZkBxaYoNp_YnGwXLaz1KcmyLDEJiGjVPg5Iq2dL7KAN1c.RO jmgXYqtYCDG_QojE4zE4DJjoNfiaBa6LHdytnNm4nqiyMp4DlBd8bSzfyA7VUrZrs6fYwAo4JGOZ 4zR47JK8Ipw7JWjG0S6Qm2N6.RL1z38QOPbiebCq4_MaZVaMa12jOxVOoWoA9L3j.YUqFZevilcM 1jN3SnjrhsjHdAOiAxfecHFJIMYDSKks_f4IDr0qb7KX2X3cfJa.8xTr7yg1lURMT9_IXz1FRa_Q VPZ4F2NQdkDjQSCcC5rRY.VEaifEcx1aJaKpkrxrxLscgAr1Auyt4DkuXnISnWheE2mDcPQfchbf oKB3om4Tm7gy506cxCYZ5OtvYuQcUmmPx4.PbZCRUtLsoSRNO2RkMOGjQgMccvd2V8up7iPgMUFi 89f3Gw3CWyphFHpDjGNas2.kWT6JXgzFPnNbxbpQpcouX3q7sFL6g1fLqH_yde4eukFTXX5zGO0T gCJe7pSX2dcCRv9r9wgENPKsI3DNzO6pm9x_cf9Ihg7vPHZF7QqwqY0JiG5Rw7hFx86gj_pMU.Kk MllpGs.k0XhSugl.XO3XxWKg64ZIqqTK5nreGXwGw3dDriOLcKbW9NdscVLJ_PGa1bklkMG3hGLP I_GMhT5nzqKxsgVHQxRdk2XJ7Aab3XSHHWL15anZsXmf2ntmWP9Cr5eAsvncA5hDim3EC4RgivSb Bb7r54z2Nmuv_b5AYT07HmYKG7mO8fLRBfcqCBc7De0JlKIHynMagrS8L02uZ1b5oc3yDLBUvYfP DrCyOZNj0cO2SWaH_41lxeFfk8Ffy5Gy2fv92Nepx6y5la_wvUnosZw8aYmKMhA0frioW0Aum90u prqRRR0H.LkUZb0xNeX8gl9yhf1Cvq8.JCHbJKbczh2EmEuwnwZLPlNH3PZR_SyYxrk.Qs.E- From: Oliver Kiddle To: Zsh workers Subject: PATCH: completion of X colours MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <8690.1594050559.1@hydra> Date: Mon, 06 Jul 2020 17:49:19 +0200 Message-ID: <8691-1594050559.938587@nS9U.7ujg.aulP> References: <8691-1594050559.938587.ref@nS9U.7ujg.aulP> X-Mailer: WebService/1.1.16197 hermes_yahoo Apache-HttpAsyncClient/4.1.4 (Java/11.0.7) Completion of X colors seems to have stopped working at some point. This makes it check if the showrgb command is installed and if so, uses it. I've also taken the opportunity to rename the cache variable. Using "cache" consistently as a prefix makes them easier to identify. And I think we try to declare them explicitly with typeset -g now. Oliver diff --git a/Completion/X/Type/_x_color b/Completion/X/Type/_x_color index 960eae6d3..845a35686 100644 --- a/Completion/X/Type/_x_color +++ b/Completion/X/Type/_x_color @@ -10,25 +10,28 @@ local expl -if (( ! $+_color_cache )); then +if (( ! $+_cache_x_colors )); then + typeset -ga _cache_x_colors local file # Cache of color names doesn't exist yet, create it. zstyle -s ":completion:${curcontext}:colors" path file if [[ -n "$file" ]]; then - _color_cache=( "${(@)${(@f)$(< $file)}[2,-1]##* }" ) + _cache_x_colors=( "${(@)${(@f)$(< $file)}[2,-1]##* }" ) + elif (( $+commands[showrgb] )); then + _cache_x_colors=( "${(@)${(@)${(@f)$(_call_program colors showrgb)}[2,-1]##* }:#* *}" ) else file=( /usr/{lib,{{X11R6,openwin},local{,/X11{,R6}}}/lib}/X11/rgb.txt(N) ) (( $#file )) && - _color_cache=( "${(@)${(@)${(@f)$(< $file[1])}[2,-1]##* }:#* *}" ) + _cache_x_colors=( "${(@)${(@)${(@f)$(< $file[1])}[2,-1]##* }:#* *}" ) fi # Stupid default value. - (( $#_color_cache )) || _color_cache=(white black gray red blue green) + (( $#_cache_x_colors )) || _cache_x_colors=(white black gray red blue green) fi _wanted colors expl 'color specification' compadd "$@" -M \ - 'm:{a-z}={A-Z} m:-=\ r:[^ A-Z0-9]||[ A-Z0-9]=* r:|=*' -a - _color_cache + 'm:{a-z}={A-Z} m:-=\ r:[^ A-Z0-9]||[ A-Z0-9]=* r:|=*' -a - _cache_x_colors