From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Drew Adams" Newsgroups: gmane.emacs.devel Subject: RE: Key bindings proposal Date: Fri, 13 Aug 2010 17:01:04 -0700 Message-ID: <4D30BBD0FCA04C7180BE5E2A1681E829@us.oracle.com> References: <19534.1494.627000.357123@gargle.gargle.HOWL><176EDAD3B9E54E39870FA3F84A5DDF3C@us.oracle.com><19542.56658.583000.394397@gargle.gargle.HOWL><19544.1015.468000.280770@gargle.gargle.HOWL><19546.30901.687000.971249@gargle.gargle.HOWL><19546.47167.15000.439215@gargle.gargle.HOWL><87fwys7qao.fsf@telefonica.net><87hbj8qvd9.fsf@uwakimon.sk.tsukuba.ac.jp><87iq3k68ye.fsf@stupidchicken.com><874of466rj.fsf@stupidchicken.com><87pqxsbrie.fsf@stupidchicken.com><87k 4nv7t72.fsf@stupidchicken.com><19556.28233.750000.798692@gargle.gargle.HOWL><19557.2279.703000.707743@gargle.gargle.HOWL><4E5480A100044AD58D82F16054CA3CF9@us.oracle.com> <19557.28126.625000.305383@gargle.gargle.HOWL> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1281744102 26848 80.91.229.12 (14 Aug 2010 00:01:42 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 14 Aug 2010 00:01:42 +0000 (UTC) Cc: 'Juanma Barranquero' , 'Chong Yidong' , 'Lennart Borgman' , emacs-devel@gnu.org To: "'Uday S Reddy'" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Aug 14 02:01:40 2010 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.69) (envelope-from ) id 1Ok4Bv-0000sm-4L for ged-emacs-devel@m.gmane.org; Sat, 14 Aug 2010 02:01:39 +0200 Original-Received: from localhost ([127.0.0.1]:36215 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ok4Bu-0003Xn-7C for ged-emacs-devel@m.gmane.org; Fri, 13 Aug 2010 20:01:38 -0400 Original-Received: from [140.186.70.92] (port=42297 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Ok4Bi-0003UZ-56 for emacs-devel@gnu.org; Fri, 13 Aug 2010 20:01:28 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Ok4Bg-00060S-I3 for emacs-devel@gnu.org; Fri, 13 Aug 2010 20:01:25 -0400 Original-Received: from rcsinet10.oracle.com ([148.87.113.121]:22112) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ok4Bg-00060N-9B for emacs-devel@gnu.org; Fri, 13 Aug 2010 20:01:24 -0400 Original-Received: from acsinet15.oracle.com (acsinet15.oracle.com [141.146.126.227]) by rcsinet10.oracle.com (Switch-3.4.2/Switch-3.4.2) with ESMTP id o7E01FbU003395 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 14 Aug 2010 00:01:16 GMT Original-Received: from acsmt355.oracle.com (acsmt355.oracle.com [141.146.40.155]) by acsinet15.oracle.com (Switch-3.4.2/Switch-3.4.1) with ESMTP id o7DJFvwU016722; Sat, 14 Aug 2010 00:01:10 GMT Original-Received: from abhmt019.oracle.com by acsmt354.oracle.com with ESMTP id 495431511281744067; Fri, 13 Aug 2010 17:01:07 -0700 Original-Received: from dradamslap1 (/10.159.218.59) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Fri, 13 Aug 2010 17:01:07 -0700 X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <19557.28126.625000.305383@gargle.gargle.HOWL> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5931 Thread-Index: Acs7AcEMJIrSX1IqSKi7too0zWA6swAAx0cQ X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) 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:128643 Archived-At: > Alt is "hyper" and the windows key is "super". PC keyboards don't > have a "meta". The PC keyboards I've seen do not have a Hyper key or a Super key either - no such key labels. Maybe some PC keyboards do, but the average "everyday" one does not. If you want to call the ALT key "Hyper" and the Window key "Super", feel free. In Emacs, by default we call the ALT key "Meta" (or rather we map the physical key ALT to the logical key Meta). > Therefore, the systems that want a meta-key map one of > these to meta. > > It looks like desktops such as KDE and Gnome map the > windows key as meta, and their users, who presumably contributed to > the Wikipedia article, say "windows key is also known as the > meta-key". Sounds to me more like the KDE and Gnome crowd tried to fit in with Windows and its users to some extent, by mirroring some of its use of ALT for the OS (window mgr). ;-) ALT is a very old key. Its use by Emacs as Meta is nearly as old. Use of ALT by the OS (or window mgr) to do the kinds of things it does for KDE, Gnome, and Windows is much more recent. In the old days, before the Almighty Windows, ALT was not used for such things by the OS or window mgr - at least not the ones I used back then (Control Data, Univac, IBM, VAX/VMS, various UNIXen,...). AFAIK, Windows was the one to spread window-mgr use of ALT far and wide. In this regard, KDE and Gnome are just come-lately ugly ducklings waddling to keep up with their Microsoft mom. If I had to guess (again), I'd guess that KDE & Gnome imitated (shudder!) Windows to some extent, to try to "fit in" with its user base - precisely the kind of argument we've been hearing here ("Gee Dad, everyone else is doing it!"). So to now point to KDE and Gnome as desktops in the GNU/Linux camp that also use ALT somewhat similar to how Windows uses it is a bit disingenuous. > They are not exactly right, but I admire their diligence > in countering the Microsoft corporatization of the everyday keyboard. Hm. You push for Windows-compatible behavior while spearheading the attack on MS. OK. I do too sometimes. To be clear, I have no problem with some of the positive UI ideas introduced by Windows (i.e. by MS, although often originally by Xerox and others). I've tried to add some such features to Emacs myself. But it does sound curious that you trumpet KDE/Gnome's "countering of MS" while defending their imitating Windows' use of ALT. And you have the cart before the horse. The PC keyboard does not risk _becoming_ MS-corporatized. Your "everyday keyboard" was _engendered_ by Microsoft and its partner at the time, IBM. You don't need to save the PC keyboard from MS; you need to thank or blame MS for it in the first place. The PC keyboard is the ubiquitous, everyday keyboard precisely _because_ of MS and Windows and PCs. Use of PC keyboards with anything other than MS (DOS and then Windows) is a recent and still largely marginal development, albeit welcome. > Such spirit seems to be sadly lacking on this mailing list :-( I really think you're out there on a limb sawing strong, if you think that this mailing list is lacking in "diligence in countering the Microsoft corporatization of the everyday keyboard" (or countering Microsoft tout court). You want Emacs to roll over and adapt to MS's use of ALT, but somehow the rest of us are caving in to MS? What am I missing? > > I would even guess that most Windows users never use the ALT key in > > a Windows-specific way (except for CONTROL-ALT-DELETE) and never use > > the Window key at all. For one thing, most are not programmers > > (another guess), and most interact with Windows using the mouse most > > of the time, not the keyboard. And my guess is that _very_ few > > (proportionally) users of Windows use menu accelerators. > > I think the issues of "most Windows users" are not relevant here. > This is emacs-developers mailing list after all. We are only > interested in Windows users that also use Emacs. And, these users can > learn key bindings if they think they are useful. OK, so what do we know about Windows users who are already Emacs users? What proportion of _them_ use menu accelerators or other Windows-specific uses of ALT? Do you know? Personally, I do not limit the set of potential Emacs users to those who already use it. And I do not limit it to programmers either. (I don't claim I am typical in this regard.) I see no reason why other, non-programmer users of Windows might not become Emacs users. There are some already. > > Being able to use menu accelerators or use the Window key as Meta > > (or as Control or Super or Hyper or...) as an _optional_ behavior is > > one thing. AFAIK, no one has objected to that, so if that is all > > you are arguing about then the story should be over and done. > > That is indeed what we are arguing about, because Yidong has said (on > 8 Aug): > > > Even for non-default usage, putting Emacs in charge of the > > Windows key seems unacceptable. This is the domain of the > > operating system. Then you are arguing only with Yidong. I have not seen anyone argue that Emacs should not offer such an option. On the contrary, I've seen several people who disagree with many of your points agree that there is _no_ problem in principle with Emacs offering such an option. I'm one of them. The devil might be in the details of design or implementation, however - dunno. If the implementation were trivial, then there would be no hullaballoo. Suppose that you could send in a simple Lisp minor mode that let users use Windows accelerators or use the Window key for Meta. Piece of cake. I doubt that even Yidong would object in that case (but I do not know that). But much more than that is involved apparently, and I suspect that might be where Yidong's resistance in this regard is coming from. If the ability to provide this as an option involves reworking lots of important C code that no one understands clearly, then that reworking had better be careful, correct, and worth it. > Both Lennart and I have clarified many times that we are not arguing > about defaults. We are arguing about capabilities. Emacs, at the > moment, does not have the capability to treat the windows key as > meta. Lennart knows how to do it, and he can possibly be persuaded to > provide a patch, but welcoming his idea a bit more warmly on this > mailing list would be a good first step. I, for one, do welcome Lennart's idea warmly, if the idea is to provide such a thing as an option. Just as I warmly welcome his idea of letting Emacs users take advantage of Windows menu accelerators. (I adapted my own Lisp library lacarte.el to fit that feature from his library menuacc.el many years ago.) I've said this several times now. And I really do not see _any_ opposition to such an idea. But the code providing such optional behavior needs to be clear - and truly optional. No one is going to immediately adopt a wholesale rewrite of lots of basic Emacs C code without it being clear and complete and tested, and without the pros and cons (of the implementation) being investigated closely. Above all, the behavior needs to be truly optional. With the option turned off by default, the code changes, whatever they are, need to amount to a no-op. I have not followed the implementation discussion, but from what I gathered things are not so clear. Others will have to judge that, not I. > > And ALT as Meta in Emacs is as old as the hills and as common as > > their wildflowers. What does Wikipedia say about that? Does it > > tell you that using ALT as Meta "is *frequently* done" in Emacs? > > Come on. Meta keys existed before Bill Gates learnt to program, and > Emacs has existed long before the PC keyboards came on the scene. Precisely. If by "Meta" you mean using ALT as a Meta key. Yes, that predates Bill and PCs. That was the point of the text you quoted. It is surely a lot more "*frequently* done" to use ALT than the Window key for Meta. > Treating ALT as meta on PC keyboards was a natural choice because they > were free modifier keys. Nobody is faulting Emacs for having done > that. But, the current position is that enough keyboards have the > windows/super key and Microsoft has unlocked it on Windows, according > to Lennart. And, using the windows/super key as meta provides > significant advantages in enabling keyboard access to the Emacs > menubar. Having any such key available provides significant advantages, no matter what behavior is mapped to it. I'm in favor of letting Emacs users bind the Window key to whatever they want. If it is "unlocked" then it should be easy for Emacs users to bind it to whatever they want, no? And if it is _not_ easy to do that out of the box, then I, for one, welcome code that will help users do that. Being able to bind the Window key to Meta, as one possibility, one option, can only be a positive feature - IMO at least. But the cost (e.g. implementation) has to be worth it. I do not see opposition to the _idea_ of such a feature. I do see reluctance to simply gulp down whatever brew Lennart has on tap. Again, I cannot speak to the implementation. Personally I am in favor of such an option, _other things being equal_. And that is so even though I will no doubt never use such an option myself. I like Emacs to offer everything to everyone - provided the cost is reasonable.