[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

viper-go-away is lame

From: Raoul Gough
Subject: viper-go-away is lame
Date: Thu, 11 Jan 2007 23:07:48 +0000
User-agent: Gnus/5.1002 (Gnus v5.10.2) Emacs/21.3 (windows-nt)

This bug report will be sent to the Free Software Foundation,
not to your local site managers!
Please write in English, because the Emacs maintainers do not have
translators to read other languages for them.

Your bug report will be posted to the bug-gnu-emacs@gnu.org mailing list,
and to the gnu.emacs.bug news group.

In GNU Emacs 21.3.1 (i386-msvc-nt5.0.2195)
 of 2003-03-28 on buffy
configured using `configure --with-msvc (12.00)'
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: ENA
  locale-coding-system: iso-latin-1
  default-enable-multibyte-characters: t

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

The function viper-go-away doesn't do a very good job of "exiting"
viper, because the next time you open a file, it reverts Emacs back
into viper-mode.

e. g.
M-x viper
M-x viper-go-away
C-x C-f foo.txt    ;; viper "restarts" itself here

This is caused by viper-go-away not cleaning up the changes viper made
to default-major-mode, initial-major-mode and find-file-hooks. The
following additions to viper-go-away should do the trick, maybe
there's a better way to fix the find-file-hooks via viper-remove-hooks
but I'm not sure.

  (remove-hook 'find-file-hooks 'set-viper-state-in-major-mode)

  (if (eq default-major-mode 'viper-mode)
      (setq default-major-mode 'fundamental-mode))

  (setq initial-major-mode 'lisp-interaction-mode)

By the way, viper.el in the CVS head *appears* to have the same
deficiency, but I haven't tested it.

Raoul Gough.

Send instant messages to your online friends http://uk.messenger.yahoo.com 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]