Arash Esbati <[email protected]> writes:
> Arne, we have a bug report for AUCTeX where I found that the function
> `latexenc-find-file-coding-system' can't deal with `TeX-master' or
> `tex-main-file' set to a constant string in the init file and not as
> file local variable. I'm not really familiar with your code, but the
> following small change is reported to fix the issue, at least for
> AUCTeX:
My apologies, my last proposal was broken, please consider the one
attached.
Best, Arash
diff --git a/lisp/international/latexenc.el b/lisp/international/latexenc.el
index 1b735810ee4..805a74c52c5 100644
--- a/lisp/international/latexenc.el
+++ b/lisp/international/latexenc.el
@@ -144,17 +144,26 @@ latexenc-find-file-coding-system
(file-name-directory (nth 1 arg-list))
default-directory))
latexenc-main-file)
- ;; Is there a TeX-master or tex-main-file in the local variables
- ;; section?
+ ;; Is there a TeX-master or tex-main-file in the local
+ ;; variables section or is it globally set to a constant
+ ;; string?
(unless latexenc-dont-use-TeX-master-flag
(goto-char (point-max))
(search-backward "\n\^L" (max (- (point-max) 3000) (point-min))
'move)
(search-forward "Local Variables:" nil t)
- (when (re-search-forward
- "^%+ *\\(TeX-master\\|tex-main-file\\): *\"\\(.+\\)\""
- nil t)
- (let ((file (match-string 2)))
+ (when (or (re-search-forward
+ "^%+ *\\(TeX-master\\|tex-main-file\\): *\"\\(.+\\)\""
+ nil t)
+ (and (bound-and-true-p TeX-master)
+ (stringp (default-value 'TeX-master)))
+ (and (bound-and-true-p tex-main-file)
+ (stringp (default-value 'tex-main-file))))
+ (let ((file (or (match-string 2)
+ (and (boundp 'TeX-master)
+ (default-value 'TeX-master))
+ (and (boundp 'tex-main-file)
+ (default-value 'tex-main-file)))))
(dolist (ext `("" ,(if (boundp 'TeX-default-extension)
(concat "." TeX-default-extension)
"")
_______________________________________________
bug-auctex mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-auctex