-(if viper-mode
- (setq-default viper-emacs-intercept-minor-mode t
- viper-emacs-local-user-minor-mode t
- viper-emacs-global-user-minor-mode t
- viper-emacs-kbd-minor-mode t
- viper-emacs-state-modifier-minor-mode t))
-(if (and viper-mode (eq viper-current-state 'emacs-state))
- (setq viper-emacs-intercept-minor-mode t
- viper-emacs-local-user-minor-mode t
- viper-emacs-global-user-minor-mode t
- viper-emacs-kbd-minor-mode t
- viper-emacs-state-modifier-minor-mode t))
-
-
-(if (and viper-mode
- (or viper-always
- (and (< viper-expert-level 5) (> viper-expert-level 0))))
- (viper-set-hooks))
-
-;; Let all minor modes take effect after loading.
-;; This may not be enough, so we also set default minor-mode-alist.
-;; Without setting the default, new buffers that come up in emacs mode have
-;; minor-mode-map-alist = nil, unless we call viper-change-state-*
-(if (and viper-mode (eq viper-current-state 'emacs-state))
- (progn
- (viper-change-state-to-emacs)
- (unless
- (and (fboundp 'add-to-ordered-list)
- (boundp 'emulation-mode-map-alists))
- (setq-default minor-mode-map-alist minor-mode-map-alist))
- ))
+(when viper-mode
+ (viper-set-minibuffer-style)
+ (if viper-buffer-search-char
+ (viper-buffer-search-enable))
+ (viper-update-syntax-classes 'set-default)
+
+ ;; Familiarize Viper with some minor modes that have their own keymaps
+ (viper-harness-minor-mode "compile")
+ (viper-harness-minor-mode "outline")
+ (viper-harness-minor-mode "allout")
+ (viper-harness-minor-mode "xref")
+ (viper-harness-minor-mode "lmenu")
+ (viper-harness-minor-mode "vc")
+ (viper-harness-minor-mode "ltx-math") ; LaTeX-math-mode in AUC-TeX, which
+ (viper-harness-minor-mode "latex") ; sits in one of these two files
+ (viper-harness-minor-mode "cyrillic")
+ (viper-harness-minor-mode "russian")
+ (viper-harness-minor-mode "view-less")
+ (viper-harness-minor-mode "view")
+ (viper-harness-minor-mode "reftex")
+ (viper-harness-minor-mode "flyspell")
+
+ (setq-default viper-emacs-intercept-minor-mode t
+ viper-emacs-local-user-minor-mode t
+ viper-emacs-global-user-minor-mode t
+ viper-emacs-kbd-minor-mode t
+ viper-emacs-state-modifier-minor-mode t)
+ (if (eq viper-current-state 'emacs-state)
+ (setq viper-emacs-intercept-minor-mode t
+ viper-emacs-local-user-minor-mode t
+ viper-emacs-global-user-minor-mode t
+ viper-emacs-kbd-minor-mode t
+ viper-emacs-state-modifier-minor-mode t))
+
+
+ (if (or viper-always
+ (and (< viper-expert-level 5) (> viper-expert-level 0)))
+ (viper-set-hooks))
+
+ ;; Let all minor modes take effect after loading.
+ ;; This may not be enough, so we also set default minor-mode-alist.
+ ;; Without setting the default, new buffers that come up in emacs mode have
+ ;; minor-mode-map-alist = nil, unless we call viper-change-state-*
+ (when (eq viper-current-state 'emacs-state)
+ (viper-change-state-to-emacs)
+ (unless
+ (and (fboundp 'add-to-ordered-list)
+ (boundp 'emulation-mode-map-alists))
+ (setq-default minor-mode-map-alist minor-mode-map-alist))
+ )