From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12130 invoked by alias); 18 Mar 2013 17:43:46 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: X-Seq: 17713 Received: (qmail 20868 invoked from network); 18 Mar 2013 17:43:31 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,UNPARSEABLE_RELAY autolearn=ham version=3.3.2 Received-SPF: none (ns1.primenet.com.au: domain at desy.de does not designate permitted sender hosts) Message-ID: <5147502A.70603@desy.de> Date: Mon, 18 Mar 2013 18:34:34 +0100 From: Jan Eike von Seggern User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130308 Thunderbird/17.0.4 MIME-Version: 1.0 To: zsh-users@zsh.org Subject: xrandr completion (was Re: Caching variables during completion) References: <511B6069.1070302@desy.de> <130213093924.ZM831@torch.brasslantern.com> <20130213203044.3c9d5c27@pws-pc.ntlworld.com> <130213163957.ZM1064@torch.brasslantern.com> <511CA274.4060702@desy.de> In-Reply-To: <511CA274.4060702@desy.de> Content-Type: multipart/mixed; boundary="------------060403050007020400060008" X-OriginalArrivalTime: 18 Mar 2013 17:34:35.0657 (UTC) FILETIME=[DBCC0790:01CE23FE] --------------060403050007020400060008 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, attached is my slightly improved completion for xrandr: It completes only connected outputs and only the available modes for each output. Best Eike On 02/14/2013 09:38 AM, Jan Eike von Seggern wrote: > Thanks a lot Bart and Peter! > > Using HISTNO should be working. > > BTW: I played around with _store_cache/_retrieve_cache but I could not > get it working because I didn't now how to retrieve an associated array > from the cache (not to mention that it's not fitting my need anyways). > > Best > Eike > > > On 02/14/2013 01:39 AM, Bart Schaefer wrote: >> On Feb 13, 8:30pm, Peter Stephenson wrote: >> } >> } Bart Schaefer wrote: >> } > zstyle ':completion:*' completer _xrcache _oldlist _expand >> _complete # etc. >> } >> } I don't see why you couldn't put that inside the completion function >> } that needs the cache >> >> True, you could put it in the completion function, but what if there's >> more than one completion function that wants to share the same cache? >> >> Which reminds me that I've never really bothered to understand how the >> _store_cache/_retrieve_cache stuff is supposed to work. I suspect it >> would be overkill here. >> --------------060403050007020400060008 Content-Type: text/plain; charset=UTF-8; name="_xrandr" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="_xrandr" I2NvbXBkZWYgeHJhbmRyCmxvY2FsIGNvbnRleHQgc3RhdGUgc3RhdGVfZGVzY3IgbGluZQp0 eXBlc2V0IC1BIG9wdF9hcmdzCmxvY2FsIGV4cGwKbG9jYWwgb3V0cHV0cwoKIyBUT0RPOiBU aGlzIGNyZWF0ZXMgYSBnbG9iYWwgdmFyaWFibGUgdG8gY2FjaGUgdGhlIGF2YWlsYWJsZSBv dXRwdXRzLiAKaWYgW1sgJF94cl9ISVNUTk8gIT0gJEhJU1ROTyBdXTsKdGhlbgogIF94cl9I SVNUTk89JEhJU1ROTwogIHR5cGVzZXQgLWdBIF94cl9tb2RlcyAKICBfeHJfbW9kZXM9KCkK ICBsb2NhbCBsYXN0X291dHB1dCBsCiAgZm9yIGwgaW4gJHsoZikiJCh4cmFuZHIgLXEpIn07 IGRvCiAgICBsPSR7KHopbH0KICAgIGlmIFtbICRsWzJdID09ICJjb25uZWN0ZWQiIF1dOyB0 aGVuCiAgICAgIGxhc3Rfb3V0cHV0PSRsWzFdCiAgICBlbGlmIFtbICRsWzJdID09ICJkaXNj b25uZWN0ZWQiIF1dOyB0aGVuCiAgICAgIGxhc3Rfb3V0cHV0PSIiCiAgICBlbGlmIFtbIC1u ICRsYXN0X291dHB1dCBdXTsgdGhlbgogICAgICBfeHJfbW9kZXNbJGxhc3Rfb3V0cHV0XT0i JF94cl9tb2Rlc1skbGFzdF9vdXRwdXRdJHtfeHJfbW9kZXNbJGxhc3Rfb3V0cHV0XSsgfSRs WzFdIgogICAgZmkKICBkb25lCmZpCm91dHB1dHM9JHsoaylfeHJfbW9kZXN9CgpfYXJndW1l bnRzIFwKICAnKC1kIC1kaXNwbGF5KSd7LWQsLWRpc3BsYXl9J1tYIGRpc3BsYXkgdG8gdXNl XTpYIGRpc3BsYXk6X3hfZGlzcGxheScgXAogICctaGVscFtkaXNwbGF5IGhlbHBdJyBcCiAg JygtbyAtLW9yaWVudGF0aW9uKSd7LW8sLS1vcmllbnRhdGlvbn0nW29yaWVudGF0aW9uIG9m IHNjcmVlbl06cm90YXRpb246KG5vcm1hbCBpbnZlcnRlZCBsZWZ0IHJpZ2h0IDAgMSAyIDMp JyBcCiAgJygtcSAtLXF1ZXJ5KSd7LXEsLS1xdWVyeX0nW2Rpc3BsYXkgY3VycmVudCBzdGF0 ZV0nIFwKICAnKC1zIC0tc2l6ZSkney1zLC0tc2l6ZX0nW3NldCBzY3JlZW4gc2l6ZV06c2l6 ZTonIFwKICAnKC1yIC0tcmF0ZSAtLXJlZnJlc2gpJ3sqLXIsKi0tcmF0ZSwqLS1yZWZyZXNo fSdbc2V0IHJlZnJlc2ggcmF0ZV06dGFyZ2V0IHJlZnJlc2ggcmF0ZTonIFwKICAnKC12IC0t dmVyc2lvbikney12LC0tdmVyc2lvbn0nW2Rpc3BsYXkgdmVyc2lvbl0nIFwKICAnLXhbcmVm bGVjdCBhY3Jvc3MgWCBheGlzXScgXAogICcteVtyZWZsZWN0IGFjcm9zcyBZIGF4aXNdJyBc CiAgJy0tc2NyZWVuOlggc2NyZWVuIG51bWJlcicgXAogICctLXZlcmJvc2VbYmUgbW9yZSB2 ZXJib3NlXScgXAogICctLWRyeXJ1blttYWtlIG5vIGNoYW5nZXNdJyBcCiAgIi0tbm9ncmFi W2RvblwndCBncmFiIHNjcmVlbl0iIFwKICAnKC0tcHJvcCAtLXByb3BlcnRpZXMpJ3stLXBy b3AsLS1wcm9wZXJ0aWVzfSdbZGlzcGxheSB0aGUgY29udGVudHMgb2YgcHJvcGVydGllcyBm b3IgZWFjaCBvdXRwdXRdJyBcCiAgJy0tZmJbY29uZmlndXJlIHNjcmVlbiBzaXplXTpzaXpl OicgXAogICctLWZibW1bY29uZmlndXJlIHBoeXNpY2FsIHNjcmVlbiBzaXplXTpzaXplOicg XAogICctLWRwaVtjb25maWd1cmUgRFBJXTpkcGk6JyBcCiAgIiotLW91dHB1dFtjb25maWd1 cmUgb3V0cHV0XTpvdXRwdXQgdG8gcmVjb25maWd1cmU6KCRvdXRwdXRzKSIgXAogICcqLS1h dXRvW3NlbGVjdCBwcmVmZXJyZWQgbW9kZV0nIFwKICAiKi0tbW9kZVtzZWxlY3QgbW9kZSBm b3Igb3V0cHV0XTpvdXRwdXQgbW9kZTotPm1vZGUiIFwKICAnKi0tcHJlZmVycmVkW3NlbGVj dCBwcmVmZXJyZWQgbW9kZV0nIFwKICAnKi0tcG9zW3Bvc2l0aW9uIG91dHB1dF06cG9zaXRp b246JyBcCiAgJyotLXJlZmxlY3RbcmVmbGVjdCBhY3Jvc3MgYXhlc106YXhlczoobm9ybWFs IHggeSB4eSknIFwKICAnKi0tcm90YXRlW3JvdGF0ZSBvdXRwdXRdOnJvdGF0aW9uOihub3Jt YWwgaW52ZXJ0ZWQgbGVmdCByaWdodCknIFwKICAiKi0tbGVmdC1vZltwb3NpdGlvbiBvdXRw dXRdOnJlbGF0aXZlIHBvc2l0aW9uIHRvOigkb3V0cHV0cykiIFwKICAiKi0tcmlnaHQtb2Zb cG9zaXRpb24gb3V0cHV0XTpyZWxhdGl2ZSBwb3NpdGlvbiB0bzooJG91dHB1dHMpIiBcCiAg IiotLWFib3ZlW3Bvc2l0aW9uIG91dHB1dF06cmVsYXRpdmUgcG9zaXRpb24gdG86KCRvdXRw dXRzKSIgXAogICIqLS1iZWxvd1twb3NpdGlvbiBvdXRwdXRdOnJlbGF0aXZlIHBvc2l0aW9u IHRvOigkb3V0cHV0cykiIFwKICAiKi0tc2FtZS1hc1twb3NpdGlvbiBvdXRwdXRdOnJlbGF0 aXZlIHBvc2l0aW9uIHRvOigkb3V0cHV0cykiIFwKICAnKi0tc2V0W3NldCBwcm9wZXJ0eV06 cHJvcGVydHk6KEJhY2tsaWdodCBzY2FsaW5nXCBtb2RlKTp2YWx1ZTotPnZhbHVlJyBcCiAg JyotLXNjYWxlW3NjYWxlIG91dHB1dF06b3V0cHV0IHNjYWxpbmcgWHhZOicgXAogICcqLS10 cmFuc2Zvcm1bdHJhbnNmb3JtIG91dHB1dF06dHJhbnNmb3JtYXRpb24gbWF0cml4OicgXAog ICcqLS1vZmZbZGlzYWJsZSB0aGUgb3V0cHV0XScgXAogICcqLS1jcnRjOmNydGMgdG8gdXNl OicgXAogICcqLS1wYW5uaW5nW2VuYWJsZSBwYW5uaW5nXTpwYW5uaW5nOicgXAogICcqLS1n YW1tYTpyXDpnXDpiOicgXAogICcqLS1wcmltYXJ5W3NlbGVjdCBvdXRwdXQgYXMgcHJpbWFy eV0nIFwKICAnLS1ub3ByaW1hcnknIFwKICAnKi0tbmV3bW9kZVthZGQgbmV3IG1vZGUgbGlu ZV06bmFtZTogOmNsb2NrIE1IejogOmhkaXNwOiA6aHN5bmMtc3RhcnQ6IDpoc3luYy1lbmQ6 IDpodG90YWw6IDp2ZGlzcDogOnZzeW5jLXN0YXJ0OiA6dnN5bmMtZW5kOiA6dnRvdGFsOicg XAogICcqLS1ybW1vZGVbcmVtb3ZlIG1vZGUgbGluZV06TW9kZSBuYW1lOicgXAogICIqLS1h ZGRtb2RlW2FkZCBuZXcgbW9kZSB0byBvdXRwdXRdOm91dHB1dDooJG91dHB1dHMpOm5hbWU6 IiBcCiAgIiotLWRlbG1vZGVbcmVtb3ZlIG1vZGUgZnJvbSBvdXRwdXRdOm91dHB1dDooJG91 dHB1dHMpOm5hbWU6IiBcCiAgJiYgcmV0dXJuIDAKCmlmIFtbICRzdGF0ZSA9PSB2YWx1ZSBd XTsgdGhlbgogICAgY2FzZSAkd29yZHNbQ1VSUkVOVC0xXSBpbgoJKHNjYWxpbmcqIG1vZGUp CgkgICAgX2Rlc2NyaXB0aW9uIHZhbHVlIGV4cGwgIm91dHB1dCBwcm9wZXJ0eSAnc2NhbGlu ZyBtb2RlJyIKCSAgICBjb21wYWRkICIkQCIgIiRleHBsW0BdIiBOb25lIEZ1bGwgQ2VudGVy IEZ1bGxcIGFzcGVjdCAmJiByZXR1cm4gMAoJICAgIDs7CiAgICBlc2FjCmVsaWYgW1sgJHN0 YXRlID09IG1vZGUgXV07IHRoZW4KICAgIGxvY2FsIGk9MSBsYXN0X291dHB1dAogICAgd2hp bGUgKCggQ1VSUkVOVCAtIGkgPiAyICkpOyBkbwogICAgICAgIGlmIFtbICR3b3Jkc1tDVVJS RU5ULTEtaV0gPT0gIi0tb3V0cHV0IiBdXTsgdGhlbgogICAgICAgICAgICBsYXN0X291dHB1 dD0kd29yZHNbQ1VSUkVOVC1pXQogICAgICAgICAgICBicmVhawogICAgICAgIGZpCiAgICAg ICAgKCggaSArPSAxICkpCiAgICBkb25lCiAgICBfZGVzY3JpcHRpb24gLVYgbW9kZSBleHBs ICJvdXRwdXQgbW9kZSIKICAgIGNvbXBhZGQgIiRAIiAiJGV4cGxbQF0iICR7KHopX3hyX21v ZGVzWyRsYXN0X291dHB1dF19ICYmIHJldHVybiAwCmZpCg== --------------060403050007020400060008--