Hi Philip,
>>>>> Philip Kaludercic <[email protected]> writes:
> an annoyance I have with auctex is it's interaction with
> electric-pair-mode. If both LaTeX-electric-left-right-brace and
> electric-pair-mode are enabled, typing '(' inserts "())", because both
> AucTeX and the electric function insert a closing parentheses. I still
> want to keep LaTeX-electric-left-right-brace enabled, because it handles
> TeX-specific parentheses (\{, \left <something>, ...) better.
AUCTeX already has the following code in `LaTeX-common-initialization'
to turn off `electric-pair-mode' explicitly. So I guess you customize
`LaTeX-mode-hook' to re-enable `electric-pair-mode'.
;; AUCTeX's brace pairing feature (`LaTeX-electric-left-right-brace') doesn't
;; play nice with `electric-pair-mode' which is a global minor mode as of
;; emacs 24.4.
(when (and LaTeX-electric-left-right-brace
(boundp 'electric-pair-mode))
(set (make-local-variable 'electric-pair-mode) nil))
> The attached patch would propose a solution that respects
> electric-pair-mode and doesn't insert an extra closing pair if
> enabled. It seems to work on my system, and if there are no issues it
> would be great if something along these lines could be done to avoid
> this behaviour.
Thanks. Maybe the attached patch might be better so that
`LaTeX-insert-left-brace' can get rid of all unexpected interactions
with `self-insert-command'. Tassilo, what do you think about it?
Regards,
Ikumi Keita
diff --git a/latex.el b/latex.el
index 83d50caf..7e14de75 100644
--- a/latex.el
+++ b/latex.el
@@ -2899,7 +2899,7 @@ Normally bound to keys \(, { and [."
(TeX-active-mark)
(> (point) (mark)))
(exchange-point-and-mark))
- (self-insert-command (prefix-numeric-value arg))
+ (insert (make-string (prefix-numeric-value arg) last-command-event))
(if auto-p
(let ((lbrace (char-to-string last-command-event)) lmacro skip-p)
(save-excursion
@@ -6810,13 +6810,6 @@ function would return non-nil and `(match-string 1)' would return
(define-key LaTeX-mode-map "\C-xne" #'LaTeX-narrow-to-environment)
- ;; AUCTeX's brace pairing feature (`LaTeX-electric-left-right-brace') doesn't
- ;; play nice with `electric-pair-mode' which is a global minor mode as of
- ;; emacs 24.4.
- (when (and LaTeX-electric-left-right-brace
- (boundp 'electric-pair-mode))
- (set (make-local-variable 'electric-pair-mode) nil))
-
;; Initialization of `add-log-current-defun-function':
(set (make-local-variable 'add-log-current-defun-function)
#'TeX-current-defun-name))
_______________________________________________
bug-auctex mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-auctex