summaryrefslogtreecommitdiff
path: root/lisp/emulation/viper-util.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/emulation/viper-util.el')
-rw-r--r--lisp/emulation/viper-util.el8
1 files changed, 6 insertions, 2 deletions
diff --git a/lisp/emulation/viper-util.el b/lisp/emulation/viper-util.el
index 70daa478bae..059e840d3a4 100644
--- a/lisp/emulation/viper-util.el
+++ b/lisp/emulation/viper-util.el
@@ -249,9 +249,12 @@ that Viper doesn't know about.")
(not (string= color vip-replace-overlay-cursor-color)))
(vip-overlay-put vip-replace-overlay 'vip-cursor-color color)))))
-(defsubst vip-restore-cursor-color ()
+;; restore cursor color from replace overlay
+(defsubst vip-restore-cursor-color-after-replace ()
(vip-change-cursor-color
(vip-overlay-get vip-replace-overlay 'vip-cursor-color)))
+(defsubst vip-restore-cursor-color-after-insert ()
+ (vip-change-cursor-color vip-saved-cursor-color))
;; Check the current version against the major and minor version numbers
@@ -789,7 +792,8 @@ to write a custom function, similar to `vip-ex-nontrivial-find-file-unix'."
(defsubst vip-hide-replace-overlay ()
(vip-set-replace-overlay-glyphs nil nil)
- (vip-restore-cursor-color)
+ (vip-restore-cursor-color-after-replace)
+ (vip-restore-cursor-color-after-insert)
(if (vip-has-face-support-p)
(vip-overlay-put vip-replace-overlay 'face nil)))