From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27417 invoked by alias); 15 Aug 2018 15:57:12 -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: List-Unsubscribe: X-Seq: 23583 Received: (qmail 24011 invoked by uid 1010); 15 Aug 2018 15:57:12 -0000 X-Qmail-Scanner-Diagnostics: from icgriddb04.seas.upenn.edu 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(158.130.57.72):SA:0(-1.9/5.0):. Processed in 1.837883 secs); 15 Aug 2018 15:57:12 -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=-1.9 required=5.0 tests=BAYES_00,SPF_PASS autolearn=ham autolearn_force=no version=3.4.1 X-Envelope-From: frederik@ofb.net X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Date: Wed, 15 Aug 2018 08:57:00 -0700 From: frederik@ofb.net To: Peter Stephenson , zsh-users@zsh.org Cc: Zsh hackers list Subject: Re: completion autolist has time-sensitive interface Message-ID: <20180815155700.GD30438@ofb.net> Reply-To: frederik@ofb.net References: <20180815054958.GA27844@ofb.net> <20180815083359eucas1p157426370c46cd6d59b96b8964f0445ce~LAcQObm1u2570325703eucas1p1b@eucas1p1.samsung.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180815083359eucas1p157426370c46cd6d59b96b8964f0445ce~LAcQObm1u2570325703eucas1p1b@eucas1p1.samsung.com> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: I'm adding zsh-users at Peter's suggestion. Thanks in advance. On Wed, Aug 15, 2018 at 09:33:58AM +0100, Peter Stephenson wrote: > On Tue, 14 Aug 2018 22:49:58 -0700 > wrote: > > > Dear Zsh Hackers, > > > > Sometimes completion is so laggy on my system that when I press TAB > > after e.g. "man perl", nothing seems to happen. So I press it again. > > Still nothing happens. Completion seems broken. > > > > Took me a while to figure out the problem. It's related to "setopt > > autolist" (which is on by default for me?). > > > > What happens is that if I just press TAB once, e.g. after "man perl", > > there is a one-second delay and a prompt "zsh: do you wish to see all > > 201 possibilities (51 lines)?". At this point I can press TAB again, > > which is equivalent to "y" I guess, and I see a list of completions. > > > > However, if I press TAB twice quickly in succession then I see no > > list, it is exactly as if there are no completions at all. (Actually > > if the prompt is at the bottom of the screen, I get a newline) I find > > it confusing that the completion interface would be time-sensitive in > > this manner. Why TAB-delay-TAB would behave differently from TAB-TAB. > > Usually everything I do on the terminal has the property that it > > doesn't matter how fast or slow I type, it's only the order of the > > keys that's important... > > One possibility would be if you had (presumably inadvertently) a > key with TAB as a prefix. Then it would delay to see if you're > going to type the full key stroke, and only execute the TAB binding > if you didn't. It's not very likely, but it's the best I can think > of. > > If you run > > bindkey | grep '\^I' > > you'll probably see something like > > "^I" complete-word > "^[^I" self-insert-unmeta > > where the second isn't relevant as there's an ESC in front. If you > see something else starting with ^I that's a problem. > > BTW this is probably more suitable for zsh-users where the larger > audience is more likely to have seen something similar. Thanks. When I run `bindkey | grep '\^I'` it shows me the same thing that you see. Maybe it will be hard for others to reproduce this as a slow computer is needed. Or maybe if there were some way to run Zsh with input provided programmatically, like `echo "man perl\t\t" | zsh`... Frederick