summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Guerry <bzg@altern.org>2013-12-07 08:17:33 +0100
committerBastien Guerry <bzg@altern.org>2013-12-07 08:17:33 +0100
commit7fe99af695e78f66a732127fa9e2d88351df0f4d (patch)
tree9eba0e20732057995bd65a8a056c09c7062ce78a
parentba20e937aecd58f8c2d2e7517212cc18aed3c8e7 (diff)
downloadorg-mode-7fe99af695e78f66a732127fa9e2d88351df0f4d.tar.gz
Fix bug when using both electric-pair-mode and delete-selection-mode
* org.el (org-self-insert-command) (orgtbl-self-insert-command): Change the value of the `delete-selection' property to allow other commands like `electric-pair-will-use-region' to be run before deletion. Thanks to Harald Hanche-Olsen for reporting this.
-rw-r--r--lisp/org.el10
1 files changed, 8 insertions, 2 deletions
diff --git a/lisp/org.el b/lisp/org.el
index adaabeb..0f96589 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -19489,8 +19489,14 @@ because, in this case the deletion might narrow the column."
(org-fix-tags-on-the-fly))))
;; Make `delete-selection-mode' work with org-mode and orgtbl-mode
-(put 'org-self-insert-command 'delete-selection t)
-(put 'orgtbl-self-insert-command 'delete-selection t)
+(put 'org-self-insert-command 'delete-selection
+ (lambda ()
+ (not (run-hook-with-args-until-success
+ 'self-insert-uses-region-functions))))
+(put 'orgtbl-self-insert-command 'delete-selection
+ (lambda ()
+ (not (run-hook-with-args-until-success
+ 'self-insert-uses-region-functions))))
(put 'org-delete-char 'delete-selection 'supersede)
(put 'org-delete-backward-char 'delete-selection 'supersede)
(put 'org-yank 'delete-selection 'yank)