From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Daniel Colascione Newsgroups: gmane.emacs.devel Subject: A more modest proposal (Was: Emacs learning curve) Date: Thu, 22 Jul 2010 23:18:27 -0700 Organization: Censorship Research Center Message-ID: <4C493433.4010709@censorshipresearch.org> References: <4C3B6A8A.80105@gmx.de> <87wrt0e81n.fsf@telefonica.net> <62E9699C07054418AB66F9C5FCB54E5C@us.oracle.com> <87sk3oe3la.fsf@telefonica.net> <1154D96E7D2F401D849266F359E44BB9@us.oracle.com> <87ocecdzou.fsf@telefonica.net> <2256C17F740A425884AD551DE7758056@us.oracle.com> <87fwzodqqm.fsf@telefonica.net> <5138CDF30B2D4B778F948015614DA7BC@us.oracle.com> <87iq4ijtdy.fsf@lola.goethe.zz> <87bpa7uu1e.fsf@kanis.fr> <877hkv2hco.fsf@catnip.gol.com> <87iq4e593w.fsf@kanis.fr> <87lj9ayp2f.fsf@stupidchicken.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1279866381 13919 80.91.229.12 (23 Jul 2010 06:26:21 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 23 Jul 2010 06:26:21 +0000 (UTC) Cc: Chong Yidong To: Emacs development discussions Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jul 23 08:26:20 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 1OcBi6-0006Mb-4e for ged-emacs-devel@m.gmane.org; Fri, 23 Jul 2010 08:26:18 +0200 Original-Received: from localhost ([127.0.0.1]:53593 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OcBaq-0006lM-TR for ged-emacs-devel@m.gmane.org; Fri, 23 Jul 2010 02:18:48 -0400 Original-Received: from [140.186.70.92] (port=34110 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OcBag-0006jX-4F for emacs-devel@gnu.org; Fri, 23 Jul 2010 02:18:39 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OcBab-0002gk-TQ for emacs-devel@gnu.org; Fri, 23 Jul 2010 02:18:38 -0400 Original-Received: from haystack.austinheap.com ([70.32.98.68]:47497 helo=haystacknetwork.com) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OcBab-0002fx-Po for emacs-devel@gnu.org; Fri, 23 Jul 2010 02:18:33 -0400 User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.7) Gecko/20100713 Thunderbird/3.1.1 In-Reply-To: <87lj9ayp2f.fsf@stupidchicken.com> X-Enigmail-Version: 1.1.1 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. 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:127671 Archived-At: On 7/17/10 10:51 AM, Chong Yidong wrote: > No, having CUA mode on by default is off the table. Agreed, but there are a few less disruptive ideas that are still worth considering: 1) cua-selection-mode, or its moral equivalent cua-selection-mode doesn't play games C-c and C-x or interfere with any normal Emacs keybinding, but it does give users bindings for control-insert, shift-insert, and shift-delete. These keystrokes perform "copy", "paste", and "cut", respectively, and the same keystrokes do similar things in other CUA applications --- it's be easy to tell users, "unlike most programs, Emacs does not use C-c, C-x, and C-v for copy and paste: Emacs was old when these bindings were new, and they're used for something very different in Emacs. But Emacs *does* support using Control-Insert, Shift-Delete, and Shift-Insert for copy, cut, and paste. So do most other programs; learn to use these keys instead." 2) More descriptive minibuffer messages for key chords Right now, pressing C-c by itself simply displays "C-c -"; C-x is similar. Novice users would benefit if this message read something like "C-c - " instead so that they notice faster that C-c and C-x are very different in Emacs. 3) Natural binding for C-z Bind C-z by default to this function: (defun undo-or-suspend-emacs () "Undo if we're in a windowing system, or suspend emacs if we're in a TTY" (interactive) (setq this-command (if window-system 'undo 'suspend-emacs)) (call-interactively this-command)) Adopting this binding will ensure Emacs has the most natural and common behavior on C-z for a given environment. Besides, not much of value is lost: why bother with C-z in a windowing system when the system probably provides its own idiomatic way of minimizing a window?