From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Stephen Leake Newsgroups: gmane.emacs.devel Subject: project--completing-read-strict breaks ada-mode project completion table Date: Wed, 16 Jan 2019 11:02:46 -0800 Message-ID: <86sgxso27d.fsf@stephe-leake.org> References: <20180922154639.23195.66360@vcs0.savannah.gnu.org> <20180922154640.9D58220310@vcs0.savannah.gnu.org> <54108dbc-9d12-06ff-3f1d-151118e9b234@yandex.ru> <4e729d1e-bb31-455f-fd44-e99ae5a6b9fa@yandex.ru> <86zhs5r9lr.fsf_-_@stephe-leake.org> <08de4d90-d678-0524-9356-f9a3515bf0c4@yandex.ru> <86a7k2rabi.fsf@stephe-leake.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1547665302 23719 195.159.176.226 (16 Jan 2019 19:01:42 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 16 Jan 2019 19:01:42 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.90 (windows-nt) To: emacs-devel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Jan 16 20:01:38 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gjqRU-00062s-Vc for ged-emacs-devel@m.gmane.org; Wed, 16 Jan 2019 20:01:37 +0100 Original-Received: from localhost ([127.0.0.1]:51762 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gjqTc-00059K-3s for ged-emacs-devel@m.gmane.org; Wed, 16 Jan 2019 14:03:48 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:50629) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gjqSp-00056w-0D for emacs-devel@gnu.org; Wed, 16 Jan 2019 14:03:00 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gjqSn-0005Rz-2K for emacs-devel@gnu.org; Wed, 16 Jan 2019 14:02:58 -0500 Original-Received: from smtp65.ord1d.emailsrvr.com ([184.106.54.65]:44650) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gjqSk-0005Jz-8l for emacs-devel@gnu.org; Wed, 16 Jan 2019 14:02:55 -0500 Original-Received: from smtp17.relay.ord1d.emailsrvr.com (localhost [127.0.0.1]) by smtp17.relay.ord1d.emailsrvr.com (SMTP Server) with ESMTP id 55001203D5 for ; Wed, 16 Jan 2019 14:02:49 -0500 (EST) X-Auth-ID: board-president@tomahawk-creek-hoa.com Original-Received: by smtp17.relay.ord1d.emailsrvr.com (Authenticated sender: board-president-AT-tomahawk-creek-hoa.com) with ESMTPSA id 06B7F203D9 for ; Wed, 16 Jan 2019 14:02:48 -0500 (EST) X-Sender-Id: board-president@tomahawk-creek-hoa.com Original-Received: from Takver4 ([UNAVAILABLE]. [76.77.182.20]) (using TLSv1.2 with cipher AES256-GCM-SHA384) by 0.0.0.0:25 (trex/5.7.12); Wed, 16 Jan 2019 14:02:49 -0500 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 184.106.54.65 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:232403 Archived-At: Commit 8f9d93f3054 (Dmitry Gutov 2018-12-29 415) breaks my ada-mode completion table. That commit modifies the completion table by first calling the actual completion table to get all the file names, then removing any common prefix directory, then calling completing read with that file list. This violates assumptions made within the ada-mode completion table, and breaks the expected completion style - it requires typing the remaining directory names first; the ada-mode completion table allows completing on the base name only. I can understand the motivation behind removing common prefixes, but the proper way to do that is to implement a completion style and/or table that does that, and make that style/table the default for projects. The ada-mode completion style and table eliminates all directories from the visible completion string, except the minimum needed to make the string unique. I think this is a better solution to the problem; project.el should allow the user to choose their prefered solution, by choosing a completion style and table. To make my source available for experimenting with, I'd like to create several new ELPA packages; I sent a separate email about that. -- -- Stephe