From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Per Abrahamsen Newsgroups: gmane.emacs.devel Subject: Re: Customizing key bindings Date: Mon, 09 Sep 2002 17:23:39 +0200 Organization: The Church of Emacs Sender: emacs-devel-admin@gnu.org Message-ID: References: <87ptvttnyo.fsf@emacswiki.org> <200209061736.g86HaDi00352@rum.cs.yale.edu> <874rd1ki2s.fsf_-_@emacswiki.org> <20020907234343.GC26845@gnu.org> <20020909140930.GC18843@gnu.org> NNTP-Posting-Host: localhost.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1031585106 7551 127.0.0.1 (9 Sep 2002 15:25:06 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Mon, 9 Sep 2002 15:25:06 +0000 (UTC) Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 17oQPQ-0001xQ-00 for ; Mon, 09 Sep 2002 17:25:04 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17oQzP-0005ZG-00 for ; Mon, 09 Sep 2002 18:02:15 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10) id 17oQPS-0004Tr-00; Mon, 09 Sep 2002 11:25:06 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10) id 17oQOA-0004Kv-00 for emacs-devel@gnu.org; Mon, 09 Sep 2002 11:23:46 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10) id 17oQO7-0004H8-00 for emacs-devel@gnu.org; Mon, 09 Sep 2002 11:23:45 -0400 Original-Received: from sheridan.dina.kvl.dk ([130.225.40.227]) by monty-python.gnu.org with esmtp (Exim 4.10) id 17oQO7-0004Gm-00 for emacs-devel@gnu.org; Mon, 09 Sep 2002 11:23:43 -0400 Original-Received: from zuse.dina.kvl.dk (zuse.dina.kvl.dk [130.225.40.245]) by sheridan.dina.kvl.dk (8.9.3/8.9.3/Debian 8.9.3-21) with ESMTP id RAA20906 for ; Mon, 9 Sep 2002 17:23:41 +0200 Original-Received: (from abraham@localhost) by zuse.dina.kvl.dk (8.9.3+Sun/8.9.3) id RAA15105; Mon, 9 Sep 2002 17:23:39 +0200 (MEST) X-Authentication-Warning: zuse.dina.kvl.dk: abraham set sender to abraham@dina.kvl.dk using -f Original-To: emacs-devel@gnu.org X-Face: +kRV2]2q}lixHkE{U)mY#+6]{AH=yN~S9@IFiOa@X6?GM|8MBp/ In-Reply-To: <20020909140930.GC18843@gnu.org> (Miles Bader's message of "Mon, 9 Sep 2002 10:09:30 -0400") Original-Lines: 66 User-Agent: Gnus/5.090007 (Oort Gnus v0.07) Emacs/21.1 (sparc-sun-solaris2.8) Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:7754 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:7754 Miles Bader writes: > Er, you omitted my additional definition, which abstracts things a bit more; > does that mean you find a problem with it? That definition was identical, given a suitable definition of "user". > I know you're coming from the point of view where customize is more > important, but please try to understand that many of us wish to at least > _try_ to make both sets of users happy. So do I, which is why I have tried advocating the 100% solution. > I'm not sure what you mean by `duplicate on start-up' ".emacs" contains: (setq foo 'bar) The user say: M-x customize-option foo Customize warns that the option is set "outside customize". If he nonetheless go ahead and saves it, it will have no effect since it will be overwritten by the setq in the next session. This is the whole point of differentiating between "set by customize" and "set outside customize". It is there to help the user from screwing himself, either directly (by saving an option already set in ".emacs"), or indirectly (by customizing an option some other package he loads believe it has the right to change). > if .emacs bindings > are marked as `user bindings' then they won't overwrite the `binding > defaults' for the keys they define; if custom then defines any of the same > bindings, it will overwrite the _user_ bindings, but not the `binding > defaults'. The problem is not setting, but saving the binding. If he saves the binding, it will be set twice on upstart. The final value will depend on whether the "define-key" call is before or after the "custom-set-variables" call. > The benefit of making .emacs bindings `user bindings' is that people can't Should that be "can"? > use `revert to default binding' to get rid of a (non-custom) .emacs binding > and go back to the binding established by the default emacs code, which many > people would find intuive I think. It might be intuitive, but frustrating when they start a new session, and the customization they erased in the previous session magically reappears. >> I probably shouldn't say this, but it will be simpler for XEmacs, >> where keymaps are an opaque type. > > Perhaps in theory, but in practice I think that's not true -- there are so > many wierd twists in the keymap format that no one in their right mind > actually modifies them without using standard keymap functions. As far as I > can see the only real use of the non-opaque keymaps is that it's easy to > print them out and see what's in there... So you can change the format of keymaps, with no fear of breaking user code?