From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Michael Heerdegen Newsgroups: gmane.emacs.devel Subject: Re: [ELPA] propose to add vundo.el to ELPA Date: Tue, 05 Apr 2022 05:41:47 +0200 Message-ID: <875ynonqmc.fsf@web.de> References: <15F35A7C-7A15-4B1E-8959-612C10166242@gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="36688"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) To: emacs-devel@gnu.org Cancel-Lock: sha1:xIKiQQH8r8Ke+tqm+msXVclYESM= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Apr 05 05:42:52 2022 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nba5k-0009RN-Au for ged-emacs-devel@m.gmane-mx.org; Tue, 05 Apr 2022 05:42:52 +0200 Original-Received: from localhost ([::1]:56672 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nba5j-0006tb-2F for ged-emacs-devel@m.gmane-mx.org; Mon, 04 Apr 2022 23:42:51 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:59974) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nba4q-00066I-7x for emacs-devel@gnu.org; Mon, 04 Apr 2022 23:41:56 -0400 Original-Received: from ciao.gmane.io ([116.202.254.214]:37186) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nba4o-0002x5-JS for emacs-devel@gnu.org; Mon, 04 Apr 2022 23:41:55 -0400 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1nba4m-0008Aw-Of for emacs-devel@gnu.org; Tue, 05 Apr 2022 05:41:52 +0200 X-Injected-Via-Gmane: http://gmane.org/ Received-SPF: pass client-ip=116.202.254.214; envelope-from=ged-emacs-devel@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -13 X-Spam_score: -1.4 X-Spam_bar: - X-Spam_report: (-1.4 / 5.0 requ) BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.249, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:287788 Archived-At: --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Yuan Fu writes: > I wrote vundo.el a while ago and it’s now quite stable. It displays > the undo history in a tree form like undo-tree. Unlike undo-tree, > vundo doesn’t require you to replace undo commands and track changes > itself, rather it generates the tree fresh from ‘buffer-undo-list’. Do > you think vundo would be a good addition to ELPA? Tried it out shortly. Looks very useful and cool and easy to use and well done. Some minor comments: - Maybe mention the arrow keys in the introduction (that they work)? - In undo-tree, one had to select a different branch before one could "walk" into it. For vundo it's the other way round: you first have to select the first element of the active branch, after the root, and only after that you can activate a different (sibling) branch (or did undo-tree add virtual roots or so?). Dunno what interface approach I like more. But because I had tried undo-tree, your approach feels unfamiliar. Dunno how others see that (AFAIR, undo-tree felt strange in the same aspect when I had tried it first, too=. - Question: here in the comment: ;; update. Vundo catches up the next time you invoke any command: ;; instead of performing that command, it updates the tree. do you mean "next time you invoke any _vundo_ command"? Otherwise I don't understand the sentence - buffer changes happen via commands - so what command actually do update? - And here are some typos I think (without warranty, I'm not perfectly speaking English): --=-=-= Content-Type: text/x-diff; charset=utf-8 Content-Disposition: inline; filename=0001-Some-typos.patch Content-Transfer-Encoding: 8bit >From 93248a5f359153ec272871dbbe41a5a450c9ef87 Mon Sep 17 00:00:00 2001 From: Michael Heerdegen Date: Tue, 5 Apr 2022 05:32:42 +0200 Subject: [PATCH] Some typos --- vundo.el | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/vundo.el b/vundo.el index 27a6368..f16df2e 100644 --- a/vundo.el +++ b/vundo.el @@ -27,7 +27,7 @@ ;;; Commentary: ;; ;; To use vundo, type M-x vundo RET in the buffer you want to undo. -;; A undo tree buffer should pop up. To move around, type: +;; An undo tree buffer should pop up. To move around, type: ;; ;; f to go forward ;; b to go backward @@ -36,7 +36,7 @@ ;; q to quit, you can also type C-g ;; ;; By default, you need to press RET to “commit” your change and if -;; you quit with q or C-g, the change made by vundo are rolled back. +;; you quit with q or C-g, the changes made by vundo are rolled back. ;; You can set ‘vundo-roll-back-on-quit’ to nil to disable rolling ;; back. ;; @@ -66,7 +66,7 @@ ;; ;; Your default font needs to contain these Unicode characters, otherwise ;; they look terrible and don’t align. You can find a font that covers -;; these characters (eg, Symbola, Unifont), and set ‘vundo-default’ face +;; these characters (e.g. Symbola, Unifont), and set ‘vundo-default’ face ;; to use that font: ;; ;; (set-face-attribute 'vundo-default nil :family "Symbola") @@ -114,14 +114,14 @@ ;; Position-only records ;; ;; We know how undo works: when undoing, ‘primitive-undo’ looks at -;; each record in ‘pending-undo-list’ and modify the buffer +;; each record in ‘pending-undo-list’ and modifies the buffer ;; accordingly, and that modification itself pushes new undo records ;; into ‘buffer-undo-list’. However, not all undo records introduce ;; modification, if the record is an integer, ‘primitive-undo’ simply ;; ‘goto’ that position, which introduces no modification to the ;; buffer and pushes no undo record to ‘buffer-undo-list’. Normally ;; position records accompany other buffer-modifying records, but if a -;; particular record consist of only position records, we have +;; particular record consists of only position records, we have ;; trouble: after an undo step, ‘buffer-undo-list’ didn’t grow, as far ;; as vundo tree-folding algorithm is concerned, we didn’t move. ;; Assertions expecting to see new undo records in ‘buffer-undo-list’ -- 2.30.2 --=-=-= Content-Type: text/plain but I only read the commentary partly and quickly. Also only tried quickly, but looks really cool. Michael. --=-=-=--