summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lisp/ravi-init-cpp.el3
-rw-r--r--lisp/ravi-init-navigation.el8
2 files changed, 11 insertions, 0 deletions
diff --git a/lisp/ravi-init-cpp.el b/lisp/ravi-init-cpp.el
index 684db1f..520f13f 100644
--- a/lisp/ravi-init-cpp.el
+++ b/lisp/ravi-init-cpp.el
@@ -271,6 +271,9 @@
(add-hook 'c++-mode-hook 'my-c++-mode-hook))
(ravi/c++-hook-adder)
+ ;; Annoyance in emacs 25.1+: c-tnt-chng-cleanup calls set-mark/deactivate-mark
+ (advice-add 'c-tnt-chng-cleanup :around #'ravi/without-region-bindings-mode)
+
;; Stuff from kde-emacs
(defvar kde-header-protection-parts-to-show 1
"Set this variable to the number of parts from the file name you want to
diff --git a/lisp/ravi-init-navigation.el b/lisp/ravi-init-navigation.el
index 91ac091..c3bfbd0 100644
--- a/lisp/ravi-init-navigation.el
+++ b/lisp/ravi-init-navigation.el
@@ -39,6 +39,14 @@
;; Most of the time, we mark regions to copy
(bind-key "w" 'kill-ring-save region-bindings-mode-map)
+
+ (defun ravi/is-region-bindings-mode-disabled ()
+ (bound-and-true-p ravi/disable-region-bindings-mode))
+ (add-to-list 'region-bindings-mode-disable-predicates 'ravi/is-region-bindings-mode-disabled)
+ (defun ravi/without-region-bindings-mode (orig-func &rest args)
+ (let* ((ravi/disable-region-bindings-mode t)
+ (res (apply orig-func args)))
+ res))
)
:ensure t
)