[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] elpa d4d2ab5 31/51: Enable directory local variables in japanese-
From: |
Tassilo Horn |
Subject: |
[elpa] elpa d4d2ab5 31/51: Enable directory local variables in japanese-{latex, plain-tex}-mode |
Date: |
Sun, 22 May 2016 07:22:49 +0000 (UTC) |
branch: elpa
commit d4d2ab537ff08f09ae5587aeb1e2e937f7cecfa3
Author: Ikumi Keita <address@hidden>
Commit: Mosè Giordano <address@hidden>
Enable directory local variables in japanese-{latex, plain-tex}-mode
* tex-jp.el (japanese-latex-mode-initialization): Set
`major-mode' to `japanese-latex-mode' and reset it to
`latex-mode' after `hack-local-variables' is done.
(japanese-plain-tex-mode-initialization): Similar changes
for `japanese-plain-tex-mode'.
(japanese-TeX-reset-mode-name): New function.
(top-level) Make `latex-mode' is regarded as parent of
`japanese-latex-mode' in directory local variables. Similar
addition for `japanese-plain-tex-mode', too.
Signed-off-by: Mosè Giordano <address@hidden>
---
tex-jp.el | 41 +++++++++++++++++++++++++++++++++++++++--
1 file changed, 39 insertions(+), 2 deletions(-)
diff --git a/tex-jp.el b/tex-jp.el
index 75b49b2..bdb1185 100644
--- a/tex-jp.el
+++ b/tex-jp.el
@@ -399,7 +399,13 @@ Set `japanese-TeX-mode' to t, and enter
`TeX-plain-tex-mode'."
"Japanese plain-TeX specific initializations."
(when japanese-TeX-mode
; (setq TeX-command-default japanese-TeX-command-default)
- (TeX-engine-set japanese-TeX-engine-default)))
+ (TeX-engine-set japanese-TeX-engine-default)
+
+ ;; For the intent of the following lines, see the comments below
+ ;; in `japanese-latex-mode-initialization'.
+ (setq major-mode 'japanese-plain-tex-mode)
+ (add-hook 'hack-local-variables-hook 'japanese-TeX-reset-mode-name
+ nil t)))
(add-hook 'plain-TeX-mode-hook 'japanese-plain-tex-mode-initialization)
@@ -431,10 +437,41 @@ Set `japanese-TeX-mode' to t, and enter `TeX-latex-mode'."
; (setq TeX-command-BibTeX
; (if (and (eq TeX-engine 'ptex) (executable-find "pbibtex"))
; "pBibTeX" "jBibTeX"))
-))
+
+ ;; The value of `major-mode' should be `latex-mode', not
+ ;; `japanese-latex-mode', because the name `latex-mode' is hard
+ ;; coded in several places of AUCTeX like "(eq major-mode
+ ;; 'latex-mode)", "(memq major-mode '(doctex-mode latex-mode)" and
+ ;; so on. By such piece of codes, `japanese-latex-mode' should
+ ;; simply be regarded as `latex-mode'. So we'd like to leave
+ ;; `major-mode' as `latex-mode' here, but doing so confuses
+ ;; `hack-local-variables' in two ways.
+ ;; (1) It is tricked into considering that the major mode is not
+ ;; yet initialized and calls `japanese-latex-mode' again.
+ ;; (2) It does not read the directory local variables prepared for
+ ;; `japanese-latex-mode'.
+ ;; Thus we temporarily set `major-mode' to `japanese-latex-mode'
+ ;; here and plan to reset it to `latex-mode' after
+ ;; `hack-local-variables' is done.
+ (setq major-mode 'japanese-latex-mode)
+ (add-hook 'hack-local-variables-hook 'japanese-TeX-reset-mode-name
+ nil t)))
(add-hook 'LaTeX-mode-hook 'japanese-latex-mode-initialization)
+;; This function is useful only within `hack-local-variables-hook'.
+(defun japanese-TeX-reset-mode-name ()
+ (cond ((eq major-mode 'japanese-latex-mode)
+ (setq major-mode 'latex-mode))
+ ((eq major-mode 'japanese-plain-tex-mode)
+ (setq major-mode 'plain-tex-mode)))
+ (remove-hook 'hack-local-variables-hook 'japanese-TeX-reset-mode-name t))
+
+;; Make `hack-dir-local-variables' to regard `latex-mode' as parent
+;; of `japanese-latex-mode', and `plain-tex-mode' as parent of
+;; `japanese-plain-tex-mode'.
+(put 'japanese-plain-tex-mode 'derived-mode-parent 'plain-tex-mode)
+(put 'japanese-latex-mode 'derived-mode-parent 'latex-mode)
;;; Support for various self-insert-command
- [elpa] elpa 84dfb76 13/51: Do not use add-to-list for let-bound variable, (continued)
- [elpa] elpa 84dfb76 13/51: Do not use add-to-list for let-bound variable, Tassilo Horn, 2016/05/22
- [elpa] elpa de0d445 07/51: TikZ: Add optional parameter to `TeX-TikZ-single-macro-arg'., Tassilo Horn, 2016/05/22
- [elpa] elpa 44e654b 22/51: Use `match-string-no-properties', Tassilo Horn, 2016/05/22
- [elpa] elpa 36b6051 12/51: Compatibility for XEmacs, Tassilo Horn, 2016/05/22
- [elpa] elpa af27d33 17/51: TikZ: Add the grid command., Tassilo Horn, 2016/05/22
- [elpa] elpa bc8d07f 27/51: Temporarily bind `TeX-insert-macro-default-style' to 'show-optional-args', Tassilo Horn, 2016/05/22
- [elpa] elpa 88fbf80 20/51: Fix in TeX sentinels, Tassilo Horn, 2016/05/22
- [elpa] elpa 693eee6 11/51: TikZ: Remove unneeded function., Tassilo Horn, 2016/05/22
- [elpa] elpa b20cd68 16/51: Fix a documentation type., Tassilo Horn, 2016/05/22
- [elpa] elpa 71349ec 23/51: Use `deactivate-input-method' if defined, Tassilo Horn, 2016/05/22
- [elpa] elpa d4d2ab5 31/51: Enable directory local variables in japanese-{latex, plain-tex}-mode,
Tassilo Horn <=
- [elpa] elpa 63a83c3 30/51: Make unloading of tex-site work on Emacs 24, Tassilo Horn, 2016/05/22
- [elpa] elpa 5886c49 41/51: Improve the insertation of "macro" environment, Tassilo Horn, 2016/05/22
- [elpa] elpa e19f8bd 37/51: Do not check TeX engine with ifluatex package, Tassilo Horn, 2016/05/22
- [elpa] elpa 79a8643 47/51: Respect both "xcolor" and "color" for command queries, Tassilo Horn, 2016/05/22
- [elpa] elpa ccfe316 42/51: Make TeX-view work better with regions, Tassilo Horn, 2016/05/22
- [elpa] elpa d418e9a 15/51: Prevent infinite loop in TeX-command-expand, Tassilo Horn, 2016/05/22
- [elpa] elpa 4f9666b 24/51: Use customize option `TeX-region' instead of "_region_", Tassilo Horn, 2016/05/22
- [elpa] elpa a83c4d0 02/51: Fix compatibility with older Emacs versions, Tassilo Horn, 2016/05/22
- [elpa] elpa 13153ba 40/51: Use commit date for package date also in configure, Tassilo Horn, 2016/05/22
- [elpa] elpa 7fc63f1 39/51: Tweak mode name only when file local variable is enabled., Tassilo Horn, 2016/05/22