From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Michael Albinus Newsgroups: gmane.emacs.devel Subject: Re: [Emacs-diffs] trunk r113958: * minibuffer.el (completion--sifn-requote): Bind `non-essential'. Date: Thu, 22 Aug 2013 11:50:46 +0200 Message-ID: References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1377165064 25590 80.91.229.3 (22 Aug 2013 09:51:04 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 22 Aug 2013 09:51:04 +0000 (UTC) Cc: emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Aug 22 11:51:07 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1VCRXk-0005aA-7N for ged-emacs-devel@m.gmane.org; Thu, 22 Aug 2013 11:51:04 +0200 Original-Received: from localhost ([::1]:58587 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VCRXj-0006oW-If for ged-emacs-devel@m.gmane.org; Thu, 22 Aug 2013 05:51:03 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:32892) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VCRXc-0006nI-05 for emacs-devel@gnu.org; Thu, 22 Aug 2013 05:51:01 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VCRXW-0007a8-Q8 for emacs-devel@gnu.org; Thu, 22 Aug 2013 05:50:55 -0400 Original-Received: from mout.gmx.net ([212.227.15.15]:56470) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VCRXW-0007Zr-9X for emacs-devel@gnu.org; Thu, 22 Aug 2013 05:50:50 -0400 Original-Received: from uw001237 ([79.193.181.203]) by mail.gmx.com (mrgmx001) with ESMTPA (Nemesis) id 0LzKmP-1W7Awg2QEr-014RNP for ; Thu, 22 Aug 2013 11:50:48 +0200 In-Reply-To: (Stefan Monnier's message of "Wed, 21 Aug 2013 16:08:40 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) X-Provags-ID: V03:K0:A50cXmVDyD79t3zdZ9fnxcSDsBOfgmOJ2Mw15XI881o8/PJTYUv zW5c6oZ/DXIk2gEc5O4OeX3i/PmI06rDNx9ENOkyl/ZL2Q63gWaT1g1VhPjjTfwjOpglvn0 YtdBNVW0R6fIkHBVcsHevNLRafxl7TzS9cqArOTj2IGyF//hwHvR9E5c7DxOKkqiHI8Gb9R G7Fbptnq40oWKQPwHtqNg== X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-Received-From: 212.227.15.15 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:162973 Archived-At: Stefan Monnier writes: >>> My point is simply that the backtrace you show does not seem to perform >>> non-essential work, so binding non-essential is not right. It is >>> computing the completion of /ssh:vagrant@192.168.10.2:/ (not quite sure >>> why, since the backtrace doesn't go further up). >> The whole backtrace is in >> >> (the second backtrace in this message). > > So we're in the middle of minibuffer--complete-and-exit which calls > try-completion. That's very definitely not "non-essential". Not `minibuffer--complete-and-exit'. But the completion functions I would call non-essential. As said, I don't know too much about completion code in minibuffer.el (and the functions' docstrings don't help much). Maybe `completion--sifn-requote' is not suited to bind `non-essential'. But there are other `completion--*' functions in the backtrace, up to `minibuffer--complete-and-exit'. >>> At the same time I wonder why (substitute-in-file-name >>> "/ssh:vagrant@192.168.10.") should signal an error: it looks like an >>> incomplete filename, so we don't know yet whether it'll really be an >>> error or not. >> For Tramp, it is a complete filename wrt syntax. "ssh" is recognised as >> host name, which is regarded as an error since we had decided this some >> weeks ago. See . > > Yes, it could be a "complete but ambiguous/erroneous" file name, but it > could also be a "not yet complete file name". So maybe, if there's no > ":" nor "/" after "/ssh:", we should refrain from signaling an error. Hmm. Why not signalling a pilot error, when a user applies "C-x f /sudo: RET"? It's not so different from the case the user has described in Bug#13900, which was the trigger to introduce the rule "host name != any method name". >> Setting `non-essential' to t is a mean to tell Tramp not to check this. > > I do know that, but that's just an ugly hack here, since the code is not > non-essential. I don't know which further plans you have with `non-essential'. But its setting to t is acknowledged so far only in ange-ftp and Tramp. And it is bound to t only in icomplete.el, ido.el and rfn-eshadow.el, as yet. For exactly that reason: "please relax your tests and connection actions when performing file name completion or minibuffer decoration". That doesn't sound ugly to me. > Stefan Best regards, Michael.