From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Lars Magne Ingebrigtsen Newsgroups: gmane.emacs.devel Subject: Re: Making `interactive' conditional Date: Tue, 19 Jan 2016 12:17:14 +0100 Organization: Programmerer Ingebrigtsen Message-ID: References: <87mvszdp6b.fsf@gnus.org> <8737u9kv6f.fsf@russet.org.uk> <87fuy7hdc6.fsf_-_@wanadoo.es> <87bn8vh8q4.fsf@wanadoo.es> <4002fc97-5629-4367-8b8f-48b659fefdce@default> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1453202273 30560 80.91.229.3 (19 Jan 2016 11:17:53 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 19 Jan 2016 11:17:53 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jan 19 12:17:41 2016 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 1aLUI9-00042V-5d for ged-emacs-devel@m.gmane.org; Tue, 19 Jan 2016 12:17:41 +0100 Original-Received: from localhost ([::1]:36259 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aLUI8-0006AG-Il for ged-emacs-devel@m.gmane.org; Tue, 19 Jan 2016 06:17:40 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:36591) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aLUI1-00066B-55 for emacs-devel@gnu.org; Tue, 19 Jan 2016 06:17:36 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aLUHx-0001vV-5P for emacs-devel@gnu.org; Tue, 19 Jan 2016 06:17:33 -0500 Original-Received: from plane.gmane.org ([80.91.229.3]:33795) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aLUHw-0001vR-T3 for emacs-devel@gnu.org; Tue, 19 Jan 2016 06:17:29 -0500 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1aLUHq-0003uR-Mv for emacs-devel@gnu.org; Tue, 19 Jan 2016 12:17:22 +0100 Original-Received: from cm-84.215.1.64.getinternet.no ([84.215.1.64]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 19 Jan 2016 12:17:22 +0100 Original-Received: from larsi by cm-84.215.1.64.getinternet.no with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 19 Jan 2016 12:17:22 +0100 X-Injected-Via-Gmane: http://gmane.org/ Mail-Followup-To: emacs-devel@gnu.org Original-Lines: 54 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: cm-84.215.1.64.getinternet.no Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAMFBMVEXHw7/Qzcv+/v7Z1tP7 +/ri4d6cmJa8uLe0sK+uqqny8e/////+//79/f3q6ef4+PddOTxQAAACLUlEQVQ4jXXTT2jTUBwH 8Ejt/Mt0DAUJHhQpjIBWPewQ2EnHRg9uhw23ILKiTC37A6I4K4peyogYFdRqdKKioEVtkv5Z8m3T q2OgN3EED6IoOBgIwg45zPfS2qZN8g6/X3if/PJefi9hQMa8gCtoGQwN5UTrdA1wOQh2ZANgUBP8 obMs+4OEU/4gY/Va87xaBRFYfeRTYbIk9PFe6OVovOWBypRzuQB8/Xvk2Hv744E124HXNoyNqa3k gRtCp7dH+chwB0vBfII90zEcxl0M9YyGR+39K0M9BErdXF87qfvADZCYmw4fCoWubyOQ5ZX1dIli Rl8k+3+5Zv9+8+4HgQFEnbUVQWPduyolEAeeA3lWFd1A2jeyqIyTCh6Pm97jHrSHO88CWQGS6gZy ep+6xy0oJ61v0UbDmIpM09XZ9Eo60YWlBnTZNCVhXDwTn7d0rg7V4iRQEFB8NtaoyDiJPO9nBtqu lrbTCvVBBrnbHpBR/M5DHfOBgxURxqQHnpoiOfjslAsEJ0VJI8PQJRfEnRQhbVLYhc76vMp0OPkV /d5vfOmvQ5kpVNegy7YPRiwX0Jbkk59JXCflxQY4x6bb2hZ10+6bOP8fckxOpvDiRKptWZWhx+qA CQp3Zu5P7l1ahnEO4GowXL2l9OcS/Ub7L1hWDTQZ7nE0bdcAc00AY3azCrONQG8zQP01k0q/JVCI wTM4+keZoheqbZ8IghEuALJSAOD4XAAg0rKxfcA/d9gB2XOiZQIAAAAASUVORK5CYII= Mail-Copies-To: never User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) Cancel-Lock: sha1:YQ09jSOu9tGNOKmttmBd/WQKNZY= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 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:198350 Archived-At: And to sum up the (basically) two proposals to make `M-x di TAB' not list `diary-chinese-insert-entry', first there is Stefan's "add a global directive and then mark exceptions". This would mean that a mode like diary would say something like (new-magic-declare (mode "diary-" diary-mode)) at (top-level?) somewhere. The few actual non-diary-mode commands would then say (declare (mode nil)) in the command definition. This means that a typical mode would have two lines added to them. This is very attractive. My proposal was to mark all mode-specific commands explicitly: (declare (mode diary-mode)) or (command 'diary-mode "p") This is because I kinda have a distaste for "magic" global settings, and would prefer things to be explicit. The advantage here is that nothing would change except for things that have explicitly been changed. For instance, if I (as a user) has defined a command called `diary-lars', then it would be removed from TAB completion until the user adds a declaration to it. So either minimal churn, but possibly some unexpected fall-out for some users, or more churn, but no unexpected fall-out for anybody. I'm fine with either. I just want my `M-x' to be useful, because I can never remember what keys commands are on, or what they're called, precisely. `M-x diTAB' in my Emacs today lists 180 commands. Eyeballing them, I would say about six of them are things that `M-x diTAB' should be listing, and you'd be able to discover nice commands like `dict', `diary', `dig' and `diff'. (I kinda think the discussion took the normal "one simple functionality improvement" to "let's do ALL THE THINGS" to "well, ALL THE THINGS isn't really practical or what we want" to "well, then LET'S DO NOTHING" turn. :-)) -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no