Fix electric-pair-mode/delete-selection-mode interaction.

* lisp/electric.el (electric-pair-post-self-insert-function): Fix pair
insertion in empty-region case.

Fixes: debbugs:11520
This commit is contained in:
Chong Yidong 2012-07-14 13:32:23 +08:00
parent 22e983b7ec
commit b5cf7fc45c
2 changed files with 11 additions and 5 deletions

View file

@ -1,3 +1,8 @@
2012-07-14 Chong Yidong <cyd@gnu.org>
* electric.el (electric-pair-post-self-insert-function): Fix pair
insertion in empty-region case (Bug#11520).
2012-07-14 Chong Yidong <cyd@gnu.org>
* bindings.el: Consolidate ctl-x-r-map bindings. Bind

View file

@ -322,12 +322,13 @@ This can be convenient for people who find it easier to hit ) than C-f."
((and (memq syntax '(?\( ?\" ?\$)) (use-region-p))
(if (> (mark) (point))
(goto-char (mark))
;; We already inserted the open-paren but at the end of the region,
;; so we have to remove it and start over.
(delete-char -1)
(save-excursion
;; We already inserted the open-paren but at the end of the
;; region, so we have to remove it and start over.
(delete-char -1)
(save-excursion
(goto-char (mark))
(insert last-command-event)))
;; Do not insert after `save-excursion' marker (Bug#11520).
(insert-before-markers last-command-event)))
(insert closer))
;; Backslash-escaped: no pairing, no skipping.
((save-excursion