From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.devel Subject: RE: What is the most useful potential feature which Emacs lacks? A: Autocompletion Date: Wed, 3 Jun 2020 13:36:24 -0700 (PDT) Message-ID: <5dc33388-4c06-4373-8e94-fc1fcaf92c18@default> References: <92c19682bbe429234e6c7c486ad05799476d3e18.camel@yandex.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="21882"; mail-complaints-to="usenet@ciao.gmane.io" To: Konstantin Kharlamov , ndame , Emacs developers Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Jun 03 22:39:10 2020 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 1jgaAH-0005av-Cx for ged-emacs-devel@m.gmane-mx.org; Wed, 03 Jun 2020 22:39:09 +0200 Original-Received: from localhost ([::1]:60556 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jgaAG-0003Wr-Fh for ged-emacs-devel@m.gmane-mx.org; Wed, 03 Jun 2020 16:39:08 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:41580) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jga9j-00032U-9e for emacs-devel@gnu.org; Wed, 03 Jun 2020 16:38:35 -0400 Original-Received: from aserp2120.oracle.com ([141.146.126.78]:50952) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jga9i-0003Na-32 for emacs-devel@gnu.org; Wed, 03 Jun 2020 16:38:34 -0400 Original-Received: from pps.filterd (aserp2120.oracle.com [127.0.0.1]) by aserp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 053KWUAH057171; Wed, 3 Jun 2020 20:38:32 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : subject : references : in-reply-to : content-type : content-transfer-encoding; s=corp-2020-01-29; bh=+LUewGplAycBO+0L8v6PMutn5O6cq9lP6W37aYCRAHU=; b=RMvfyfALN64vMVUistOsQ+lg0NYKPXhP0z/kPW3s7U7r/sK6RY66Owx6MseBfaKdpgNd SxcCWS2JuTvgpLzjjGMeMRZy4ytNwBYG0I6LzrBKZ2TBZSEe+zsfZZSCvuEfKi/bSQD6 ulLr6NzJy71wgdTfWkTuciqxkw5syKEm+R2OaLagsXlRbEUmHVhS+leJUE8BC8258XY/ DwDz6TgN6pyWS9MRyjHzeF55A0ruELenNmkBw49OqsoOXM/t6fHWWKcwvqEzl2cLbJu1 LqQqlFf+z+B8dWYWma3itnlcP2Zr7VVhKFLAJRRTs18yM+6ygMgjbVkz7uEIOIM36MS0 0A== Original-Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79]) by aserp2120.oracle.com with ESMTP id 31bfemb9xy-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Wed, 03 Jun 2020 20:38:32 +0000 Original-Received: from pps.filterd (userp3020.oracle.com [127.0.0.1]) by userp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 053KY31l019806; Wed, 3 Jun 2020 20:36:31 GMT Original-Received: from userv0122.oracle.com (userv0122.oracle.com [156.151.31.75]) by userp3020.oracle.com with ESMTP id 31dju3udax-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 03 Jun 2020 20:36:31 +0000 Original-Received: from abhmp0019.oracle.com (abhmp0019.oracle.com [141.146.116.25]) by userv0122.oracle.com (8.14.4/8.14.4) with ESMTP id 053KaSOt006276; Wed, 3 Jun 2020 20:36:30 GMT In-Reply-To: <92c19682bbe429234e6c7c486ad05799476d3e18.camel@yandex.ru> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.5005.0 (x86)] X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9641 signatures=668686 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 mlxlogscore=999 phishscore=0 malwarescore=0 mlxscore=0 adultscore=0 bulkscore=0 suspectscore=1 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2004280000 definitions=main-2006030156 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9641 signatures=668686 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 suspectscore=1 mlxlogscore=999 priorityscore=1501 bulkscore=0 phishscore=0 clxscore=1015 impostorscore=0 adultscore=0 spamscore=0 mlxscore=0 lowpriorityscore=0 cotscore=-2147483648 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2004280000 definitions=main-2006030156 Received-SPF: pass client-ip=141.146.126.78; envelope-from=drew.adams@oracle.com; helo=aserp2120.oracle.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/06/03 16:38:32 X-ACL-Warn: Detected OS = Linux 3.1-3.10 [fuzzy] X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN 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:251820 Archived-At: > I don't know if I'm misreading it, but from what I read about > this mode, it seems to only provide completions for minibuffer > commands. Undoubtedly useful feature, and for this usecase I already > use ido-mode with fuzzy matches. But in my original text I was rather > referring to autocompletion when you write code/text, i.e. in buffers > different from the minibuffer. You did not misread it. I should have made that clear. But I skipped reading the thread, so I didn't realize that's all the question is about. Icicles does support buffer-text completion here and there, but as you say, most of what's involved is about completion using the minibuffer - `completing-read', `read-file-name', etc. Even the (limited) Icicles support for buffer-text completion uses the minibuffer as long as there are multiple matching candidates, however. So in those cases you can take advantage of the usual Icicles features. You can think of such cases as popping up a list of autocomplete choices. The list is shown in `*Completions*' though, not in your usual menu form. This the doc topic that talks about Icicles buffer-text completion: https://www.emacswiki.org/emacs/Icicles_-_Completion_in_Other_Buffers Yes, this is a major lacuna. I haven't bothered to provide a general Icicles solution to buffer-text completion based on, say, `completion-at-point'. But if I did get around to doing that I'd no doubt tie in the usual Icicles completion behavior, as I did for those few special cases, but in a more general way. IOW, you'd still use the minibuffer when multiple candidates match both (a) the buffer text to be completed and (b) any minibuffer input. You'd still be able to progressively complete with multiple input patterns. You'd still be able to sort and change sort orders on the fly. And so on.