From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: 4 minor suggestions for files.el Date: Mon, 05 May 2003 10:32:58 -0400 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: References: <200304142022.h3EKMHRu026814@rum.cs.yale.edu> <200304172139.h3HLdBvK009948@rum.cs.yale.edu> <1050672259.633.14.camel@localhost> <200304292107.h3TL7Kl9007427@rum.cs.yale.edu> Reply-To: rms@gnu.org NNTP-Posting-Host: main.gmane.org X-Trace: main.gmane.org 1052146993 5363 80.91.224.249 (5 May 2003 15:03:13 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Mon, 5 May 2003 15:03:13 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Mon May 05 17:03:03 2003 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 19ChBM-00081J-00 for ; Mon, 05 May 2003 16:43:08 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 19ChEO-0001mD-00 for ; Mon, 05 May 2003 16:46:17 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 19ChAy-0002ka-00 for emacs-devel@quimby.gnus.org; Mon, 05 May 2003 10:42:44 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10.13) id 19Ch7W-00014P-00 for emacs-devel@gnu.org; Mon, 05 May 2003 10:39:10 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10.13) id 19Ch5W-000816-00 for emacs-devel@gnu.org; Mon, 05 May 2003 10:37:06 -0400 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 19Ch1X-0005cM-00 for emacs-devel@gnu.org; Mon, 05 May 2003 10:32:59 -0400 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.10) id 19Ch1W-0000qu-00; Mon, 05 May 2003 10:32:58 -0400 Original-To: "Stefan Monnier" In-reply-to: <200304292107.h3TL7Kl9007427@rum.cs.yale.edu> (monnier+gnu/emacs@rum.cs.yale.edu) Original-cc: spiegel@gnu.org Original-cc: monnier+gnu/emacs@rum.cs.yale.edu X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1b5 Precedence: list List-Id: Emacs development discussions. List-Help: List-Post: List-Subscribe: , List-Archive: List-Unsubscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:13695 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:13695 > I think that the correct way for check-in and update to interact with > M-x undo is to transpose the old undo list somehow to the buffer as it > has been updated. That's what undo-in-region does. undo-in-region does a special case of this. It does not handle the generality that would be needed for this, and I think that would require new methods. > Likewise, if I edit the buffer and then do a CVS update, I should > then be able to undo the edit I made, but not the changes made by > the CVS update. Why not ? When you do a CVS update, you don't know what changes are getting merged in. You often don't see them; they are in parts of the file where you have not been working. If a single undo operation would undo all of them, you would lose them and not know what you are losing. That is risky and not the right interface. In order for undo in Emacs to operate in a predictable and reliable way, it should undo the changes that you made with your editing. If you want to undo the changes that came from CVS, that should be a separate command, designed to coordinate with CVS. What I have in mind is a command to take out the changes that were made between a certain pair of versions.