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: Updated proposal for DEL to delete active region Date: Sat, 22 May 2010 11:37:18 -0700 Message-ID: <611EBC8A88E34310966D561E92C6B1B3@us.oracle.com> References: <87ljbbbzl1.fsf@stupidchicken.com> 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 1274553493 4985 80.91.229.12 (22 May 2010 18:38:13 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 22 May 2010 18:38:13 +0000 (UTC) To: "'Chong Yidong'" , Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat May 22 20:38:09 2010 connect(): No such file or directory 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 1OFtaH-0004Lx-VG for ged-emacs-devel@m.gmane.org; Sat, 22 May 2010 20:38:06 +0200 Original-Received: from localhost ([127.0.0.1]:57432 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OFtaH-00070i-9x for ged-emacs-devel@m.gmane.org; Sat, 22 May 2010 14:38:05 -0400 Original-Received: from [140.186.70.92] (port=37994 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OFtaB-0006yw-En for emacs-devel@gnu.org; Sat, 22 May 2010 14:38:01 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OFta9-0006El-Ro for emacs-devel@gnu.org; Sat, 22 May 2010 14:37:59 -0400 Original-Received: from rcsinet10.oracle.com ([148.87.113.121]:49460) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OFta9-0006EU-GI for emacs-devel@gnu.org; Sat, 22 May 2010 14:37:57 -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.1) with ESMTP id o4MIbr2U013347 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 22 May 2010 18:37:55 GMT Original-Received: from acsmt354.oracle.com (acsmt354.oracle.com [141.146.40.154]) by acsinet15.oracle.com (Switch-3.4.2/Switch-3.4.1) with ESMTP id o4MIbpZH023417; Sat, 22 May 2010 18:37:51 GMT Original-Received: from abhmt013.oracle.com by acsmt354.oracle.com with ESMTP id 259847521274553418; Sat, 22 May 2010 11:36:58 -0700 Original-Received: from dradamslap1 (/10.175.220.217) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Sat, 22 May 2010 11:36:58 -0700 X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <87ljbbbzl1.fsf@stupidchicken.com> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5931 Thread-Index: Acr51omUn/vUbIEMREiqwgAC6bTjTQAAIuNg X-Auth-Type: Internal IP X-Source-IP: acsinet15.oracle.com [141.146.126.227] X-CT-RefId: str=0001.0A090207.4BF82484.009C:SCFMA922111,ss=1,fgs=0 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:125079 Archived-At: > + ** New commands delete-forward and delete-backward. > + C-d and DEL are now bound to these commands, instead of delete-char > + and delete-backward-char. So we now break any existing code that counts on `delete-char' or `delete-backward-char' being key-bound. In particular, customizations (e.g. key remappings) involving those commands no longer work. And what about `backward-delete-char-untabify'? To cite Stefan (who got the untabify name slightly wrong): >> But this doesn't seem right: we're not going to have one >> such variable for delete-backward-char, delete-char, >> delete-backward-char-untabify, and the handful of other commands >> that grep "'delete-selection 'supersede" lisp/**/*.el >> indicate will want a similar treatment. So instead of having one such var per command (bad), or one var for all such commands (bad), or using a property on a command symbol such as delsel does (good), we now have two new commands whose implementations hard-code this feature (bad). The new commands and the new option hard-code each other. Flexibility and legacy out the window. Might as well stuff users in a sack, tie it tight, and dump it overboard. > * Incompatible Lisp Changes in Emacs 24.1 > > + ** mouse-region-delete-keys has been removed. > + > + ** delete-backward-char no longer untabifies in overwrite mode. > + The new command `delete-backward', which is intended for interactive > + use, does so. Those might be the only incompatible vanilla-Emacs code changes for this, but they are not the only incompatible changes that can affect Lisp code (including user code). Basic, traditional key bindings are changed. Any Lisp code that expects those is now broken. Why do this by defining new commands and changing existing key bindings? Why not just attach a property to any existing command symbols that you want to become sensitive to this new feature? That's the way `delete-selection-mode' does this sort of thing. Oh yeah, I remember: you guys don't like attaching properties to command symbols... The delsel and thingatpt treatment is a saner approach, IMO. Yes, it's true that symbols are not functions and not all functions are associated with symbols. It's still saner.