From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: position on changing defaults? Date: Tue, 11 Mar 2008 05:25:27 -0400 Message-ID: References: <200803050637.m256bXL3008361@sallyv1.ics.uci.edu> <87hcfkdhqk.fsf@stupidchicken.com> <87d4q8sq9c.fsf@jurta.org> <8763w0n393.fsf@catnip.gol.com> <87bq5p3x8y.fsf@kfs-lx.rd.rdm> <87wsob5wxa.fsf@kfs-lx.rd.rdm> Reply-To: rms@gnu.org NNTP-Posting-Host: lo.gmane.org Content-Type: text/plain; charset=ISO-8859-15 X-Trace: ger.gmane.org 1205227735 6536 80.91.229.12 (11 Mar 2008 09:28:55 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 11 Mar 2008 09:28:55 +0000 (UTC) Cc: juri@jurta.org, cyd@stupidchicken.com, emacs-devel@gnu.org, monnier@iro.umontreal.ca, miles@gnu.org To: storm@cua.dk (Kim F. Storm) Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Mar 11 10:29:21 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1JZ0nI-00047O-Qw for ged-emacs-devel@m.gmane.org; Tue, 11 Mar 2008 10:29:13 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JZ0mk-0005ts-ED for ged-emacs-devel@m.gmane.org; Tue, 11 Mar 2008 05:28:38 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JZ0jh-0003ab-CH for emacs-devel@gnu.org; Tue, 11 Mar 2008 05:25:29 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JZ0jf-0003ZZ-WD for emacs-devel@gnu.org; Tue, 11 Mar 2008 05:25:28 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JZ0jf-0003ZO-N5 for emacs-devel@gnu.org; Tue, 11 Mar 2008 05:25:27 -0400 Original-Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1JZ0jf-0006Qg-F6 for emacs-devel@gnu.org; Tue, 11 Mar 2008 05:25:27 -0400 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.67) (envelope-from ) id 1JZ0jf-0004Xl-08; Tue, 11 Mar 2008 05:25:27 -0400 In-reply-to: <87wsob5wxa.fsf@kfs-lx.rd.rdm> (storm@cua.dk) X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:92137 Archived-At: > Binding some set of shifted keys to a command that says "run the > equivalent non-shifted character but do this other special thing" > seems better, because you could override that for individual shifted > keys if you wish. The problem is that running something based on the key - rather than on the command bound to that key is a bad road to take. I am having trouble understanding that sentence, but it leads me to suspect we are miscommunicating. What I proposed is a command that we would bind certain shifted keys to. This command would look up the binding of the corresponding non-shifted key and call it. I think that is _less_ "based on the key" than your proposal. if (!NILP (Vshifted_key_hook) && key_shifted_p && !NILP (Vthis_command) && SYMBOLP (Vthis_command) && !NILP (Fget (Vthis_command, Qshift)) && !NILP (Vrun_hooks)) safe_run_hooks (Qshifted_key_hook); This is not horrible, since rebinding the shift key to some other unrelated command will still work. But my solution has the virtue of being less magic. My solution puts it entirely under the control of the key binding of the shifted key, instead of a magic property of shifted keys that causes them to behave differently with the same binding.