From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.devel Subject: Re: [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Date: Wed, 2 Jun 2021 13:40:51 +0300 Message-ID: <2dd59f1c-1d4d-a7d7-fae5-d9ca9b5c90c2@yandex.ru> References: <87pmxhb1rs.fsf@gmail.com> <23510125-37b9-e87e-3590-5322f44772ce@daniel-mendler.de> <87y2c5nhsr.fsf@mail.linkov.net> <87h7irss50.fsf@mail.linkov.net> <43d1599e-2ba9-2efb-45c3-76c67d29a69d@daniel-mendler.de> <87tumrgqrb.fsf@gmail.com> <87tumq92pe.fsf@mail.linkov.net> <87lf82g10g.fsf@gmail.com> <87y2c24lww.fsf@mail.linkov.net> <871r9t2lsy.fsf@mail.linkov.net> <22880197-6d05-c821-2c58-328ed3cfc02e@daniel-mendler.de> <87eedruui3.fsf@gmail.com> <8dd915fe-fe67-2a45-67ff-8aaa3e9b9aca@daniel-mendler.de> <878s3zuq47.fsf@gmail.com> <09f2a253-84ba-5cfd-552e-0b89109864a5@daniel-mendler.de> <875yyxaoxp.fsf@gmail.com> <871r9laj6a.fsf@gmail.com> <1a183c3b.2f2f.179cb27f64c.Coremail.tumashu@163.com> <87lf7s7lli.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="27289"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 Cc: Daniel Mendler , "emacs-devel@gnu.org" , Stefan Monnier , Juri Linkov To: =?UTF-8?B?Sm/Do28gVMOhdm9yYQ==?= , tumashu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Jun 02 12:41:53 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1loOJt-0006zL-4s for ged-emacs-devel@m.gmane-mx.org; Wed, 02 Jun 2021 12:41:53 +0200 Original-Received: from localhost ([::1]:37776 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1loOJs-00065d-78 for ged-emacs-devel@m.gmane-mx.org; Wed, 02 Jun 2021 06:41:52 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:53174) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1loOJ0-0005Ez-0H for emacs-devel@gnu.org; Wed, 02 Jun 2021 06:40:58 -0400 Original-Received: from mail-wr1-x432.google.com ([2a00:1450:4864:20::432]:44614) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1loOIw-0000GW-SS for emacs-devel@gnu.org; Wed, 02 Jun 2021 06:40:57 -0400 Original-Received: by mail-wr1-x432.google.com with SMTP id f2so1755541wri.11 for ; Wed, 02 Jun 2021 03:40:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=uKd6kIM63uHBd87lQIrQhmIJiP2ULMp1gxkLlZx3n28=; b=FVDv15hOvW4yDGncuWIS1FYIc01zHS5Jikx7AWTADSFT3kEYGrCw6bvVRc0c2ZsIA/ AS6phSr+eOidR6znXjisMFOWC0W94WzEhNhJ6swgrjrUv80qoEt6xz+pxMjHEXAu1Cvd LMk0tNf1+RUQDtEaCRqH2ed71iUZaSDlgGgDujsSlsSbr94CxacXHtN0qasC5bGoKQr9 2cCz926QTiUthRszWLPwO8qpAI6vkNTCzwB/kd6rg5+7fXJiziMQiFjUwimA7kSVEQTN 9JNDS+XCgztyvvamj0MP8mLH0Sx3YSmdyARRQSy81o4c7AvB64OyQXRIRPocoptwXHql 6Hgg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:subject:to:cc:references:from:message-id :date:user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=uKd6kIM63uHBd87lQIrQhmIJiP2ULMp1gxkLlZx3n28=; b=MdeHtcr52qOTz7U3lcqlHXTseplc3yialmOxrybjCSOCbhNakLcXvvZNQGk1LsFXLS HfM8YkNWQzK26koYUBXBtzpyZV1IGpkf7cepCRao42xY9QsHJMbjdJjMIFYUFHsJR/h1 f2nkcWt3rfUKe7LoxejfmVWowAnLKaf+rZESAchL65PkmvXG05WEz37fbDddnADkncBT n0F0Hd23CI3HA98DCdXp2krUo0idfQ72jjPYQrdNqLw4Ixe3pWlpnAMi99x1mRNQgZXT euuPQdAOmSnfJg/DgyRNgfUGCEMq0YaZwzAF1v5pnYLdR7onndn5wLZOonMI6V091LSD eqeQ== X-Gm-Message-State: AOAM532NIqUGwjYe6uLkdH3xqhXsSQllIChnHssYEq85V4HUsE/1bPdA k2QSLMJOfaAsj2LW9bafGvE= X-Google-Smtp-Source: ABdhPJz5n/a5IRf+wt6MHne7fdI5gZCtr71NgnsRbHc44i1wqPxxd9OZ4Ja2NuXTY7uWdTgrKj2kPw== X-Received: by 2002:a05:6000:151:: with SMTP id r17mr12568709wrx.151.1622630453532; Wed, 02 Jun 2021 03:40:53 -0700 (PDT) Original-Received: from [192.168.0.6] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id s2sm2260302wmc.21.2021.06.02.03.40.52 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 02 Jun 2021 03:40:52 -0700 (PDT) In-Reply-To: <87lf7s7lli.fsf@gmail.com> Content-Language: en-US Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=raaahh@gmail.com; helo=mail-wr1-x432.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.248, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, NICE_REPLY_A=-0.613, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:270275 Archived-At: On 02.06.2021 10:48, João Távora wrote: > Would you rather if "flickered" to "?/?" ? Or would > you rather redisplay is inhibited until the totals are known? Other > completers may use this last option, but I personally dislike sluggish > typing response. You can try following the recent change in Company for asynchronous backends, where we do redisplay soon after the user typed, briefly showing "outdated" completions with the new input. And then updating it as soon as the new result is computed. icomplete's implementation is this approach should be a lot easier to do, too. This seems to work okay: diff --git a/lisp/icomplete.el b/lisp/icomplete.el index 91bbb60013..29138e089e 100644 --- a/lisp/icomplete.el +++ b/lisp/icomplete.el @@ -154,7 +154,8 @@ icomplete--initial-input (defun icomplete-pre-command-hook () (let ((non-essential t)) - (icomplete-tidy))) + ;; (icomplete-tidy) + )) (defun icomplete-post-command-hook () (let ((non-essential t)) ;E.g. don't prompt for password! I would also suggest lowering the default of icomplete-compute-delay to 0.1 or even 0.05. With 300ms delay, the new behavior does look a little weird. > And the whole constant updating thing is about > "flickering" anyway. Experience shows the above is a lot less jarring then hiding all completions ("blinking" with the empty background) and then showing them again.