Remove some more XEmacs compat code from viper*.el
* lisp/emulation/viper-ex.el (viper-ex-read-file-name): Ditto. * lisp/emulation/viper-init.el (viper-ms-style-os-p) (viper-has-face-support-p, viper-deactivate-input-method) (viper-activate-input-method, viper-set-input-method): Ditto. * lisp/emulation/viper-util.el (viper-get-saved-cursor-color-in-replace-mode) (viper-get-saved-cursor-color-in-insert-mode) (viper-get-saved-cursor-color-in-emacs-mode) (viper-set-replace-overlay, viper-key-to-emacs-key) (viper-set-unread-command-events): Ditto. * lisp/emulation/viper.el (viper-go-away, viper-set-hooks) (viper-non-hook-settings): Remove XEmacs compat code.
This commit is contained in:
parent
07959a0ffb
commit
1039c2e2eb
4 changed files with 43 additions and 90 deletions
|
@ -1101,10 +1101,7 @@ reversed."
|
|||
(copy-keymap minibuffer-local-completion-map))
|
||||
beg end cont val)
|
||||
|
||||
(viper-add-keymap ex-read-filename-map
|
||||
(if (featurep 'emacs)
|
||||
minibuffer-local-completion-map
|
||||
read-file-name-map))
|
||||
(viper-add-keymap ex-read-filename-map minibuffer-local-completion-map)
|
||||
|
||||
(setq cont (setq viper-keep-reading-filename t))
|
||||
(while cont
|
||||
|
|
|
@ -62,9 +62,7 @@
|
|||
(defun viper-window-display-p ()
|
||||
(and (viper-device-type) (not (memq (viper-device-type) '(tty stream pc)))))
|
||||
|
||||
(defcustom viper-ms-style-os-p
|
||||
(memq system-type (if (featurep 'emacs) '(ms-dos windows-nt)
|
||||
'(ms-dos windows-nt windows-95)))
|
||||
(defcustom viper-ms-style-os-p (memq system-type '(ms-dos windows-nt))
|
||||
"Non-nil if Emacs is running under an MS-style OS: MS-DOS, or MS-Windows."
|
||||
:type 'boolean
|
||||
:tag "Is it Microsoft-made OS?"
|
||||
|
@ -89,8 +87,7 @@ In all likelihood, you don't need to bother with this setting."
|
|||
(cond ((viper-window-display-p))
|
||||
(viper-force-faces)
|
||||
((viper-color-display-p))
|
||||
((featurep 'emacs) (memq (viper-device-type) '(pc)))
|
||||
((featurep 'xemacs) (memq (viper-device-type) '(tty pc)))))
|
||||
(t (memq (viper-device-type) '(pc)))))
|
||||
|
||||
|
||||
;;; Macros
|
||||
|
@ -334,25 +331,12 @@ Use `\\[viper-set-expert-level]' to change this.")
|
|||
(or current-input-method default-input-method))
|
||||
"")))))
|
||||
|
||||
(defun viper-deactivate-input-method ()
|
||||
(cond ((and (featurep 'emacs) (fboundp 'deactivate-input-method))
|
||||
(deactivate-input-method))
|
||||
((and (featurep 'xemacs) (boundp 'current-input-method))
|
||||
;; XEmacs had broken quail-mode for some time, so we are working around
|
||||
;; it here
|
||||
(setq quail-mode nil)
|
||||
(if (featurep 'quail)
|
||||
(quail-delete-overlays))
|
||||
(setq describe-current-input-method-function nil)
|
||||
(setq current-input-method nil)
|
||||
(run-hooks 'input-method-deactivate-hook)
|
||||
(force-mode-line-update))
|
||||
))
|
||||
(define-obsolete-function-alias 'viper-deactivate-input-method
|
||||
#'deactivate-input-method "27.1")
|
||||
|
||||
(defun viper-activate-input-method ()
|
||||
(cond ((and (featurep 'emacs) (fboundp 'activate-input-method))
|
||||
(activate-input-method default-input-method))
|
||||
((featurep 'xemacs)
|
||||
(if (fboundp 'quail-mode) (quail-mode 1)))))
|
||||
(declare (obsolete activate-input-method "27.1"))
|
||||
(activate-input-method default-input-method))
|
||||
|
||||
;; Set quail-mode to ARG
|
||||
(defun viper-set-input-method (arg)
|
||||
|
@ -360,10 +344,9 @@ Use `\\[viper-set-expert-level]' to change this.")
|
|||
(let (viper-mule-hook-flag) ; temporarily deactivate viper mule hooks
|
||||
(cond ((and arg (> (prefix-numeric-value arg) 0) default-input-method)
|
||||
;; activate input method
|
||||
(viper-activate-input-method))
|
||||
(activate-input-method default-input-method))
|
||||
(t ; deactivate input method
|
||||
(viper-deactivate-input-method)))
|
||||
))
|
||||
(deactivate-input-method)))))
|
||||
|
||||
|
||||
;; VI-style Undo
|
||||
|
|
|
@ -166,30 +166,21 @@ Otherwise return the normal value."
|
|||
|
||||
(defun viper-get-saved-cursor-color-in-replace-mode ()
|
||||
(or
|
||||
(funcall
|
||||
(if (featurep 'emacs) 'frame-parameter 'frame-property)
|
||||
(selected-frame)
|
||||
'viper-saved-cursor-color-in-replace-mode)
|
||||
(frame-parameter (selected-frame) 'viper-saved-cursor-color-in-replace-mode)
|
||||
(or (and (eq viper-current-state 'emacs-mode)
|
||||
(viper-frame-value viper-emacs-state-cursor-color))
|
||||
(viper-frame-value viper-vi-state-cursor-color))))
|
||||
|
||||
(defun viper-get-saved-cursor-color-in-insert-mode ()
|
||||
(or
|
||||
(funcall
|
||||
(if (featurep 'emacs) 'frame-parameter 'frame-property)
|
||||
(selected-frame)
|
||||
'viper-saved-cursor-color-in-insert-mode)
|
||||
(frame-parameter (selected-frame) 'viper-saved-cursor-color-in-insert-mode)
|
||||
(or (and (eq viper-current-state 'emacs-mode)
|
||||
(viper-frame-value viper-emacs-state-cursor-color))
|
||||
(viper-frame-value viper-vi-state-cursor-color))))
|
||||
|
||||
(defun viper-get-saved-cursor-color-in-emacs-mode ()
|
||||
(or
|
||||
(funcall
|
||||
(if (featurep 'emacs) 'frame-parameter 'frame-property)
|
||||
(selected-frame)
|
||||
'viper-saved-cursor-color-in-emacs-mode)
|
||||
(frame-parameter (selected-frame) 'viper-saved-cursor-color-in-emacs-mode)
|
||||
(viper-frame-value viper-vi-state-cursor-color)))
|
||||
|
||||
;; restore cursor color from replace overlay
|
||||
|
@ -738,8 +729,7 @@ Otherwise return the normal value."
|
|||
(viper-move-replace-overlay beg end)
|
||||
(setq viper-replace-overlay (make-overlay beg end (current-buffer)))
|
||||
;; never detach
|
||||
(overlay-put
|
||||
viper-replace-overlay (if (featurep 'emacs) 'evaporate 'detachable) nil)
|
||||
(overlay-put viper-replace-overlay 'evaporate nil)
|
||||
(overlay-put
|
||||
viper-replace-overlay 'priority viper-replace-overlay-priority)
|
||||
;; If Emacs will start supporting overlay maps, as it currently supports
|
||||
|
@ -939,10 +929,10 @@ Otherwise return the normal value."
|
|||
(string-to-char key-name))
|
||||
;; Emacs doesn't recognize `return' and `escape' as events on
|
||||
;; dumb terminals, so we translate them into characters
|
||||
((and (featurep 'emacs) (not (viper-window-display-p))
|
||||
((and (not (viper-window-display-p))
|
||||
(string= key-name "return"))
|
||||
?\C-m)
|
||||
((and (featurep 'emacs) (not (viper-window-display-p))
|
||||
((and (not (viper-window-display-p))
|
||||
(string= key-name "escape"))
|
||||
?\e)
|
||||
;; pass symbol-event as is
|
||||
|
@ -978,41 +968,28 @@ Otherwise return the normal value."
|
|||
(define-obsolete-function-alias 'viper-eventify-list-xemacs 'ignore "27.1")
|
||||
|
||||
|
||||
;; Smooths out the difference between Emacs's unread-command-events
|
||||
;; and XEmacs unread-command-event. Arg is a character, an event, a list of
|
||||
;; events or a sequence of keys.
|
||||
;; Arg is a character, an event, a list of events or a sequence of
|
||||
;; keys.
|
||||
;;
|
||||
;; Due to the way unread-command-events in Emacs (not XEmacs), a non-event
|
||||
;; symbol in unread-command-events list may cause Emacs to turn this symbol
|
||||
;; into an event. Below, we delete nil from event lists, since nil is the most
|
||||
;; common symbol that might appear in this wrong context.
|
||||
;; Due to the way unread-command-events works in Emacs, a non-event
|
||||
;; symbol in unread-command-events list may cause Emacs to turn this
|
||||
;; symbol into an event. Below, we delete nil from event lists, since
|
||||
;; nil is the most common symbol that might appear in this wrong
|
||||
;; context.
|
||||
(defun viper-set-unread-command-events (arg)
|
||||
(if (featurep 'emacs)
|
||||
(setq
|
||||
unread-command-events
|
||||
(let ((new-events
|
||||
(cond ((eventp arg) (list arg))
|
||||
((listp arg) arg)
|
||||
((sequencep arg)
|
||||
(listify-key-sequence arg))
|
||||
(t (error
|
||||
"viper-set-unread-command-events: Invalid argument, %S"
|
||||
arg)))))
|
||||
(if (not (eventp nil))
|
||||
(setq new-events (delq nil new-events)))
|
||||
(append new-events unread-command-events)))
|
||||
;; XEmacs
|
||||
(setq
|
||||
unread-command-events
|
||||
(append
|
||||
(cond ((characterp arg) (list (character-to-event arg)))
|
||||
((eventp arg) (list arg))
|
||||
((stringp arg) (mapcar 'character-to-event arg))
|
||||
((vectorp arg) (append arg nil)) ; turn into list
|
||||
((listp arg) nil)
|
||||
(t (error
|
||||
"viper-set-unread-command-events: Invalid argument, %S" arg)))
|
||||
unread-command-events))))
|
||||
(setq
|
||||
unread-command-events
|
||||
(let ((new-events
|
||||
(cond ((eventp arg) (list arg))
|
||||
((listp arg) arg)
|
||||
((sequencep arg)
|
||||
(listify-key-sequence arg))
|
||||
(t (error
|
||||
"viper-set-unread-command-events: Invalid argument, %S"
|
||||
arg)))))
|
||||
(if (not (eventp nil))
|
||||
(setq new-events (delq nil new-events)))
|
||||
(append new-events unread-command-events))))
|
||||
|
||||
|
||||
;; Check if vec is a vector of key-press events representing characters
|
||||
|
|
|
@ -689,11 +689,10 @@ It also can't undo some Viper settings."
|
|||
(viper-standard-value 'major-mode
|
||||
viper-saved-non-viper-variables))
|
||||
|
||||
(if (featurep 'emacs)
|
||||
(setq-default
|
||||
mark-even-if-inactive
|
||||
(viper-standard-value
|
||||
'mark-even-if-inactive viper-saved-non-viper-variables)))
|
||||
(setq-default
|
||||
mark-even-if-inactive
|
||||
(viper-standard-value
|
||||
'mark-even-if-inactive viper-saved-non-viper-variables))
|
||||
|
||||
;; Ideally, we would like to be able to de-localize local variables
|
||||
(unless
|
||||
|
@ -1018,7 +1017,7 @@ Two differences:
|
|||
(lambda (orig-fun &rest args)
|
||||
"Adjust input-method toggling in vi-state."
|
||||
(if (and viper-special-input-method (eq viper-current-state 'vi-state))
|
||||
(viper-deactivate-input-method)
|
||||
(deactivate-input-method)
|
||||
(apply orig-fun args))))
|
||||
|
||||
) ; viper-set-hooks
|
||||
|
@ -1035,8 +1034,7 @@ Two differences:
|
|||
require-final-newline t)
|
||||
|
||||
;; don't bark when mark is inactive
|
||||
(if (featurep 'emacs)
|
||||
(setq mark-even-if-inactive t))
|
||||
(setq mark-even-if-inactive t)
|
||||
|
||||
(setq scroll-step 1)
|
||||
|
||||
|
@ -1134,9 +1132,7 @@ These two lines must come in the order given."))
|
|||
(cons 'mode-line-buffer-identification
|
||||
(list (default-value 'mode-line-buffer-identification)))
|
||||
(cons 'global-mode-string (list global-mode-string))
|
||||
(if (featurep 'emacs)
|
||||
(cons 'mark-even-if-inactive (list mark-even-if-inactive)))
|
||||
)))
|
||||
(cons 'mark-even-if-inactive (list mark-even-if-inactive)))))
|
||||
|
||||
|
||||
;; Set some useful macros, advices
|
||||
|
|
Loading…
Add table
Reference in a new issue