Subject: bug#20521: Viper version is 3.14.2 of July 4, 2013; After some hours of use I don't enter viper mode automatically on new files

From: Alan Morgan <[email-masked]>
Date: Wed, 6 May 2015 16:35:26 -0700

Congratulations! You may have unearthed a bug in Viper!
Please mail a concise, accurate summary of the problem to the address above.

-------------------------------------------------------------------

I don't have a reproducible case (sorry) and am working on debugging
this myself, but it's hard to reproduce. I have emacs up all the time
and I've noticed that after "a few hours" viper-mode won't be entered in
automatically for new buffers (loaded with C-x C-f or :r. It doesn't
seem to matter). I have to M-x viper-mode manually.

Up until this point I've focused on set-viper-state-in-major-mode. It
looks like viper-current-state is set to vi-state even though I'm not in
viper-mode. This seems wrong to me (I'm assuming this state is only set
when in viper-mode), but I can't figure out how it's happening.

Googling has not been productive yet, hence this (rather unhelpful, I imagine) bug report.

Emacs  : GNU Emacs 24.5.1 (x86_64-w64-mingw32)
of 2015-04-05 on KAEL
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 nil
viper-want-emacs-keys-in-vi t
viper-keep-point-on-undo nil
viper-no-multiple-ESC nil
viper-electric-mode t
viper-ESC-key [escape]
viper-want-ctl-h-help nil
viper-ex-style-editing t
viper-delete-backwards-in-replace nil
viper-vi-style-in-minibuffer t
viper-vi-state-hook 'viper-restore-cursor-type
viper-insert-state-hook '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 2
major-mode 'emacs-lisp-mode
viper-device-type 'w32
color-display-p t
frame-parameters '((tool-bar-position . top) (parent-id) (explicit-name) (display . "w32")
                    (visibility . t) (icon-name) (window-id . "132178") (top + -8) (left + -8)
                    (buried-buffer-list #<buffer *Completions*> #<buffer  *viper-ask-level*>)
                    (buffer-list #<buffer viper.el> #<buffer  *Minibuf-1*> #<buffer buildRelease>
                     #<buffer build_publish.xml> #<buffer *Buffer List*> #<buffer viper.notes.txt>
                     #<buffer *Messages*> #<buffer *grep*> #<buffer configure<main>> #<buffer main>
                     #<buffer build_policies.pl> #<buffer PSRTestPolicies.xml> #<buffer Engine.java>
                     #<buffer *GNU Emacs*> #<buffer *scratch*>)
                    (unsplittable) (minibuffer . #<window 4 on  *Minibuf-0*>) (modeline . t)
                    (width . 211) (height . 52) (name . "emacs@MANN")
                    (viper-vi-state-cursor-color . "dodgerblue")
                    (viper-saved-cursor-color-in-replace-mode . "dodgerblue") (environment)
                    (cursor-color . "dodgerblue") (background-mode . dark) (display-type . color)
                    (horizontal-scroll-bars . t) (window-system . w32) (scroll-bar-width . 0)
                    (cursor-type . box) (auto-lower) (auto-raise) (icon-type) (fullscreen . maximized)
                    (title) (buffer-predicate) (tool-bar-lines . 0) (menu-bar-lines . 1) (alpha)
                    (right-fringe . 9) (left-fringe . 9) (line-spacing) (screen-gamma)
                    (border-color . "black") (mouse-color . "green")
                    (background-color . "darkslategrey") (foreground-color . "white")
                    (vertical-scroll-bars) (bottom-divider-width . 0) (right-divider-width . 0)
                    (internal-border-width . 0) (border-width . 2)
                    (font . "-outline-Consolas-normal-normal-normal-mono-16-*-*-*-c-*-iso8859-1")
                    (font-backend uniscribe gdi))
minibuffer-vi-face [face unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified]
minibuffer-insert-face [face unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified]
minibuffer-emacs-face [face unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified unspecified]
)

 ---------------------------------------------------------------------
STATEMENT OF CONFIDENTIALITY
 
The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain confidential or privileged information. No representation is made on its accuracy or completeness of the information contained in this electronic message. Certain assumptions may have been made in the preparation of this material as at this date, and are subject to change without notice. If you are not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this e-mail and any attachment(s) is strictly prohibited. Please reply to the sender at NextLabs Inc and destroy all copies of this message and any attachments from your system. ======================================================================