Package: emacs;
Reported by: "Scott, Michael" <scott <at> cs.rochester.edu>
Date: Fri, 2 May 2025 20:34:02 UTC
Severity: normal
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 78220 in the body.
You can then email your comments to 78220 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
View this report as an mbox folder, status mbox, maintainer mbox
bug-gnu-emacs <at> gnu.org
:bug#78220
; Package emacs
.
(Fri, 02 May 2025 20:34:02 GMT) Full text and rfc822 format available."Scott, Michael" <scott <at> cs.rochester.edu>
:bug-gnu-emacs <at> gnu.org
.
(Fri, 02 May 2025 20:34:02 GMT) Full text and rfc822 format available.Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: "Scott, Michael" <scott <at> cs.rochester.edu> To: "kifer <at> cs.stonybrook.edu" <kifer <at> cs.stonybrook.edu>, "bug-gnu-emacs <at> gnu.org" <bug-gnu-emacs <at> gnu.org> Subject: bug fix: viper-put-back and viper-Put-back do not set viper-d-com correctly Date: Fri, 2 May 2025 20:28:17 +0000
[Message part 1 (text/plain, inline)]
To: kifer <at> cs.stonybrook.edu, bug-gnu-emacs <at> gnu.org Subject: Viper version is 3.14.2 of July 4, 2013; viper-put-back and viper-Put-back do not correctly set viper-d-com From: mls <scott <at> scott.cs.rochester.edu> Congratulations! You may have unearthed a bug in Viper! Please mail a concise, accurate summary of the problem to the address above. In the code for viper-put-back and viper-Put-back, both in viper-cmd.el, viper-use-register is reset to nil before calling viper-set-destructive-command. It needs to happen after: sigma> diff -c viper-cmd.el viper-cmd_fix.el *** viper-cmd.el Fri May 2 16:19:41 2025 --- viper-cmd_fix.el Fri May 2 16:20:37 2025 *************** *** 3865,3871 **** (setq viper-use-register nil) (error viper-EmptyRegister reg)) (user-error viper-ViperBell))) - (setq viper-use-register nil) (if (viper-end-with-a-newline-p text) (progn (end-of-line) --- 3865,3870 ---- *************** *** 3877,3882 **** --- 3876,3882 ---- (set-marker (mark-marker) (point) (current-buffer)) (viper-set-destructive-command (list 'viper-put-back val nil viper-use-register nil nil)) + (setq viper-use-register nil) (setq sv-point (point)) (viper-loop val (viper-yank text)) (setq chars-inserted (abs (- (point) sv-point)) *************** *** 3915,3924 **** (setq viper-use-register nil) (error viper-EmptyRegister reg)) (user-error viper-ViperBell))) - (setq viper-use-register nil) (if (viper-end-with-a-newline-p text) (beginning-of-line)) (viper-set-destructive-command (list 'viper-Put-back val nil viper-use-register nil nil)) (set-marker (mark-marker) (point) (current-buffer)) (setq sv-point (point)) (viper-loop val (viper-yank text)) --- 3915,3924 ---- (setq viper-use-register nil) (error viper-EmptyRegister reg)) (user-error viper-ViperBell))) (if (viper-end-with-a-newline-p text) (beginning-of-line)) (viper-set-destructive-command (list 'viper-Put-back val nil viper-use-register nil nil)) + (setq viper-use-register nil) (set-marker (mark-marker) (point) (current-buffer)) (setq sv-point (point)) (viper-loop val (viper-yank text)) sigma> With this fix, a command like “xp or “xP will repeat correctly with the dot command. ------------------------------------------------------------------- Emacs : GNU Emacs 29.4 (build 1, aarch64-apple-darwin21.6.0, NS appkit-2113.60 Version 12.6.6 (Build 21G646)) of 2024-08-02 Package: Viper version is 3.14.2 of July 4, 2013 current state: ============== (setq viper-vi-minibuffer-minor-mode nil viper-insert-minibuffer-minor-mode nil viper-vi-intercept-minor-mode t viper-vi-local-user-minor-mode t viper-vi-kbd-minor-mode t viper-vi-global-user-minor-mode t viper-vi-state-modifier-minor-mode t viper-vi-diehard-minor-mode nil viper-vi-basic-minor-mode t viper-replace-minor-mode nil viper-insert-intercept-minor-mode nil viper-insert-local-user-minor-mode nil viper-insert-kbd-minor-mode nil viper-insert-global-user-minor-mode nil viper-insert-state-modifier-minor-mode nil viper-insert-diehard-minor-mode nil viper-insert-basic-minor-mode nil viper-emacs-intercept-minor-mode nil viper-emacs-local-user-minor-mode nil viper-emacs-kbd-minor-mode nil viper-emacs-global-user-minor-mode nil viper-emacs-state-modifier-minor-mode nil viper-automatic-iso-accents nil viper-special-input-method nil viper-want-emacs-keys-in-insert t viper-want-emacs-keys-in-vi t viper-keep-point-on-undo nil viper-no-multiple-ESC t viper-electric-mode nil viper-ESC-key "`" viper-want-ctl-h-help nil viper-ex-style-editing nil viper-delete-backwards-in-replace nil viper-vi-style-in-minibuffer t viper-vi-state-hook 'viper-restore-cursor-type viper-insert-state-hook '(turn-on-auto-fill viper-set-insert-cursor-type) viper-replace-state-hook 'viper-restore-cursor-type viper-emacs-state-hook 'viper-restore-cursor-type ex-cycle-other-window t ex-cycle-through-non-files nil viper-expert-level 5 major-mode 'fundamental-mode window-system 'ns x-display-color-p t viper-frame-parameters '((tool-bar-position . top) (parent-id) (explicit-name) (display . "scott.cs.rochester.edu") (visibility . t) (icon-name) (window-id . "1") (top . 25) (left . 1526) (buried-buffer-list #<buffer *Completions*> #<buffer *viper-ask-level*>) (buffer-list #<buffer .viper> #<buffer viper-cmd.el.gz> #<buffer viper-init.el.gz> #<buffer *Backtrace*> #<buffer *Help*> #<buffer *Buffer List*> #<buffer chap.tex> #<buffer CDex.tex<04_semantics>> #<buffer 2025-05-01_Yuan_Yao> #<buffer attr_grammars.tex> #<buffer main.tex> #<buffer *scratch*> #<buffer 2025-04-10_hbeadle> #<buffer response.txt> #<buffer notes> #<buffer 2025-04-29_rdong3+sree> #<buffer CDex.tex<03_names>> #<buffer notes.txt>) (unsplittable) (modeline . t) (width . 80) (height . 86) (name . "Emacs-arm64-11 <at> sigma") (last-focus-update . t) (viper-vi-state-cursor-color . "firebrick") (viper-saved-cursor-color-in-replace-mode . "firebrick") (environment) (font-parameter) (cursor-color . "firebrick") (background-mode . light) (display-type . color) (scroll-bar-background) (scroll-bar-foreground) (window-system . ns) (fullscreen) (alpha-background) (alpha) (scroll-bar-height . 15) (scroll-bar-width . 15) (cursor-type . box) (auto-lower) (auto-raise) (icon-type) (title) (buffer-predicate) (tool-bar-lines . 0) (tab-bar-lines . 0) (menu-bar-lines . 0) (no-accept-focus) (no-focus-on-map) (z-group) (parent-frame) (ns-transparent-titlebar) (ns-appearance) (undecorated) (no-special-glyphs) (right-fringe . 8) (left-fringe . 8) (line-spacing) (background-color . "alice blue") (foreground-color . "Black") (horizontal-scroll-bars) (vertical-scroll-bars . right) (bottom-divider-width . 0) (right-divider-width . 0) (child-frame-border-width) (internal-border-width . 2) (border-width . 0) (font . "-*-Monaco-regular-normal-normal-*-12-*-*-*-m-0-iso10646-1") (fontsize . 0) (font-backend mac-ct) (minibuffer . t)) viper-minibuffer-vi-face [face unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified] viper-minibuffer-insert-face [face unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified] viper-minibuffer-emacs-face [face unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified] ) --text follows this line-- -- Michael L. Scott (he/him) Arthur Gould Yates Professor of Engineering Computer Science Department, University of Rochester scott <at> cs.rochester.edu<mailto:scott <at> cs.rochester.edu>; 585-275-5671, 5478 http://www.cs.rochester.edu/u/scott/
[Message part 2 (text/html, inline)]
bug-gnu-emacs <at> gnu.org
:bug#78220
; Package emacs
.
(Sat, 17 May 2025 08:07:01 GMT) Full text and rfc822 format available.Message #8 received at 78220 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: kifer <at> cs.stonybrook.edu, "Scott, Michael" <scott <at> cs.rochester.edu> Cc: 78220 <at> debbugs.gnu.org Subject: Re: bug#78220: bug fix: viper-put-back and viper-Put-back do not set viper-d-com correctly Date: Sat, 17 May 2025 11:06:43 +0300
Ping! Michael, could you please look into this? > Date: Fri, 2 May 2025 20:28:17 +0000 > From: "Scott, Michael" via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org> > > To: kifer <at> cs.stonybrook.edu, bug-gnu-emacs <at> gnu.org > Subject: Viper version is 3.14.2 of July 4, 2013; viper-put-back and viper-Put-back do > not correctly set viper-d-com > From: mls <scott <at> scott.cs.rochester.edu> > > Congratulations! You may have unearthed a bug in Viper! > Please mail a concise, accurate summary of the problem to the address above. > > In the code for viper-put-back and viper-Put-back, both in viper-cmd.el, > viper-use-register is reset to nil before calling viper-set-destructive-command. > It needs to happen after: > > sigma> diff -c viper-cmd.el viper-cmd_fix.el > *** viper-cmd.el Fri May 2 16:19:41 2025 > --- viper-cmd_fix.el Fri May 2 16:20:37 2025 > *************** > *** 3865,3871 **** > (setq viper-use-register nil) > (error viper-EmptyRegister reg)) > (user-error viper-ViperBell))) > - (setq viper-use-register nil) > (if (viper-end-with-a-newline-p text) > (progn > (end-of-line) > --- 3865,3870 ---- > *************** > *** 3877,3882 **** > --- 3876,3882 ---- > (set-marker (mark-marker) (point) (current-buffer)) > (viper-set-destructive-command > (list 'viper-put-back val nil viper-use-register nil nil)) > + (setq viper-use-register nil) > (setq sv-point (point)) > (viper-loop val (viper-yank text)) > (setq chars-inserted (abs (- (point) sv-point)) > *************** > *** 3915,3924 **** > (setq viper-use-register nil) > (error viper-EmptyRegister reg)) > (user-error viper-ViperBell))) > - (setq viper-use-register nil) > (if (viper-end-with-a-newline-p text) (beginning-of-line)) > (viper-set-destructive-command > (list 'viper-Put-back val nil viper-use-register nil nil)) > (set-marker (mark-marker) (point) (current-buffer)) > (setq sv-point (point)) > (viper-loop val (viper-yank text)) > --- 3915,3924 ---- > (setq viper-use-register nil) > (error viper-EmptyRegister reg)) > (user-error viper-ViperBell))) > (if (viper-end-with-a-newline-p text) (beginning-of-line)) > (viper-set-destructive-command > (list 'viper-Put-back val nil viper-use-register nil nil)) > + (setq viper-use-register nil) > (set-marker (mark-marker) (point) (current-buffer)) > (setq sv-point (point)) > (viper-loop val (viper-yank text)) > sigma> > > With this fix, a command like “xp or “xP will repeat correctly with the dot command. > > ------------------------------------------------------------------- > > Emacs : GNU Emacs 29.4 (build 1, aarch64-apple-darwin21.6.0, NS appkit-2113.60 Version 12.6.6 (Build > 21G646)) > of 2024-08-02 > Package: Viper version is 3.14.2 of July 4, 2013 > > current state: > ============== > (setq > viper-vi-minibuffer-minor-mode nil > viper-insert-minibuffer-minor-mode nil > viper-vi-intercept-minor-mode t > viper-vi-local-user-minor-mode t > viper-vi-kbd-minor-mode t > viper-vi-global-user-minor-mode t > viper-vi-state-modifier-minor-mode t > viper-vi-diehard-minor-mode nil > viper-vi-basic-minor-mode t > viper-replace-minor-mode nil > viper-insert-intercept-minor-mode nil > viper-insert-local-user-minor-mode nil > viper-insert-kbd-minor-mode nil > viper-insert-global-user-minor-mode nil > viper-insert-state-modifier-minor-mode nil > viper-insert-diehard-minor-mode nil > viper-insert-basic-minor-mode nil > viper-emacs-intercept-minor-mode nil > viper-emacs-local-user-minor-mode nil > viper-emacs-kbd-minor-mode nil > viper-emacs-global-user-minor-mode nil > viper-emacs-state-modifier-minor-mode nil > viper-automatic-iso-accents nil > viper-special-input-method nil > viper-want-emacs-keys-in-insert t > viper-want-emacs-keys-in-vi t > viper-keep-point-on-undo nil > viper-no-multiple-ESC t > viper-electric-mode nil > viper-ESC-key "`" > viper-want-ctl-h-help nil > viper-ex-style-editing nil > viper-delete-backwards-in-replace nil > viper-vi-style-in-minibuffer t > viper-vi-state-hook 'viper-restore-cursor-type > viper-insert-state-hook '(turn-on-auto-fill viper-set-insert-cursor-type) > viper-replace-state-hook 'viper-restore-cursor-type > viper-emacs-state-hook 'viper-restore-cursor-type > ex-cycle-other-window t > ex-cycle-through-non-files nil > viper-expert-level 5 > major-mode 'fundamental-mode > window-system 'ns > x-display-color-p t > viper-frame-parameters '((tool-bar-position . top) (parent-id) > (explicit-name) (display . "scott.cs.rochester.edu") > (visibility . t) (icon-name) (window-id . "1") > (top . 25) (left . 1526) > (buried-buffer-list #<buffer *Completions*> #<buffer > *viper-ask-level*>) > (buffer-list #<buffer .viper> #<buffer > viper-cmd.el.gz> #<buffer viper-init.el.gz> > #<buffer *Backtrace*> #<buffer *Help*> #<buffer > *Buffer List*> #<buffer chap.tex> #<buffer > CDex.tex<04_semantics>> #<buffer > 2025-05-01_Yuan_Yao> #<buffer attr_grammars.tex> > #<buffer main.tex> #<buffer *scratch*> #<buffer > 2025-04-10_hbeadle> #<buffer response.txt> #<buffer > notes> #<buffer 2025-04-29_rdong3+sree> #<buffer > CDex.tex<03_names>> #<buffer notes.txt>) > (unsplittable) (modeline . t) (width . 80) > (height . 86) (name . "Emacs-arm64-11 <at> sigma") > (last-focus-update . t) > (viper-vi-state-cursor-color . "firebrick") > (viper-saved-cursor-color-in-replace-mode . > "firebrick") > (environment) (font-parameter) > (cursor-color . "firebrick") > (background-mode . light) (display-type . color) > (scroll-bar-background) (scroll-bar-foreground) > (window-system . ns) (fullscreen) (alpha-background) > (alpha) (scroll-bar-height . 15) > (scroll-bar-width . 15) (cursor-type . box) > (auto-lower) (auto-raise) (icon-type) (title) > (buffer-predicate) (tool-bar-lines . 0) > (tab-bar-lines . 0) (menu-bar-lines . 0) > (no-accept-focus) (no-focus-on-map) (z-group) > (parent-frame) (ns-transparent-titlebar) > (ns-appearance) (undecorated) (no-special-glyphs) > (right-fringe . 8) (left-fringe . 8) (line-spacing) > (background-color . "alice blue") > (foreground-color . "Black") > (horizontal-scroll-bars) > (vertical-scroll-bars . right) > (bottom-divider-width . 0) (right-divider-width . 0) > (child-frame-border-width) > (internal-border-width . 2) (border-width . 0) > (font . > "-*-Monaco-regular-normal-normal-*-12-*-*-*-m-0-iso10646-1") > (fontsize . 0) (font-backend mac-ct) > (minibuffer . t)) > viper-minibuffer-vi-face [face unspecified unspecified unspecified unspecified unspecified unspecified > unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified > unspecified unspecified unspecified unspecified] > viper-minibuffer-insert-face [face unspecified unspecified unspecified unspecified unspecified unspecified > unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified > unspecified unspecified unspecified unspecified] > viper-minibuffer-emacs-face [face unspecified unspecified unspecified unspecified unspecified unspecified > unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified > unspecified unspecified unspecified unspecified] > ) > --text follows this line-- > > -- > Michael L. Scott (he/him) > Arthur Gould Yates Professor of Engineering > Computer Science Department, University of Rochester > scott <at> cs.rochester.edu; 585-275-5671, 5478 > http://www.cs.rochester.edu/u/scott/
bug-gnu-emacs <at> gnu.org
:bug#78220
; Package emacs
.
(Sat, 31 May 2025 02:04:09 GMT) Full text and rfc822 format available.Message #11 received at 78220 <at> debbugs.gnu.org (full text, mbox):
From: Michael Kifer <kifer <at> cs.stonybrook.edu> To: Eli Zaretskii <eliz <at> gnu.org>, "Scott, Michael" <scott <at> cs.rochester.edu> Cc: 78220 <at> debbugs.gnu.org Subject: Re: bug#78220: bug fix: viper-put-back and viper-Put-back do not set viper-d-com correctly Date: Fri, 30 May 2025 22:02:46 -0400
I haven't committed anything to emacs repo for probably 15 years now and I lost my access to the repository. I would have loved it if I were able to continue maintaining Viper and Ediff but it's not going to happen, realistically speaking. michael On 5/17/25 04:06, Eli Zaretskii wrote: > Ping! Michael, could you please look into this? > >> Date: Fri, 2 May 2025 20:28:17 +0000 >> From: "Scott, Michael" via "Bug reports for GNU Emacs, >> the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org> >> >> To: kifer <at> cs.stonybrook.edu, bug-gnu-emacs <at> gnu.org >> Subject: Viper version is 3.14.2 of July 4, 2013; viper-put-back and viper-Put-back do >> not correctly set viper-d-com >> From: mls <scott <at> scott.cs.rochester.edu> >> >> Congratulations! You may have unearthed a bug in Viper! >> Please mail a concise, accurate summary of the problem to the address above. >> >> In the code for viper-put-back and viper-Put-back, both in viper-cmd.el, >> viper-use-register is reset to nil before calling viper-set-destructive-command. >> It needs to happen after: >> >> sigma> diff -c viper-cmd.el viper-cmd_fix.el >> *** viper-cmd.el Fri May 2 16:19:41 2025 >> --- viper-cmd_fix.el Fri May 2 16:20:37 2025 >> *************** >> *** 3865,3871 **** >> (setq viper-use-register nil) >> (error viper-EmptyRegister reg)) >> (user-error viper-ViperBell))) >> - (setq viper-use-register nil) >> (if (viper-end-with-a-newline-p text) >> (progn >> (end-of-line) >> --- 3865,3870 ---- >> *************** >> *** 3877,3882 **** >> --- 3876,3882 ---- >> (set-marker (mark-marker) (point) (current-buffer)) >> (viper-set-destructive-command >> (list 'viper-put-back val nil viper-use-register nil nil)) >> + (setq viper-use-register nil) >> (setq sv-point (point)) >> (viper-loop val (viper-yank text)) >> (setq chars-inserted (abs (- (point) sv-point)) >> *************** >> *** 3915,3924 **** >> (setq viper-use-register nil) >> (error viper-EmptyRegister reg)) >> (user-error viper-ViperBell))) >> - (setq viper-use-register nil) >> (if (viper-end-with-a-newline-p text) (beginning-of-line)) >> (viper-set-destructive-command >> (list 'viper-Put-back val nil viper-use-register nil nil)) >> (set-marker (mark-marker) (point) (current-buffer)) >> (setq sv-point (point)) >> (viper-loop val (viper-yank text)) >> --- 3915,3924 ---- >> (setq viper-use-register nil) >> (error viper-EmptyRegister reg)) >> (user-error viper-ViperBell))) >> (if (viper-end-with-a-newline-p text) (beginning-of-line)) >> (viper-set-destructive-command >> (list 'viper-Put-back val nil viper-use-register nil nil)) >> + (setq viper-use-register nil) >> (set-marker (mark-marker) (point) (current-buffer)) >> (setq sv-point (point)) >> (viper-loop val (viper-yank text)) >> sigma> >> >> With this fix, a command like “xp or “xP will repeat correctly with the dot command. >> >> ------------------------------------------------------------------- >> >> Emacs : GNU Emacs 29.4 (build 1, aarch64-apple-darwin21.6.0, NS appkit-2113.60 Version 12.6.6 (Build >> 21G646)) >> of 2024-08-02 >> Package: Viper version is 3.14.2 of July 4, 2013 >> >> current state: >> ============== >> (setq >> viper-vi-minibuffer-minor-mode nil >> viper-insert-minibuffer-minor-mode nil >> viper-vi-intercept-minor-mode t >> viper-vi-local-user-minor-mode t >> viper-vi-kbd-minor-mode t >> viper-vi-global-user-minor-mode t >> viper-vi-state-modifier-minor-mode t >> viper-vi-diehard-minor-mode nil >> viper-vi-basic-minor-mode t >> viper-replace-minor-mode nil >> viper-insert-intercept-minor-mode nil >> viper-insert-local-user-minor-mode nil >> viper-insert-kbd-minor-mode nil >> viper-insert-global-user-minor-mode nil >> viper-insert-state-modifier-minor-mode nil >> viper-insert-diehard-minor-mode nil >> viper-insert-basic-minor-mode nil >> viper-emacs-intercept-minor-mode nil >> viper-emacs-local-user-minor-mode nil >> viper-emacs-kbd-minor-mode nil >> viper-emacs-global-user-minor-mode nil >> viper-emacs-state-modifier-minor-mode nil >> viper-automatic-iso-accents nil >> viper-special-input-method nil >> viper-want-emacs-keys-in-insert t >> viper-want-emacs-keys-in-vi t >> viper-keep-point-on-undo nil >> viper-no-multiple-ESC t >> viper-electric-mode nil >> viper-ESC-key "`" >> viper-want-ctl-h-help nil >> viper-ex-style-editing nil >> viper-delete-backwards-in-replace nil >> viper-vi-style-in-minibuffer t >> viper-vi-state-hook 'viper-restore-cursor-type >> viper-insert-state-hook '(turn-on-auto-fill viper-set-insert-cursor-type) >> viper-replace-state-hook 'viper-restore-cursor-type >> viper-emacs-state-hook 'viper-restore-cursor-type >> ex-cycle-other-window t >> ex-cycle-through-non-files nil >> viper-expert-level 5 >> major-mode 'fundamental-mode >> window-system 'ns >> x-display-color-p t >> viper-frame-parameters '((tool-bar-position . top) (parent-id) >> (explicit-name) (display . "scott.cs.rochester.edu") >> (visibility . t) (icon-name) (window-id . "1") >> (top . 25) (left . 1526) >> (buried-buffer-list #<buffer *Completions*> #<buffer >> *viper-ask-level*>) >> (buffer-list #<buffer .viper> #<buffer >> viper-cmd.el.gz> #<buffer viper-init.el.gz> >> #<buffer *Backtrace*> #<buffer *Help*> #<buffer >> *Buffer List*> #<buffer chap.tex> #<buffer >> CDex.tex<04_semantics>> #<buffer >> 2025-05-01_Yuan_Yao> #<buffer attr_grammars.tex> >> #<buffer main.tex> #<buffer *scratch*> #<buffer >> 2025-04-10_hbeadle> #<buffer response.txt> #<buffer >> notes> #<buffer 2025-04-29_rdong3+sree> #<buffer >> CDex.tex<03_names>> #<buffer notes.txt>) >> (unsplittable) (modeline . t) (width . 80) >> (height . 86) (name . "Emacs-arm64-11 <at> sigma") >> (last-focus-update . t) >> (viper-vi-state-cursor-color . "firebrick") >> (viper-saved-cursor-color-in-replace-mode . >> "firebrick") >> (environment) (font-parameter) >> (cursor-color . "firebrick") >> (background-mode . light) (display-type . color) >> (scroll-bar-background) (scroll-bar-foreground) >> (window-system . ns) (fullscreen) (alpha-background) >> (alpha) (scroll-bar-height . 15) >> (scroll-bar-width . 15) (cursor-type . box) >> (auto-lower) (auto-raise) (icon-type) (title) >> (buffer-predicate) (tool-bar-lines . 0) >> (tab-bar-lines . 0) (menu-bar-lines . 0) >> (no-accept-focus) (no-focus-on-map) (z-group) >> (parent-frame) (ns-transparent-titlebar) >> (ns-appearance) (undecorated) (no-special-glyphs) >> (right-fringe . 8) (left-fringe . 8) (line-spacing) >> (background-color . "alice blue") >> (foreground-color . "Black") >> (horizontal-scroll-bars) >> (vertical-scroll-bars . right) >> (bottom-divider-width . 0) (right-divider-width . 0) >> (child-frame-border-width) >> (internal-border-width . 2) (border-width . 0) >> (font . >> "-*-Monaco-regular-normal-normal-*-12-*-*-*-m-0-iso10646-1") >> (fontsize . 0) (font-backend mac-ct) >> (minibuffer . t)) >> viper-minibuffer-vi-face [face unspecified unspecified unspecified unspecified unspecified unspecified >> unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified >> unspecified unspecified unspecified unspecified] >> viper-minibuffer-insert-face [face unspecified unspecified unspecified unspecified unspecified unspecified >> unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified >> unspecified unspecified unspecified unspecified] >> viper-minibuffer-emacs-face [face unspecified unspecified unspecified unspecified unspecified unspecified >> unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified >> unspecified unspecified unspecified unspecified] >> ) >> --text follows this line-- >> >> -- >> Michael L. Scott (he/him) >> Arthur Gould Yates Professor of Engineering >> Computer Science Department, University of Rochester >> scott <at> cs.rochester.edu; 585-275-5671, 5478 >> http://www.cs.rochester.edu/u/scott/
bug-gnu-emacs <at> gnu.org
:bug#78220
; Package emacs
.
(Sat, 31 May 2025 06:48:06 GMT) Full text and rfc822 format available.Message #14 received at 78220 <at> debbugs.gnu.org (full text, mbox):
From: "Michael L. Scott" <mlscott <at> acm.org> To: Michael Kifer <kifer <at> cs.stonybrook.edu> Cc: 78220 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>, Michael Scott <scott <at> cs.rochester.edu> Subject: Re: [EXT] Re: bug#78220: bug fix: viper-put-back and viper-Put-back do not set viper-d-com correctly Date: Fri, 30 May 2025 22:36:49 -0400
Too bad. It's a beautiful package. I've used it pretty much every day for more than 30 years. I've patched my local copy; would love to be able to make a small contribution to the main repository. - Michael > On May 30, 2025, at 10:03 PM, Michael Kifer <kifer <at> cs.stonybrook.edu> wrote: > > > I haven't committed anything to emacs repo for probably 15 years now and I lost my access to the repository. > > I would have loved it if I were able to continue maintaining Viper and Ediff but it's not going to happen, realistically speaking. > > michael > > >> On 5/17/25 04:06, Eli Zaretskii wrote: >> Ping! Michael, could you please look into this? >> >>> Date: Fri, 2 May 2025 20:28:17 +0000 >>> From: "Scott, Michael" via "Bug reports for GNU Emacs, >>> the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org> >>> >>> To: kifer <at> cs.stonybrook.edu, bug-gnu-emacs <at> gnu.org >>> Subject: Viper version is 3.14.2 of July 4, 2013; viper-put-back and viper-Put-back do >>> not correctly set viper-d-com >>> From: mls <scott <at> scott.cs.rochester.edu> >>> >>> Congratulations! You may have unearthed a bug in Viper! >>> Please mail a concise, accurate summary of the problem to the address above. >>> >>> In the code for viper-put-back and viper-Put-back, both in viper-cmd.el, >>> viper-use-register is reset to nil before calling viper-set-destructive-command. >>> It needs to happen after: >>> >>> sigma> diff -c viper-cmd.el viper-cmd_fix.el >>> *** viper-cmd.el Fri May 2 16:19:41 2025 >>> --- viper-cmd_fix.el Fri May 2 16:20:37 2025 >>> *************** >>> *** 3865,3871 **** >>> (setq viper-use-register nil) >>> (error viper-EmptyRegister reg)) >>> (user-error viper-ViperBell))) >>> - (setq viper-use-register nil) >>> (if (viper-end-with-a-newline-p text) >>> (progn >>> (end-of-line) >>> --- 3865,3870 ---- >>> *************** >>> *** 3877,3882 **** >>> --- 3876,3882 ---- >>> (set-marker (mark-marker) (point) (current-buffer)) >>> (viper-set-destructive-command >>> (list 'viper-put-back val nil viper-use-register nil nil)) >>> + (setq viper-use-register nil) >>> (setq sv-point (point)) >>> (viper-loop val (viper-yank text)) >>> (setq chars-inserted (abs (- (point) sv-point)) >>> *************** >>> *** 3915,3924 **** >>> (setq viper-use-register nil) >>> (error viper-EmptyRegister reg)) >>> (user-error viper-ViperBell))) >>> - (setq viper-use-register nil) >>> (if (viper-end-with-a-newline-p text) (beginning-of-line)) >>> (viper-set-destructive-command >>> (list 'viper-Put-back val nil viper-use-register nil nil)) >>> (set-marker (mark-marker) (point) (current-buffer)) >>> (setq sv-point (point)) >>> (viper-loop val (viper-yank text)) >>> --- 3915,3924 ---- >>> (setq viper-use-register nil) >>> (error viper-EmptyRegister reg)) >>> (user-error viper-ViperBell))) >>> (if (viper-end-with-a-newline-p text) (beginning-of-line)) >>> (viper-set-destructive-command >>> (list 'viper-Put-back val nil viper-use-register nil nil)) >>> + (setq viper-use-register nil) >>> (set-marker (mark-marker) (point) (current-buffer)) >>> (setq sv-point (point)) >>> (viper-loop val (viper-yank text)) >>> sigma> >>> >>> With this fix, a command like “xp or “xP will repeat correctly with the dot command. >>> >>> ------------------------------------------------------------------- >>> >>> Emacs : GNU Emacs 29.4 (build 1, aarch64-apple-darwin21.6.0, NS appkit-2113.60 Version 12.6.6 (Build >>> 21G646)) >>> of 2024-08-02 >>> Package: Viper version is 3.14.2 of July 4, 2013 >>> >>> current state: >>> ============== >>> (setq >>> viper-vi-minibuffer-minor-mode nil >>> viper-insert-minibuffer-minor-mode nil >>> viper-vi-intercept-minor-mode t >>> viper-vi-local-user-minor-mode t >>> viper-vi-kbd-minor-mode t >>> viper-vi-global-user-minor-mode t >>> viper-vi-state-modifier-minor-mode t >>> viper-vi-diehard-minor-mode nil >>> viper-vi-basic-minor-mode t >>> viper-replace-minor-mode nil >>> viper-insert-intercept-minor-mode nil >>> viper-insert-local-user-minor-mode nil >>> viper-insert-kbd-minor-mode nil >>> viper-insert-global-user-minor-mode nil >>> viper-insert-state-modifier-minor-mode nil >>> viper-insert-diehard-minor-mode nil >>> viper-insert-basic-minor-mode nil >>> viper-emacs-intercept-minor-mode nil >>> viper-emacs-local-user-minor-mode nil >>> viper-emacs-kbd-minor-mode nil >>> viper-emacs-global-user-minor-mode nil >>> viper-emacs-state-modifier-minor-mode nil >>> viper-automatic-iso-accents nil >>> viper-special-input-method nil >>> viper-want-emacs-keys-in-insert t >>> viper-want-emacs-keys-in-vi t >>> viper-keep-point-on-undo nil >>> viper-no-multiple-ESC t >>> viper-electric-mode nil >>> viper-ESC-key "`" >>> viper-want-ctl-h-help nil >>> viper-ex-style-editing nil >>> viper-delete-backwards-in-replace nil >>> viper-vi-style-in-minibuffer t >>> viper-vi-state-hook 'viper-restore-cursor-type >>> viper-insert-state-hook '(turn-on-auto-fill viper-set-insert-cursor-type) >>> viper-replace-state-hook 'viper-restore-cursor-type >>> viper-emacs-state-hook 'viper-restore-cursor-type >>> ex-cycle-other-window t >>> ex-cycle-through-non-files nil >>> viper-expert-level 5 >>> major-mode 'fundamental-mode >>> window-system 'ns >>> x-display-color-p t >>> viper-frame-parameters '((tool-bar-position . top) (parent-id) >>> (explicit-name) (display . "scott.cs.rochester.edu") >>> (visibility . t) (icon-name) (window-id . "1") >>> (top . 25) (left . 1526) >>> (buried-buffer-list #<buffer *Completions*> #<buffer >>> *viper-ask-level*>) >>> (buffer-list #<buffer .viper> #<buffer >>> viper-cmd.el.gz> #<buffer viper-init.el.gz> >>> #<buffer *Backtrace*> #<buffer *Help*> #<buffer >>> *Buffer List*> #<buffer chap.tex> #<buffer >>> CDex.tex<04_semantics>> #<buffer >>> 2025-05-01_Yuan_Yao> #<buffer attr_grammars.tex> >>> #<buffer main.tex> #<buffer *scratch*> #<buffer >>> 2025-04-10_hbeadle> #<buffer response.txt> #<buffer >>> notes> #<buffer 2025-04-29_rdong3+sree> #<buffer >>> CDex.tex<03_names>> #<buffer notes.txt>) >>> (unsplittable) (modeline . t) (width . 80) >>> (height . 86) (name . "Emacs-arm64-11 <at> sigma") >>> (last-focus-update . t) >>> (viper-vi-state-cursor-color . "firebrick") >>> (viper-saved-cursor-color-in-replace-mode . >>> "firebrick") >>> (environment) (font-parameter) >>> (cursor-color . "firebrick") >>> (background-mode . light) (display-type . color) >>> (scroll-bar-background) (scroll-bar-foreground) >>> (window-system . ns) (fullscreen) (alpha-background) >>> (alpha) (scroll-bar-height . 15) >>> (scroll-bar-width . 15) (cursor-type . box) >>> (auto-lower) (auto-raise) (icon-type) (title) >>> (buffer-predicate) (tool-bar-lines . 0) >>> (tab-bar-lines . 0) (menu-bar-lines . 0) >>> (no-accept-focus) (no-focus-on-map) (z-group) >>> (parent-frame) (ns-transparent-titlebar) >>> (ns-appearance) (undecorated) (no-special-glyphs) >>> (right-fringe . 8) (left-fringe . 8) (line-spacing) >>> (background-color . "alice blue") >>> (foreground-color . "Black") >>> (horizontal-scroll-bars) >>> (vertical-scroll-bars . right) >>> (bottom-divider-width . 0) (right-divider-width . 0) >>> (child-frame-border-width) >>> (internal-border-width . 2) (border-width . 0) >>> (font . >>> "-*-Monaco-regular-normal-normal-*-12-*-*-*-m-0-iso10646-1") >>> (fontsize . 0) (font-backend mac-ct) >>> (minibuffer . t)) >>> viper-minibuffer-vi-face [face unspecified unspecified unspecified unspecified unspecified unspecified >>> unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified >>> unspecified unspecified unspecified unspecified] >>> viper-minibuffer-insert-face [face unspecified unspecified unspecified unspecified unspecified unspecified >>> unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified >>> unspecified unspecified unspecified unspecified] >>> viper-minibuffer-emacs-face [face unspecified unspecified unspecified unspecified unspecified unspecified >>> unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified >>> unspecified unspecified unspecified unspecified] >>> ) >>> --text follows this line-- >>> >>> -- >>> Michael L. Scott (he/him) >>> Arthur Gould Yates Professor of Engineering >>> Computer Science Department, University of Rochester >>> scott <at> cs.rochester.edu; 585-275-5671, 5478 >>> http://www.cs.rochester.edu/u/scott/
bug-gnu-emacs <at> gnu.org
:bug#78220
; Package emacs
.
(Sat, 31 May 2025 07:13:02 GMT) Full text and rfc822 format available.Message #17 received at 78220 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Michael Kifer <kifer <at> cs.stonybrook.edu> Cc: 78220 <at> debbugs.gnu.org, scott <at> cs.rochester.edu Subject: Re: bug#78220: bug fix: viper-put-back and viper-Put-back do not set viper-d-com correctly Date: Sat, 31 May 2025 10:12:31 +0300
> Date: Fri, 30 May 2025 22:02:46 -0400 > Cc: 78220 <at> debbugs.gnu.org > From: Michael Kifer <kifer <at> cs.stonybrook.edu> > > > I haven't committed anything to emacs repo for probably 15 years now > and I lost my access to the repository. > > I would have loved it if I were able to continue maintaining Viper and > Ediff but it's not going to happen, realistically speaking. OK, understood. Does the patch sound reasonable to you?
bug-gnu-emacs <at> gnu.org
:bug#78220
; Package emacs
.
(Sat, 31 May 2025 13:27:06 GMT) Full text and rfc822 format available.Message #20 received at 78220 <at> debbugs.gnu.org (full text, mbox):
From: "Scott, Michael" <scott <at> cs.rochester.edu> To: Eli Zaretskii <eliz <at> gnu.org> Cc: "78220 <at> debbugs.gnu.org" <78220 <at> debbugs.gnu.org>, Michael Kifer <kifer <at> cs.stonybrook.edu> Subject: Re: [EXT] bug#78220: bug fix: viper-put-back and viper-Put-back do not set viper-d-com correctly Date: Sat, 31 May 2025 13:25:52 +0000
It’s purpose, in case that wasn’t clear, is to allow put (‘p’) commands to be correctly repeated. - Michael > On May 31, 2025, at 3:12 AM, Eli Zaretskii <eliz <at> gnu.org> wrote: > >> Date: Fri, 30 May 2025 22:02:46 -0400 >> Cc: 78220 <at> debbugs.gnu.org >> From: Michael Kifer <kifer <at> cs.stonybrook.edu> >> >> >> I haven't committed anything to emacs repo for probably 15 years now >> and I lost my access to the repository. >> >> I would have loved it if I were able to continue maintaining Viper and >> Ediff but it's not going to happen, realistically speaking. > > OK, understood. > > Does the patch sound reasonable to you?
bug-gnu-emacs <at> gnu.org
:bug#78220
; Package emacs
.
(Sat, 28 Jun 2025 08:47:03 GMT) Full text and rfc822 format available.Message #23 received at 78220 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: kifer <at> cs.stonybrook.edu, scott <at> cs.rochester.edu Cc: 78220 <at> debbugs.gnu.org Subject: Re: bug#78220: bug fix: viper-put-back and viper-Put-back do not set viper-d-com correctly Date: Sat, 28 Jun 2025 11:46:42 +0300
> Cc: 78220 <at> debbugs.gnu.org, scott <at> cs.rochester.edu > Date: Sat, 31 May 2025 10:12:31 +0300 > From: Eli Zaretskii <eliz <at> gnu.org> > > > Date: Fri, 30 May 2025 22:02:46 -0400 > > Cc: 78220 <at> debbugs.gnu.org > > From: Michael Kifer <kifer <at> cs.stonybrook.edu> > > > > > > I haven't committed anything to emacs repo for probably 15 years now > > and I lost my access to the repository. > > > > I would have loved it if I were able to continue maintaining Viper and > > Ediff but it's not going to happen, realistically speaking. > > OK, understood. > > Does the patch sound reasonable to you? No further comments, so I have now installed the proposed patch on the master branch, and I'm therefore closing this bug.
Eli Zaretskii <eliz <at> gnu.org>
:"Scott, Michael" <scott <at> cs.rochester.edu>
:Message #28 received at 78220-done <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: 78220-done <at> debbugs.gnu.org Subject: Re: bug#78220: bug fix: viper-put-back and viper-Put-back do not set viper-d-com correctly Date: Sat, 28 Jun 2025 11:47:03 +0300
Closing.
bug-gnu-emacs <at> gnu.org
:bug#78220
; Package emacs
.
(Sun, 29 Jun 2025 02:24:03 GMT) Full text and rfc822 format available.Message #31 received at 78220 <at> debbugs.gnu.org (full text, mbox):
From: Michael Kifer <kifer <at> cs.stonybrook.edu> To: Eli Zaretskii <eliz <at> gnu.org> Cc: 78220 <at> debbugs.gnu.org, scott <at> cs.rochester.edu Subject: Re: bug#78220: bug fix: viper-put-back and viper-Put-back do not set viper-d-com correctly Date: Sat, 28 Jun 2025 22:23:04 -0400 (EDT)
[Message part 1 (text/plain, inline)]
Thank you, Eli Jun 28, 2025 04:46:46 Eli Zaretskii <eliz <at> gnu.org>: >> Cc: 78220 <at> debbugs.gnu.org, scott <at> cs.rochester.edu >> Date: Sat, 31 May 2025 10:12:31 +0300 >> From: Eli Zaretskii <eliz <at> gnu.org> >> >>> Date: Fri, 30 May 2025 22:02:46 -0400 >>> Cc: 78220 <at> debbugs.gnu.org >>> From: Michael Kifer <kifer <at> cs.stonybrook.edu> >>> >>> >>> I haven't committed anything to emacs repo for probably 15 years now >>> and I lost my access to the repository. >>> >>> I would have loved it if I were able to continue maintaining Viper and >>> Ediff but it's not going to happen, realistically speaking. >> >> OK, understood. >> >> Does the patch sound reasonable to you? > > No further comments, so I have now installed the proposed patch on the > master branch, and I'm therefore closing this bug.
[Message part 2 (text/html, inline)]
Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Sun, 27 Jul 2025 11:24:06 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.