diff options
| author | Ravi R Kiran <aine.marina@gmail.com> | 2017-03-06 03:53:34 (GMT) |
|---|---|---|
| committer | Ravi R Kiran <aine.marina@gmail.com> | 2017-03-06 04:09:01 (GMT) |
| commit | e7a7fbcca259826879646b6043b304599b2988b7 (patch) | |
| tree | 1d773570a7b8511917c322824fd76a393b009af0 | |
| parent | 6fc960567f4bb6ed85d9f25848a391aa3f3479e3 (diff) | |
| download | dotemacs-e7a7fbcca259826879646b6043b304599b2988b7.zip dotemacs-e7a7fbcca259826879646b6043b304599b2988b7.tar.gz dotemacs-e7a7fbcca259826879646b6043b304599b2988b7.tar.bz2 | |
Fix region-bindings mode cc mode interaction
| -rw-r--r-- | lisp/ravi-init-cpp.el | 3 | ||||
| -rw-r--r-- | lisp/ravi-init-navigation.el | 8 |
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 ) |
