[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/auctex 997bff87d2 23/43: Retain compatibility for direc
From: |
Tassilo Horn |
Subject: |
[elpa] externals/auctex 997bff87d2 23/43: Retain compatibility for directory local variables |
Date: |
Wed, 7 Feb 2024 06:07:11 -0500 (EST) |
branch: externals/auctex
commit 997bff87d2d3e5a2162978f424ef6629335cc985
Author: Ikumi Keita <ikumi@ikumi.que.jp>
Commit: Ikumi Keita <ikumi@ikumi.que.jp>
Retain compatibility for directory local variables
Incorporate new facility implemented in Emacs 30.
* tex.el (TeX-derived-mode-add-parents): Copy of new function in Emacs
30.
(TeX--compat-derived-mode-p): New function to complement
`derived-mode-p' before Emacs 30.
* context.el:
* latex.el:
* plain-tex.el:
* tex-jp.el:
Use `TeX-derived-mode-add-parents'.
---
context.el | 5 +++++
latex.el | 10 ++++++++++
plain-tex.el | 11 +++++++++++
tex-jp.el | 12 ++++++++++++
tex.el | 25 +++++++++++++++++++++++++
5 files changed, 63 insertions(+)
diff --git a/context.el b/context.el
index df3ed2b953..fe1e02c146 100644
--- a/context.el
+++ b/context.el
@@ -1956,6 +1956,11 @@ of `ConTeXt-mode-hook'."
;; set mode line
(setq TeX-base-mode-name mode-name))
+;; Compatibility for former mode name. Directory local variables
+;; prepared for `context-mode' continue to be valid for
+;; `ConTeXt-mode'.
+(TeX-derived-mode-add-parents 'ConTeXt-mode '(context-mode))
+
(provide 'context)
;;; context.el ends here
diff --git a/latex.el b/latex.el
index e9b08cc1b8..92ecdac2e8 100644
--- a/latex.el
+++ b/latex.el
@@ -8087,6 +8087,10 @@ Run after mode hooks and file local variables
application."
;;;###autoload
(put 'LaTeX-mode 'auctex-function-definition (symbol-function 'LaTeX-mode))
+;; Compatibility for former mode name. Directory local variables
+;; prepared for `latex-mode' continue to be valid for `LaTeX-mode'.
+(TeX-derived-mode-add-parents 'LaTeX-mode '(latex-mode))
+
(with-eval-after-load 'semantic/symref/grep
(push '(docTeX-mode "*.dtx") semantic-symref-filepattern-alist))
@@ -8118,6 +8122,12 @@ runs the hooks in `docTeX-mode-hook'."
(setq font-lock-set-defaults nil)
(funcall TeX-install-font-lock))
+;; Compatibility for former mode name. Directory local variables
+;; prepared for `doctex-mode' continue to be valid for `docTeX-mode'.
+;; In addition, dir local vars for `latex-mode' are now valid for
+;; `docTeX-mode' as well.
+(TeX-derived-mode-add-parents 'docTeX-mode '(doctex-mode latex-mode))
+
(defcustom docTeX-clean-intermediate-suffixes
TeX-clean-default-intermediate-suffixes
"List of regexps matching suffixes of files to be deleted.
diff --git a/plain-tex.el b/plain-tex.el
index 6e4ddf7c03..779c30a0d9 100644
--- a/plain-tex.el
+++ b/plain-tex.el
@@ -148,6 +148,11 @@ Run after mode hooks and file local variables application."
;;;###autoload
(put 'plain-TeX-mode 'auctex-function-definition (symbol-function
'plain-TeX-mode))
+;; Compatibility for former mode name. Directory local variables
+;; prepared for `plain-tex-mode' continue to be valid for
+;; `plain-TeX-mode'.
+(TeX-derived-mode-add-parents 'plain-TeX-mode '(plain-tex-mode))
+
(defun plain-TeX-common-initialization ()
"Common initialization for plain TeX like modes."
(set (make-local-variable 'TeX-style-hook-dialect) plain-TeX-dialect)
@@ -321,6 +326,12 @@ value of `AmSTeX-mode-hook'."
;;;###autoload
(defalias 'ams-tex-mode #'AmSTeX-mode)
+;; Compatibility for former mode name. Directory local variables
+;; prepared for `ams-tex-mode' continue to be valid for `AmSTeX-mode'.
+;; In addition, dir local vars for `plain-tex-mode' are now valid for
+;; `AmSTeX-mode' as well.
+(TeX-derived-mode-add-parents 'AmSTeX-mode '(ams-tex-mode plain-tex-mode))
+
(defcustom AmSTeX-clean-intermediate-suffixes
TeX-clean-default-intermediate-suffixes
"List of regexps matching suffixes of intermediate files to be deleted.
diff --git a/tex-jp.el b/tex-jp.el
index ff562e225c..a9de222622 100644
--- a/tex-jp.el
+++ b/tex-jp.el
@@ -425,6 +425,12 @@ Now `japanese-plain-tex-mode-initialization' is no-op.
Don't use it."))
;;;###autoload
(defalias 'japanese-plain-tex-mode #'japanese-plain-TeX-mode)
+;; Compatibility for former mode name. Directory local variables
+;; prepared for `japanese-plain-tex-mode' and `plain-tex-mode'
+;; continue to be valid for `japanese-plain-TeX-mode'.
+(TeX-derived-mode-add-parents 'japanese-plain-TeX-mode
+ '(japanese-plain-tex-mode plain-tex-mode))
+
;;;###autoload
(define-derived-mode japanese-LaTeX-mode LaTeX-mode "LaTeX"
"Major mode in AUCTeX for editing Japanese LaTeX files."
@@ -471,6 +477,12 @@ Now `japanese-latex-mode-initialization' is no-op. Don't
use it."))
;;;###autoload
(defalias 'japanese-latex-mode #'japanese-LaTeX-mode)
+;; Compatibility for former mode name. Directory local variables
+;; prepared for `japanese-latex-mode' and `latex-mode' continue to be
+;; valid for `japanese-LaTeX-mode'.
+(TeX-derived-mode-add-parents 'japanese-LaTeX-mode
+ '(japanese-latex-mode latex-mode))
+
(defun japanese-LaTeX-guess-engine ()
"Guess Japanese TeX engine and set it to `TeX-engine'.
Document class and its option are taken into account. Do not
diff --git a/tex.el b/tex.el
index d4fded7323..10bdf838ff 100644
--- a/tex.el
+++ b/tex.el
@@ -3875,6 +3875,21 @@ Run after mode hooks and file local variables
application."
;;;###autoload
(put 'TeX-mode 'auctex-function-definition (symbol-function 'TeX-mode))
+;; COMPATIBILITY for Emacs<30
+(unless (fboundp 'derived-mode-add-parents)
+ (advice-add 'derived-mode-p :after-until
+ ;; Don't quote by #'-style to avoid compiler warning.
+ 'TeX--compat-derived-mode-p)
+ (defun TeX--compat-derived-mode-p (&rest modes)
+ "Add pseudo-parents facility to `derived-mode-p' like Emacs 30.
+Modes registered in `derived-mode-extra-parents' property of the
+current major mode name symbol are regarded as parent modes as
+long as `derived-mode-p' is concerned."
+ (let ((extra-parents (get major-mode 'derived-mode-extra-parents)))
+ (and extra-parents
+ (cl-loop for parent in extra-parents
+ thereis (memq parent modes))))))
+
;;; Hilighting
;; FIXME: It's likely that `hilit-patterns-alist' is much obsolete.
@@ -4828,6 +4843,16 @@ Also see `ignore'.
This is a compatibility function for Emacs versions prior to v.28."
t))
+;; COMPATIBILITY for Emacs<30
+(if (fboundp 'derived-mode-add-parents)
+ (defalias 'TeX-derived-mode-add-parents #'derived-mode-add-parents)
+ ;; Adapted copy of `derived-mode-add-parents'.
+ (defun TeX-derived-mode-add-parents (mode extra-parents)
+ "Add EXTRA-PARENTS to the parents of MODE.
+Declares the parents of MODE to be its main parent (as defined
+in `define-derived-mode') plus EXTRA-PARENTS."
+ (put mode 'derived-mode-extra-parents extra-parents)))
+
(defun TeX-match-buffer (n)
"Return the substring corresponding to the N'th match.
See `match-data' for details."
- [elpa] externals/auctex 96cad45213 31/43: ; Use `defvar-local', (continued)
- [elpa] externals/auctex 96cad45213 31/43: ; Use `defvar-local', Tassilo Horn, 2024/02/07
- [elpa] externals/auctex ef86afdac5 06/43: Commit for initialization codes, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex f41fbc0eac 18/43: Improve mode cleanup functions, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 994079d8cd 15/43: Delete ConTeXt-xx-mode experimentally, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 48cc506998 33/43: Merge branch 'feature/fix-mode-names-overlap', Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 94127f5e10 37/43: Make banner regexp customizable, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 5bd8ca03ff 13/43: ; * tex-jp.el (japanese-plain-TeX-mode): Fix mode lighter., Tassilo Horn, 2024/02/07
- [elpa] externals/auctex d7f1d28159 32/43: ; * tex.el (TeX-auto-parse-length): Fix Typo., Tassilo Horn, 2024/02/07
- [elpa] externals/auctex f9fc9619a1 35/43: ; Replace keyword wp with text, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 5b61f6c563 42/43: Merge remote-tracking branch 'origin/master' into externals/auctex, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 997bff87d2 23/43: Retain compatibility for directory local variables,
Tassilo Horn <=
- [elpa] externals/auctex ba27accea2 41/43: ; * doc/auctex.texi (Environments): Mention prefix argument., Tassilo Horn, 2024/02/07
- [elpa] externals/auctex ae43b62283 03/43: Commit for ConTeXt modes, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 5b50b1e2da 29/43: Set the safe-local-variable property with the :safe keyword, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex a6e53e53d8 09/43: Refine management of mode redirection, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 52f903a4e9 08/43: Take care of `unload-feature', Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 9c850abddf 28/43: Lift required GNU Emacs version to 27.1, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 938e82ed8e 01/43: Commit for plain TeX and AmS-TeX, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 798b1fae86 39/43: Support starred version of VerbatimInput macros, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex e073809830 04/43: Commit for LaTeX mode and docTeX mode, Tassilo Horn, 2024/02/07
- [elpa] externals/auctex 26e786af63 40/43: Annotate labels during completion, Tassilo Horn, 2024/02/07