emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/auctex 686366e 48/80: ; Add Emacs 24 compatibility to t


From: Tassilo Horn
Subject: [elpa] externals/auctex 686366e 48/80: ; Add Emacs 24 compatibility to the previous commit
Date: Wed, 16 Oct 2019 11:07:15 -0400 (EDT)

branch: externals/auctex
commit 686366eebe9668b702b9f1db9859b45e0f2b4ba7
Author: Ikumi Keita <address@hidden>
Commit: Ikumi Keita <address@hidden>

    ; Add Emacs 24 compatibility to the previous commit
    
    * latex.el (LaTeX-insert-left-brace): Don't add lambda function as
    `delete-selection' property for Emacs < 24.3.
---
 latex.el | 42 ++++++++++++++++++++++++------------------
 1 file changed, 24 insertions(+), 18 deletions(-)

diff --git a/latex.el b/latex.el
index 760c42a..17a4462 100644
--- a/latex.el
+++ b/latex.el
@@ -2834,24 +2834,30 @@ Normally bound to keys \(, { and [."
 ;; Cater for `delete-selection-mode' (bug#36385)
 ;; See the header comment of delsel.el for detail.
 (put #'LaTeX-insert-left-brace 'delete-selection
-     (lambda ()
-       ;; Consult `delete-selection' property when
-       ;; `LaTeX-insert-left-brace' works just the same as
-       ;; `self-insert-command'.
-       (and (or (not LaTeX-electric-left-right-brace)
-               current-prefix-arg)
-           (let ((f (get #'self-insert-command 'delete-selection)))
-             ;; If `delete-selection' property of
-             ;; `self-insert-command' is one of the predefined
-             ;; special symbols, just return itself.
-             (if (memq f '(yank supersede kill t nil))
-                 ;; FIXME: if this list of special symbols is
-                 ;; extended in future delsel.el, this discrimination
-                 ;; will become wrong.
-                 f
-               ;; Otherwise, call it as a function and return
-               ;; its value.
-               (funcall f))))))
+     ;; COMPATIBILITY for Emacs < 24.3
+     (if (and (= emacs-major-version 24)
+             (< emacs-minor-version 3))
+        ;; Emacs < 24.3 doesn't support a function as value of
+        ;; `delete-selection' property.
+        nil
+       (lambda ()
+        ;; Consult `delete-selection' property when
+        ;; `LaTeX-insert-left-brace' works just the same as
+        ;; `self-insert-command'.
+        (and (or (not LaTeX-electric-left-right-brace)
+                 current-prefix-arg)
+             (let ((f (get #'self-insert-command 'delete-selection)))
+               ;; If `delete-selection' property of
+               ;; `self-insert-command' is one of the predefined
+               ;; special symbols, just return itself.
+               (if (memq f '(yank supersede kill t nil))
+                   ;; FIXME: if this list of special symbols is
+                   ;; extended in future delsel.el, this discrimination
+                   ;; will become wrong.
+                   f
+                 ;; Otherwise, call it as a function and return
+                 ;; its value.
+                 (funcall f)))))))
 
 (defun LaTeX-insert-corresponding-right-macro-and-brace
   (lmacro lbrace &optional optional prompt)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]