GNU bug report logs - #78841
reftex-get-bibfile-list fails to detect biblatex if there's no buffer for the main file

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: auctex; Reported by: Tim Ruffing <dev@HIDDEN>; dated Thu, 19 Jun 2025 19:29:04 UTC; Maintainer for auctex is bug-auctex@HIDDEN.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 7 Jul 2025 18:45:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jul 07 14:45:23 2025
Received: from localhost ([127.0.0.1]:37845 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uYqqB-0001i8-EG
	for submit <at> debbugs.gnu.org; Mon, 07 Jul 2025 14:45:23 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:53476)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1uYqq9-0001KU-4d
 for 78841 <at> debbugs.gnu.org; Mon, 07 Jul 2025 14:45:21 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <arash@HIDDEN>)
 id 1uYqq1-0007Yo-BJ; Mon, 07 Jul 2025 14:45:13 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=0+aQUCImxWzUBSlKp9nL9SqBFHDAhqwc5WidL9MkY6Y=; b=g/d/pKbJlW7MveGbtoIb
 YCX/hIveTt1khjRQjWwy42edGIit5SNM5VzxVYZS5Y6oDFig9byx95vbR7aV1faS2EaDMgrBvZHTm
 TcpFRnrzx/hz9QTcq4MWOGt/QbaQOczMS7N+Nl6WP7rEExZzlhXU1mm9Z2isZmfvfOGXQwAPBTh6v
 6HcGoo9QehZwKOiUFw2ydhp1/14DNai+USh8TYt3mfzFvRRbgbW+nu/2ZrzUfDiQ4MnscbMUT+N5R
 OzXrgxurv+KhwEWu3EU/OH3iwhBXDCca3TxXf8UYB3NM3crtPEoxmH4zrme1FGQBUtc0Hx60L2bpx
 a+B39q6b50lSjA==;
From: Arash Esbati <arash@HIDDEN>
To: "Paul D. Nelson" <ultrono@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
In-Reply-To: <uxsg7t1pqr7vso.fsf@HIDDEN>
References: <uxsg7t1pqr7vso.fsf@HIDDEN>
Date: Mon, 07 Jul 2025 20:45:09 +0200
Message-ID: <m2bjpvhmbu.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78841
Cc: arne@HIDDEN, dev@HIDDEN, 78841 <at> debbugs.gnu.org,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Hi Paul,

"Paul D. Nelson" <ultrono@HIDDEN> writes:

> With this commit, when I try to open any .tex file (existing or not), I
> get "(wrong-type-argument sequencep t)" errors like those in the
> attached backtrace (reproduced with emacs -Q).  My TeX-master value is
> t.  The patch below seems to do the trick

Thanks for raising this.  You're right, I missed to cater for that case.
I think the following change fixes this and is more concise.  Can you
install it locally and give it a roll?  TIA.

--8<---------------cut here---------------start------------->8---
diff --git a/lisp/international/latexenc.el b/lisp/international/latexenc.el
index fea5be6dbd7..9955c0fb569 100644
--- a/lisp/international/latexenc.el
+++ b/lisp/international/latexenc.el
@@ -156,7 +156,8 @@ latexenc-find-file-coding-system
                                "^%+ *\\(TeX-master\\|tex-main-file\\): *\"\\(.+\\)\""
                                nil t)
                               (match-string 2)
-                            (or (bound-and-true-p TeX-master)
+                            (or (and (bound-and-true-p TeX-master)
+                                     (stringp TeX-master))
                                 (bound-and-true-p tex-main-file)))))
                 (dolist (ext `("" ,(if (boundp 'TeX-default-extension)
                                        (concat "." TeX-default-extension)
--8<---------------cut here---------------end--------------->8---

> (but I'll confess that I haven't studied the "big picture" here).

No worries, same here.

Best, Arash




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 7 Jul 2025 17:31:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jul 07 13:31:01 2025
Received: from localhost ([127.0.0.1]:37559 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uYpgB-0002nT-NL
	for submit <at> debbugs.gnu.org; Mon, 07 Jul 2025 13:31:01 -0400
Received: from mail-lf1-x12d.google.com ([2a00:1450:4864:20::12d]:53441)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <ultrono@HIDDEN>) id 1uYpg8-0002mT-0M
 for 78841 <at> debbugs.gnu.org; Mon, 07 Jul 2025 13:30:57 -0400
Received: by mail-lf1-x12d.google.com with SMTP id
 2adb3069b0e04-5562838ce68so3343884e87.2
 for <78841 <at> debbugs.gnu.org>; Mon, 07 Jul 2025 10:30:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1751909449; x=1752514249; darn=debbugs.gnu.org;
 h=mime-version:message-id:date:in-reply-to:subject:cc:to:from:from:to
 :cc:subject:date:message-id:reply-to;
 bh=cn77E2J977h+MOKkbkenjn9oDFTpowP9FyZMWRq9zCw=;
 b=KIYUQNAS67RivLvjTVvOup52IbkZQLau54AzQqne+0+ZdgwD5pFYnK5CZct4jYWrJ0
 CYmNYARS2V4sWDMgW5N4KYOJVCJ4ew7vlcXintnteq4gjNKiK/YekptETyc2ncnKjbrl
 8xaHjfUqKS9/J7wwFftuQNZPnRCLPYifptv/nub+hrIW8WkKE3JH2VoNhhjkLDGbvTV+
 mVPoY2JyGw0MRtJ0mjL+w8B3IymU9YR/hmSU/pniuX0YeaLUDYARcbH68tLWYQJmLarL
 jCpm2bUXaBmL7JWu2zLuzybr6xUnMGIqGgc4/YnhFpKiosm24KVP+Hpy3c+iAnsu+Ggd
 asIQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1751909449; x=1752514249;
 h=mime-version:message-id:date:in-reply-to:subject:cc:to:from
 :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
 bh=cn77E2J977h+MOKkbkenjn9oDFTpowP9FyZMWRq9zCw=;
 b=wgTKlifIckGfIPD1wiA9nszvNwqIxVvLyOKpssRMhOuFdmt2XVKr5j1kfE9SgIoZfR
 jV46Cu/jnLZ34EI2XpBbi0rc3QQQ9tVAD91gepVn7XMSohZd4ZU9DgqfNvwHD/ikwLio
 AQ4BXcTDn1Y7GSQ3Y0iRPeJcV0QOr+cR2iuyLYtcNyfOIXIMlfqQIBFyhxPxqOZ1Q/jB
 yrYHP5HFkLXOtxkwgyovTUQPrldf4X/YKZLAlIg7CWBJ3LCQzTAfTtQw5IcBnal9cR1t
 pSWXOi5LiRdVLR2H4iXU1bH3AyEhTjYPQx9ClwCdIaaHa6MCRqaLSppiV5hRsj4JYblQ
 jhsw==
X-Forwarded-Encrypted: i=1;
 AJvYcCVB6qhqZHxqMLkyz8BeAK5pYksm6szUFENS6eQ76O4pd5aWcKy6ELeudsVDRnEHrw7HPo+BXg==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yxt0R8LkduFki1NoLrouTj4GOTEEogblOmHtxBPuH4wTq62RN+X
 LVzdhhu+9IS12NMnOUoSlYiC2OpJ43URd/c0GqLCtrBcLrOt5VuaZR8T
X-Gm-Gg: ASbGncsDwfoZhyXesHx3PcfvLKGoKxpNUYbXzabuvC2WSHzJ2X1nAGsfRpeDUTy3tz6
 0Qv7WMTCPbDTMMC2ojaTn0BfZeKjNPCkpnV3TngtNi1FIkU2DLqWQRdWPu46wW8ftPLdkBz+9Ds
 oqIwE3GEGZu94Ns5eFevjvxe1mc6FLoLEP9W57xixacJsV6Bt01GkQgNqLfT5Y4aCmIozMBbO7l
 60oM+R805xN0DSzI6ojYyrg1dQD67FvuyVPFuc3HuLGBLxR8llnTmcq+h/LQXfqDY+ECyKL3h6K
 RZT4F+oA895Oa4at2bM7NPJknrGz61vsKSv+/K/xtyi5liMP88MOe3AGWErv+J4M3JRzomHHcL7
 cUXof0wuvtmocJJ7T1xq0XRqzC9DTRUDrdzBYb8hi
X-Google-Smtp-Source: AGHT+IElUDf1/7ZzdYMhK8wPMp7J/XE6Sqz+CJmMUVZLDtVW2Ouasz6V4JejouPc8f/Laf55fy5xrw==
X-Received: by 2002:a05:6512:ac8:b0:553:2868:6355 with SMTP id
 2adb3069b0e04-556e701d144mr4432619e87.18.1751909449020; 
 Mon, 07 Jul 2025 10:30:49 -0700 (PDT)
Received: from localhost (0x5da5fbba.static.cust.fastspeed.dk.
 [93.165.251.186]) by smtp.gmail.com with UTF8SMTPSA id
 2adb3069b0e04-556384d57a9sm1408192e87.257.2025.07.07.10.30.48
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 07 Jul 2025 10:30:48 -0700 (PDT)
From: "Paul D. Nelson" <ultrono@HIDDEN>
To: Arash Esbati <arash@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
In-Reply-To: <m2v7o8cdfj.fsf@HIDDEN> (message from Arash Esbati
 on Fri, 04 Jul 2025 15:07:12 +0200)
Date: Mon, 07 Jul 2025 19:30:47 +0200
Message-ID: <uxsg7t1pqr7vso.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 78841
Cc: arne@HIDDEN, dev@HIDDEN, 78841 <at> debbugs.gnu.org,
 monnier@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain

Hi Arash,

> I installed my proposed change incl. comments from Stefan with commit
> 22daed7c.

With this commit, when I try to open any .tex file (existing or not), I
get "(wrong-type-argument sequencep t)" errors like those in the
attached backtrace (reproduced with emacs -Q).  My TeX-master value is
t.  The patch below seems to do the trick (but I'll confess that I
haven't studied the "big picture" here).

Paul


--=-=-=
Content-Type: text/x-patch
Content-Disposition: inline

diff --git a/lisp/international/latexenc.el b/lisp/international/latexenc.el
index fea5be6dbd7..f7dd1452ca0 100644
--- a/lisp/international/latexenc.el
+++ b/lisp/international/latexenc.el
@@ -158,13 +158,14 @@ latexenc-find-file-coding-system
                               (match-string 2)
                             (or (bound-and-true-p TeX-master)
                                 (bound-and-true-p tex-main-file)))))
-                (dolist (ext `("" ,(if (boundp 'TeX-default-extension)
-                                       (concat "." TeX-default-extension)
-                                     "")
-                               ".tex" ".ltx" ".dtx" ".drv"))
-                  (if (and (null latexenc-main-file) ;Stop at first.
-                           (file-exists-p (concat file ext)))
-                      (setq latexenc-main-file (concat file ext))))))
+                (when (stringp file)
+                  (dolist (ext `("" ,(if (boundp 'TeX-default-extension)
+                                         (concat "." TeX-default-extension)
+                                       "")
+                                 ".tex" ".ltx" ".dtx" ".drv"))
+                    (if (and (null latexenc-main-file) ;Stop at first.
+                             (file-exists-p (concat file ext)))
+                        (setq latexenc-main-file (concat file ext)))))))
             ;; try tex-modes tex-guess-main-file
             (when (and (not latexenc-dont-use-tex-guess-main-file-flag)
                        (not latexenc-main-file))

--=-=-=
Content-Type: text/plain
Content-Disposition: attachment; filename=debug.txt
Content-Transfer-Encoding: quoted-printable

Debugger entered--Lisp error: (wrong-type-argument sequencep t)
  concat(t "")
  (file-exists-p (concat file ext))
  (and (null latexenc-main-file) (file-exists-p (concat file ext)))
  (if (and (null latexenc-main-file) (file-exists-p (concat file ext))) (se=
tq latexenc-main-file (concat file ext)))
  (let ((ext (car tail))) (if (and (null latexenc-main-file) (file-exists-p=
 (concat file ext))) (setq latexenc-main-file (concat file ext))) (setq tai=
l (cdr tail)))
  (while tail (let ((ext (car tail))) (if (and (null latexenc-main-file) (f=
ile-exists-p (concat file ext))) (setq latexenc-main-file (concat file ext)=
)) (setq tail (cdr tail))))
  (let ((tail (cons "" (cons (if (boundp 'TeX-default-extension) (concat ".=
" TeX-default-extension) "") '(".tex" ".ltx" ".dtx" ".drv"))))) (while tail=
 (let ((ext (car tail))) (if (and (null latexenc-main-file) (file-exists-p =
(concat file ext))) (setq latexenc-main-file (concat file ext))) (setq tail=
 (cdr tail)))))
  (let ((file (if (re-search-forward "^%+ *\\(TeX-master\\|tex-main-file\\)=
: *\"\\(.+\\)\"" nil t) (match-string 2) (or (and (boundp 'TeX-master) TeX-=
master) (and (boundp 'tex-main-file) tex-main-file))))) (let ((tail (cons "=
" (cons (if (boundp ...) (concat "." TeX-default-extension) "") '(".tex" ".=
ltx" ".dtx" ".drv"))))) (while tail (let ((ext (car tail))) (if (and (null =
latexenc-main-file) (file-exists-p (concat file ext))) (setq latexenc-main-=
file (concat file ext))) (setq tail (cdr tail))))))
  (if latexenc-dont-use-TeX-master-flag nil (goto-char (point-max)) (search=
-backward "\n\f" (max (- (point-max) 3000) (point-min)) 'move) (re-search-f=
orward "^%+ *Local Variables:" nil t) (let ((file (if (re-search-forward "^=
%+ *\\(TeX-master\\|tex-main-file\\): *\"\\(.+\\)\"" nil t) (match-string 2=
) (or (and (boundp ...) TeX-master) (and (boundp ...) tex-main-file))))) (l=
et ((tail (cons "" (cons (if ... ... "") '...)))) (while tail (let ((ext (c=
ar tail))) (if (and (null latexenc-main-file) (file-exists-p ...)) (setq la=
texenc-main-file (concat file ext))) (setq tail (cdr tail)))))))
  (let ((default-directory (if (stringp (nth 1 arg-list)) (file-name-direct=
ory (nth 1 arg-list)) default-directory)) latexenc-main-file) (if latexenc-=
dont-use-TeX-master-flag nil (goto-char (point-max)) (search-backward "\n\f=
" (max (- (point-max) 3000) (point-min)) 'move) (re-search-forward "^%+ *Lo=
cal Variables:" nil t) (let ((file (if (re-search-forward "^%+ *\\(TeX-mast=
er\\|tex-main-file\\): *\"\\(.+\\)\"" nil t) (match-string 2) (or (and ... =
TeX-master) (and ... tex-main-file))))) (let ((tail (cons "" (cons ... ...)=
))) (while tail (let ((ext ...)) (if (and ... ...) (setq latexenc-main-file=
 ...)) (setq tail (cdr tail))))))) (if (and (not latexenc-dont-use-tex-gues=
s-main-file-flag) (not latexenc-main-file)) (progn (if (fboundp 'tex-guess-=
main-file) (progn (let ((tex-start-of-header "\\\\document\\(style\\|class\=
\)")) (setq latexenc-main-file (tex-guess-main-file))))))) (if (and latexen=
c-main-file (file-regular-p latexenc-main-file) (file-readable-p latexenc-m=
ain-file)) (let* ((latexenc-dont-use-tex-guess-main-file-flag t) (latexenc-=
dont-use-TeX-master-flag t) (latexenc-main-buffer (find-file-noselect latex=
enc-main-file t))) (coding-system-base (save-current-buffer (set-buffer lat=
exenc-main-buffer) (or coding-system-for-write buffer-file-coding-system 'u=
ndecided)))) 'undecided))
  (if (catch 'cs (let ((case-fold-search nil)) (while (search-forward "inpu=
tenc" nil t) (goto-char (match-beginning 0)) (beginning-of-line) (if (or (l=
ooking-at "[^%\n]*\\\\usepackage\\[\\([^]]*\\)\\]{\\([^}]*,\\)?inputenc\\(,=
[^}]*\\)?}") (looking-at "[^%\n]*\\\\inputencoding{\\([^}]*\\)}")) (throw '=
cs t) (goto-char (match-end 0)))))) (let* ((match (match-string 1)) (sym (o=
r (latexenc-inputenc-to-coding-system match) (intern match)))) (cond ((codi=
ng-system-p sym) sym) ((and (require 'code-pages nil t) (coding-system-p sy=
m)) sym) (t 'undecided))) (let ((default-directory (if (stringp (nth 1 arg-=
list)) (file-name-directory (nth 1 arg-list)) default-directory)) latexenc-=
main-file) (if latexenc-dont-use-TeX-master-flag nil (goto-char (point-max)=
) (search-backward "\n\f" (max (- (point-max) 3000) (point-min)) 'move) (re=
-search-forward "^%+ *Local Variables:" nil t) (let ((file (if (re-search-f=
orward "^%+ *\\(TeX-master\\|tex-main-file\\): *\"\\(.+\\)\"" nil t) (match=
-string 2) (or ... ...)))) (let ((tail (cons "" ...))) (while tail (let (..=
.) (if ... ...) (setq tail ...)))))) (if (and (not latexenc-dont-use-tex-gu=
ess-main-file-flag) (not latexenc-main-file)) (progn (if (fboundp 'tex-gues=
s-main-file) (progn (let (...) (setq latexenc-main-file ...)))))) (if (and =
latexenc-main-file (file-regular-p latexenc-main-file) (file-readable-p lat=
exenc-main-file)) (let* ((latexenc-dont-use-tex-guess-main-file-flag t) (la=
texenc-dont-use-TeX-master-flag t) (latexenc-main-buffer (find-file-noselec=
t latexenc-main-file t))) (coding-system-base (save-current-buffer (set-buf=
fer latexenc-main-buffer) (or coding-system-for-write buffer-file-coding-sy=
stem 'undecided)))) 'undecided)))
  (save-excursion (goto-char (point-min)) (if (catch 'cs (let ((case-fold-s=
earch nil)) (while (search-forward "inputenc" nil t) (goto-char (match-begi=
nning 0)) (beginning-of-line) (if (or (looking-at "[^%\n]*\\\\usepackage\\[=
\\([^]]*\\)\\]{\\([^}]*,\\)?inputenc\\(,[^}]*\\)?}") (looking-at "[^%\n]*\\=
\\inputencoding{\\([^}]*\\)}")) (throw 'cs t) (goto-char (match-end 0))))))=
 (let* ((match (match-string 1)) (sym (or (latexenc-inputenc-to-coding-syst=
em match) (intern match)))) (cond ((coding-system-p sym) sym) ((and (requir=
e 'code-pages nil t) (coding-system-p sym)) sym) (t 'undecided))) (let ((de=
fault-directory (if (stringp (nth 1 arg-list)) (file-name-directory (nth 1 =
arg-list)) default-directory)) latexenc-main-file) (if latexenc-dont-use-Te=
X-master-flag nil (goto-char (point-max)) (search-backward "\n\f" (max (- (=
point-max) 3000) (point-min)) 'move) (re-search-forward "^%+ *Local Variabl=
es:" nil t) (let ((file (if ... ... ...))) (let ((tail ...)) (while tail (l=
et ... ... ...))))) (if (and (not latexenc-dont-use-tex-guess-main-file-fla=
g) (not latexenc-main-file)) (progn (if (fboundp 'tex-guess-main-file) (pro=
gn (let ... ...))))) (if (and latexenc-main-file (file-regular-p latexenc-m=
ain-file) (file-readable-p latexenc-main-file)) (let* ((latexenc-dont-use-t=
ex-guess-main-file-flag t) (latexenc-dont-use-TeX-master-flag t) (latexenc-=
main-buffer (find-file-noselect latexenc-main-file t))) (coding-system-base=
 (save-current-buffer (set-buffer latexenc-main-buffer) (or coding-system-f=
or-write buffer-file-coding-system ...)))) 'undecided))))
  (if (eq (car arg-list) 'insert-file-contents) (save-excursion (goto-char =
(point-min)) (if (catch 'cs (let ((case-fold-search nil)) (while (search-fo=
rward "inputenc" nil t) (goto-char (match-beginning 0)) (beginning-of-line)=
 (if (or ... ...) (throw ... t) (goto-char ...))))) (let* ((match (match-st=
ring 1)) (sym (or (latexenc-inputenc-to-coding-system match) (intern match)=
))) (cond ((coding-system-p sym) sym) ((and (require ... nil t) (coding-sys=
tem-p sym)) sym) (t 'undecided))) (let ((default-directory (if (stringp ...=
) (file-name-directory ...) default-directory)) latexenc-main-file) (if lat=
exenc-dont-use-TeX-master-flag nil (goto-char (point-max)) (search-backward=
 "\n\f" (max (- ... 3000) (point-min)) 'move) (re-search-forward "^%+ *Loca=
l Variables:" nil t) (let ((file ...)) (let (...) (while tail ...)))) (if (=
and (not latexenc-dont-use-tex-guess-main-file-flag) (not latexenc-main-fil=
e)) (progn (if (fboundp ...) (progn ...)))) (if (and latexenc-main-file (fi=
le-regular-p latexenc-main-file) (file-readable-p latexenc-main-file)) (let=
* ((latexenc-dont-use-tex-guess-main-file-flag t) (latexenc-dont-use-TeX-ma=
ster-flag t) (latexenc-main-buffer ...)) (coding-system-base (save-current-=
buffer ... ...))) 'undecided)))) 'undecided)
  latexenc-find-file-coding-system((insert-file-contents "/Users/au710211/d=
oit/test3.tex" t nil nil nil))
  insert-file-contents("~/doit/test3.tex" t)
  find-file-noselect-1(#<buffer test3.tex<doit>> "~/doit/test3.tex" nil nil=
 "~/doit/test3.tex" (130263558 16777231))
  find-file-noselect("/Users/au710211/doit/test3.tex" nil nil nil)
  find-file("/Users/au710211/doit/test3.tex")
  dired--find-file(find-file "/Users/au710211/doit/test3.tex")
  dired--find-possibly-alternative-file("/Users/au710211/doit/test3.tex")
  dired-find-file()
  funcall-interactively(dired-find-file)
  command-execute(dired-find-file)

--=-=-=--




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 4 Jul 2025 13:46:05 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 04 09:46:05 2025
Received: from localhost ([127.0.0.1]:59795 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uXgjr-0001Jk-KF
	for submit <at> debbugs.gnu.org; Fri, 04 Jul 2025 09:46:05 -0400
Received: from mout-p-102.mailbox.org ([80.241.56.152]:50682)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dev@HIDDEN>)
 id 1uXgjm-0001I1-OT
 for 78841 <at> debbugs.gnu.org; Fri, 04 Jul 2025 09:46:01 -0400
Received: from smtp202.mailbox.org (smtp202.mailbox.org
 [IPv6:2001:67c:2050:b231:465::202])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 by mout-p-102.mailbox.org (Postfix) with ESMTPS id 4bYZf60khzz9slS;
 Fri,  4 Jul 2025 15:45:50 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=real-or-random.org;
 s=MBO0001; t=1751636750;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 content-transfer-encoding:content-transfer-encoding:
 in-reply-to:in-reply-to:references:references;
 bh=sIb6g9Pnp8AOoxo+e0ELK/eBK4xEBTDT58ZohlLmyiQ=;
 b=oUGuawGQeBAjYtu8OmPdbiMEGHGHUXiRDWjNBF/T49xiHxDmwr1MTlTRxFXaeGGLeiO4Vy
 RAiW6bFVKs9Sp7WJm7xCDtYzVbE4XIMZ9GHL2qFsDNB/43i8nwH8yyojS1IUwVOQAwGcdq
 56+foiMOXhH9drECbopMyoNTuzGbwZoI1W7WJp0SmJfKQ3Xx+QPEV1fAf9ZhdzbULO5wMA
 HdXXW/+qNMZMsaAHMIXCU2FJlz+ODPPnyaLxsElWXQuPI/KR7eg66PxdJwhDFDJ3DLsmQN
 XAE8/IgeAy0vlhqSdrRiCaDknkCxSoxLCUA5/d3YKsjlK6J4Xxx/Ulod+qLggQ==
Message-ID: <d15ab31bcd55576f42aef5bf93d7e4527a4d7a02.camel@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
From: Tim Ruffing <dev@HIDDEN>
To: Arash Esbati <arash@HIDDEN>
Date: Fri, 04 Jul 2025 15:45:47 +0200
In-Reply-To: <m2v7o8cdfj.fsf@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
 <m27c12g42b.fsf@HIDDEN>
 <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
 <m2ms9xd08y.fsf@HIDDEN>
 <3ea2db009c53358d773549e74914ed44745df362.camel@HIDDEN>
 <m2sejn3ac8.fsf@HIDDEN>	<m27c0y6daz.fsf@HIDDEN>
 <jwva55rmoz1.fsf-monnier+emacs@HIDDEN>
 <m234bi3n8e.fsf@HIDDEN>
 <7600fb5f2222e4e465528dbd23ab92b21b8be6d5.camel@HIDDEN>
 <m2v7o8cdfj.fsf@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Rspamd-Queue-Id: 4bYZf60khzz9slS
X-Spam-Score: -0.5 (/)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org, Stefan Monnier <monnier@HIDDEN>,
 arne@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.5 (-)

Thanks for installing the latexenc patch. :)

On Fri, 2025-07-04 at 15:07 +0200, Arash Esbati wrote:
> I think removing the check for `TeX-active-styles' is not a good
> idea.
> This will effectively removes the scenario where you can do in your
> main-file.tex:
>=20
> =C2=A0 \usepackage{mypackages}
>=20
> and mypackage.el contains:
>=20
> =C2=A0 \RequirePackage{biblatex}
>=20
> Currently, you can write an AUCTeX style mypackage.el which does:
>=20
> =C2=A0 (TeX-run-style-hooks "biblatex")
>=20
> and the current code works correctly.=C2=A0 Your proposed change kills
> this.
>=20

Unless I'm mistaken, I think you misread my patch. Sorry for not
explaining it in more detail. What this does is that it removes reftex-
using-biblatex-p, effectively replacing it by "t". In other words, the
detection is removed, and it is conservatively assumed that biblatex is
used. As a result, reftex-locate-bibliography-files will always
consider all \bibliography or \addbibresource macros. Removing the
detection heuristic will eliminate all bugs in it. ;)=C2=A0

The only drawback is potentially decreased performance for users that
don't use biblatex. I haven't benchmarked this, but I really think the
overhead, if any, should be entirely negligible on a contemporary
machine. (Also consider that detection also has a runtime cost.)

Best,
Tim




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 4 Jul 2025 13:07:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 04 09:07:38 2025
Received: from localhost ([127.0.0.1]:59435 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uXg8f-0003tt-2a
	for submit <at> debbugs.gnu.org; Fri, 04 Jul 2025 09:07:38 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:49770)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1uXg8b-0003sg-SQ
 for 78841 <at> debbugs.gnu.org; Fri, 04 Jul 2025 09:07:34 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <arash@HIDDEN>)
 id 1uXg8V-0002YP-7L; Fri, 04 Jul 2025 09:07:27 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=l3rDFpCIY9Uj6k5UNrZArKxbSfnmNJ5koReZbLbQtlw=; b=jiAU7pApotDVA9qdN3B3
 gSN4QX8eERlj+W9o6dBQ0u9vnVYXwpfzhj5XlkBRI9g6rKbPjulfwNp++pix0vwGGu9nr8f2K2lB6
 dHvooIDkJT8YkzmvpBUcwfbAXfPvCm3s1TEyzccUAy31EegEGRUC0Q18Evb0xULfCQHWdO3rgB+Kc
 /iPrGgXHmczrej40UNWSwqaDbeZxG3/B4coOluRo1JinLkU1WBEtKIT2pID/sEWJDsFgyetfhnhwu
 U9DD3a4S9ACLy1tpW47RTq7D7wC6V+k5hq6I+yJxkXUGJtHrKM6056LLvzGTvkPwGovi8B5+UPI/E
 1XwMx7vYZ5X+Pg==;
From: Arash Esbati <arash@HIDDEN>
To: Tim Ruffing <dev@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
In-Reply-To: <7600fb5f2222e4e465528dbd23ab92b21b8be6d5.camel@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
 <m27c12g42b.fsf@HIDDEN>
 <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
 <m2ms9xd08y.fsf@HIDDEN>
 <3ea2db009c53358d773549e74914ed44745df362.camel@HIDDEN>
 <m2sejn3ac8.fsf@HIDDEN>
 <m27c0y6daz.fsf@HIDDEN>
 <jwva55rmoz1.fsf-monnier+emacs@HIDDEN>
 <m234bi3n8e.fsf@HIDDEN>
 <7600fb5f2222e4e465528dbd23ab92b21b8be6d5.camel@HIDDEN>
Date: Fri, 04 Jul 2025 15:07:12 +0200
Message-ID: <m2v7o8cdfj.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org, Stefan Monnier <monnier@HIDDEN>,
 arne@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Tim Ruffing <dev@HIDDEN> writes:

> Independently of latexenc (which should be fixed, yes),

I installed my proposed change incl. comments from Stefan with commit
22daed7c.

Reg. your change and the scenarios:

>>  * latexenc-dont-use-TeX-master-flag is t

I think if people touch that, the know what they're doing.

>>  * latexenc will be removed or changed in the future

This is somewhat unlikely, but Emacs obsoleting process takes some
years, so I'd say let's think about this once it is imminent.

>>  * the \addbibresource commands is not in the same file as
>>    \usepackage{biblatex}

I think removing the check for `TeX-active-styles' is not a good idea.
This will effectively removes the scenario where you can do in your
main-file.tex:

  \usepackage{mypackages}

and mypackage.el contains:

  \RequirePackage{biblatex}

Currently, you can write an AUCTeX style mypackage.el which does:

  (TeX-run-style-hooks "biblatex")

and the current code works correctly.  Your proposed change kills this.

So overall, I tend to keep what we have now after fixing latexenc.el.

Best, Arash




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 2 Jul 2025 11:48:45 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jul 02 07:48:45 2025
Received: from localhost ([127.0.0.1]:36074 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uWvxE-0006Rj-TT
	for submit <at> debbugs.gnu.org; Wed, 02 Jul 2025 07:48:45 -0400
Received: from mout-p-102.mailbox.org ([2001:67c:2050:0:465::102]:50468)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dev@HIDDEN>)
 id 1uWvx9-0006Pt-5I
 for 78841 <at> debbugs.gnu.org; Wed, 02 Jul 2025 07:48:42 -0400
Received: from smtp202.mailbox.org (smtp202.mailbox.org
 [IPv6:2001:67c:2050:b231:465::202])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 by mout-p-102.mailbox.org (Postfix) with ESMTPS id 4bXJ7f72tjz9twR;
 Wed,  2 Jul 2025 13:48:30 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=real-or-random.org;
 s=MBO0001; t=1751456911;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 in-reply-to:in-reply-to:references:references;
 bh=mYWhiam1cVBYS2LIQBNISs4tu+RXsPE/ksfAN7T7jzI=;
 b=vj6TYX037WAFzxgcxzrYn+Btit0j8sa/uWrVAOUaXhdgBZfMH9Tw6Tn9ndRpWWP34oaIGs
 a3rMUAt0W/JX9NRs/H7WRF0WVCeiK8Fhlxqyv73jzoowqbrelbvT7Us4HE+KCLz86iaeEk
 cRTLeQ83ecRLSgRS6JcTxRSR6ZS/Yfnd/9JXA0appVwtb8OW4u7z7EhoMzIzBJHLT/PZ2p
 kUMqQEI21ijyZnfqSZb4LFyS8X5e9Y+lZo7Hr2Y/Twpd71/S4Rhaxxz/UkRsxWy//lktrM
 Z2A40b6WLJoZpd6uKSK2TFIzKl+TLNWrPJyfo/lHmpU/Rc3AEV9RcSw+kcRXVQ==
Message-ID: <7600fb5f2222e4e465528dbd23ab92b21b8be6d5.camel@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
From: Tim Ruffing <dev@HIDDEN>
To: Arash Esbati <arash@HIDDEN>, Stefan Monnier <monnier@HIDDEN>
Date: Wed, 02 Jul 2025 13:48:28 +0200
In-Reply-To: <m234bi3n8e.fsf@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
 <m27c12g42b.fsf@HIDDEN>
 <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
 <m2ms9xd08y.fsf@HIDDEN>
 <3ea2db009c53358d773549e74914ed44745df362.camel@HIDDEN>
 <m2sejn3ac8.fsf@HIDDEN>	<m27c0y6daz.fsf@HIDDEN>
 <jwva55rmoz1.fsf-monnier+emacs@HIDDEN>
 <m234bi3n8e.fsf@HIDDEN>
Content-Type: multipart/mixed; boundary="=-G6XzERhoRhoBILMdvP5s"
MIME-Version: 1.0
X-Rspamd-Queue-Id: 4bXJ7f72tjz9twR
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org, arne@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-G6XzERhoRhoBILMdvP5s
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: base64

SW5kZXBlbmRlbnRseSBvZiBsYXRleGVuYyAod2hpY2ggc2hvdWxkIGJlIGZpeGVkLCB5ZXMpLCBo
ZXJlJ3MgYSBwYXRjaAp0aGF0IGdldHMgcmlkIG9mIHRoZSBoZXVyaXN0aWMgaW4gcmVmdGV4LiBJ
IHN0aWxsIGJlbGlldmUgdGhhdCB0aGlzCnNpbXBsaWZpZXMgdGhpbmdzLCBkb2Vzbid0IG1hdHRl
ciBhdCBhbGwgcGVyZm9ybWFuY2Utd2lzZSwgYW5kIGdldHMgcmlkCm9mIG51bWVyb3VzIGNvcm5l
ciBjYXNlcyBpbiB3aGljaCB0aGUgaGV1cmlzdGljIHdvbid0IHdvcmssIHNvbWUgb2YKd2hpY2gg
YXJlIGluIG15IHByZXZpb3VzIGVtYWlsOgoKPiAgKiBsYXRleGVuYy1kb250LXVzZS1UZVgtbWFz
dGVyLWZsYWcgaXMgdAo+ICAqIGxhdGV4ZW5jIHdpbGwgYmUgcmVtb3ZlZCBvciBjaGFuZ2VkIGlu
IHRoZSBmdXR1cmUKPiAgKiB0aGUgXGFkZGJpYnJlc291cmNlIGNvbW1hbmRzIGlzIG5vdCBpbiB0
aGUgc2FtZSBmaWxlIGFzCj4gICAgXHVzZXBhY2thZ2V7YmlibGF0ZXh9CgpJZiB5b3UgdGhpbmsg
dGhhdCdzIGEgZ29vZCBpZGVhLCB0aGVuIGxldCBtZSBrbm93IGFuZCBJJ2xsIHdyaXRlIGEKcHJv
cGVyIGNvbW1pdCBtZXNzYWdlLgoKQmVzdCwKVGltCgpPbiBTdW4sIDIwMjUtMDYtMjkgYXQgMTE6
MzQgKzAyMDAsIEFyYXNoIEVzYmF0aSB3cm90ZToKPiBTdGVmYW4gTW9ubmllciA8bW9ubmllckBp
cm8udW1vbnRyZWFsLmNhPiB3cml0ZXM6Cj4gCj4gPiBMR1RNLgo+IAo+IFRoYW5rcy4KPiAKPiA+
IFRoaXMgc2FpZCwgSSBkb24ndCB0aGluayB3ZSBuZWVkIGBkZWZhdWx0LXZhbHVlYC7CoCBBbmQg
d2UgY2FuCj4gPiBwcmVzdW1hYmx5IHNpbXBsaWZ5IHRoZSBhYm92ZSB0bwo+ID4gCj4gPiDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxldCAoKGZpbGUgKGlmIChyZS1zZWFyY2gtZm9yd2FyZAo+
ID4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoCAiXiUrICpcXChUZVgtbWFzdGVyXFx8dGV4LW1haW4tCj4gPiBmaWxlXFwpOiAqXCJcXCgu
K1xcKVwiIgo+ID4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoCBuaWwgdCkKPiA+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtYXRjaC1zdHJpbmcgMikKPiA+IMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG9yIChib3VuZC1hbmQt
dHJ1ZS1wIFRlWC1tYXN0ZXIpCj4gPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGJvdW5kLWFuZC10cnVlLXAgdGV4LW1haW4tZmls
ZSkpKSkpCj4gPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh3aGVuIChzdHJpbmdwIGZp
bGUpCj4gPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZG9saXN0IC4uLikpKQo+
IAo+IFllcywgeW91J3JlIHJpZ2h0LsKgIEFuZCB3aGlsZSB3ZSdyZSBhdCBpdCwgSSBhbHNvIHRo
aW5rIHdlIHNob3VsZAo+IGNoYW5nZToKPiAKPiDCoCAoc2VhcmNoLWZvcndhcmQgIkxvY2FsIFZh
cmlhYmxlczoiIG5pbCB0KQo+IAo+IHRvCj4gCj4gwqAgKHJlLXNlYXJjaC1mb3J3YXJkICJeJSsg
KkxvY2FsIFZhcmlhYmxlczoiIG5pbCB0KQo+IAo+IFdEWVQ/wqAgSSdkIGluc3RhbGwgdGhpcyBj
aGFuZ2U6Cj4gCj4gLS04PC0tLS0tLS0tLS0tLS0tLWN1dCBoZXJlLS0tLS0tLS0tLS0tLS0tc3Rh
cnQtLS0tLS0tLS0tLS0tPjgtLS0KPiBkaWZmIC0tZ2l0IGEvbGlzcC9pbnRlcm5hdGlvbmFsL2xh
dGV4ZW5jLmVsCj4gYi9saXNwL2ludGVybmF0aW9uYWwvbGF0ZXhlbmMuZWwKPiBpbmRleCAxYjcz
NTgxMGVlNC4uZmVhNWJlNmRiZDcgMTAwNjQ0Cj4gLS0tIGEvbGlzcC9pbnRlcm5hdGlvbmFsL2xh
dGV4ZW5jLmVsCj4gKysrIGIvbGlzcC9pbnRlcm5hdGlvbmFsL2xhdGV4ZW5jLmVsCj4gQEAgLTE0
NCwyNCArMTQ0LDI3IEBAIGxhdGV4ZW5jLWZpbmQtZmlsZS1jb2Rpbmctc3lzdGVtCj4gwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoCAoZmlsZS1uYW1lLWRpcmVjdG9yeSAobnRoIDEKPiBhcmctbGlzdCkpCj4g
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgIGRlZmF1bHQtZGlyZWN0b3J5KSkKPiDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqAgbGF0ZXhlbmMtbWFpbi1maWxlKQo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKg
IDs7IElzIHRoZXJlIGEgVGVYLW1hc3RlciBvciB0ZXgtbWFpbi1maWxlIGluIHRoZSBsb2NhbAo+
IHZhcmlhYmxlcwo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgIDs7IHNlY3Rpb24/Cj4gK8KgwqDC
oMKgwqDCoMKgwqDCoMKgwqAgOzsgSXMgdGhlcmUgYSBUZVgtbWFzdGVyIG9yIHRleC1tYWluLWZp
bGUgaW4gdGhlIGxvY2FsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgOzsgdmFyaWFibGVzIHNl
Y3Rpb24gb3IgaXMgaXQgZ2xvYmFsbHkgc2V0IHRvIGEgY29uc3RhbnQKPiArwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoCA7OyBzdHJpbmc/Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh1bmxlc3Mg
bGF0ZXhlbmMtZG9udC11c2UtVGVYLW1hc3Rlci1mbGFnCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoCAoZ290by1jaGFyIChwb2ludC1tYXgpKQo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgIChzZWFyY2gtYmFja3dhcmQgIlxuXF5MIiAobWF4ICgtIChwb2ludC1tYXgpIDMwMDApCj4g
KHBvaW50LW1pbikpCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqAgJ21vdmUpCj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo
c2VhcmNoLWZvcndhcmQgIkxvY2FsIFZhcmlhYmxlczoiIG5pbCB0KQo+IC3CoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoCAod2hlbiAocmUtc2VhcmNoLWZvcndhcmQKPiAtwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiXiUrICpcXChUZVgtbWFzdGVyXFx8dGV4LW1haW4t
ZmlsZVxcKToKPiAqXCJcXCguK1xcKVwiIgo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgIG5pbCB0KQo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGxl
dCAoKGZpbGUgKG1hdGNoLXN0cmluZyAyKSkpCj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqAgKGRvbGlzdCAoZXh0IGAoIiIgLChpZiAoYm91bmRwICdUZVgtZGVmYXVsdC0KPiBl
eHRlbnNpb24pCj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChjb25jYXQgIi4iIFRlWC1kZWZh
dWx0LQo+IGV4dGVuc2lvbikKPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAiIikKPiAtwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAi
LnRleCIgIi5sdHgiICIuZHR4IiAiLmRydiIpKQo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoCAoaWYgKGFuZCAobnVsbCBsYXRleGVuYy1tYWluLWZpbGUpIDtTdG9wIGF0
Cj4gZmlyc3QuCj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgIChmaWxlLWV4aXN0cy1wIChjb25jYXQgZmlsZSBleHQpKSkKPiAtwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc2V0cSBsYXRleGVuYy1t
YWluLWZpbGUgKGNvbmNhdCBmaWxlCj4gZXh0KSkpKSkpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqAgKHJlLXNlYXJjaC1mb3J3YXJkICJeJSsgKkxvY2FsIFZhcmlhYmxlczoiIG5pbCB0KQo+
ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobGV0ICgoZmlsZSAoaWYgKHJlLXNlYXJjaC1m
b3J3YXJkCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoCAiXiUrICpcXChUZVgtbWFzdGVyXFx8dGV4LW1haW4tCj4gZmlsZVxcKTog
KlwiXFwoLitcXClcIiIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgIG5pbCB0KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtYXRjaC1zdHJpbmcgMikKPiArwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChvciAo
Ym91bmQtYW5kLXRydWUtcCBUZVgtbWFzdGVyKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYm91bmQtYW5kLXRydWUtcCB0
ZXgtbWFpbi1maWxlKSkpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkb2xp
c3QgKGV4dCBgKCIiICwoaWYgKGJvdW5kcCAnVGVYLWRlZmF1bHQtCj4gZXh0ZW5zaW9uKQo+ICvC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgIChjb25jYXQgIi4iIFRlWC1kZWZhdWx0LQo+IGV4dGVuc2lvbikK
PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgICIiKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIi50ZXgiICIubHR4IiAiLmR0eCIgIi5kcnYi
KSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaWYgKGFuZCAobnVsbCBs
YXRleGVuYy1tYWluLWZpbGUpIDtTdG9wIGF0IGZpcnN0Lgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChmaWxlLWV4aXN0cy1wIChjb25jYXQg
ZmlsZSBleHQpKSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg
IChzZXRxIGxhdGV4ZW5jLW1haW4tZmlsZSAoY29uY2F0IGZpbGUKPiBleHQpKSkpKSkKPiDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqAgOzsgdHJ5IHRleC1tb2RlcyB0ZXgtZ3Vlc3MtbWFpbi1maWxl
Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICh3aGVuIChhbmQgKG5vdCBsYXRleGVuYy1kb250
LXVzZS10ZXgtZ3Vlc3MtbWFpbi1maWxlLQo+IGZsYWcpCj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobm90IGxhdGV4ZW5jLW1haW4tZmlsZSkpCj4gLS04
PC0tLS0tLS0tLS0tLS0tLWN1dCBoZXJlLS0tLS0tLS0tLS0tLS0tZW5kLS0tLS0tLS0tLS0tLS0t
PjgtLS0KPiAKPiBCZXN0LCBBcmFzaAo=


--=-G6XzERhoRhoBILMdvP5s
Content-Disposition: attachment;
	filename="0001-reftex-Remove-heuristics-to-detect-biblatex.patch"
Content-Transfer-Encoding: base64
Content-Type: text/x-patch;
	name="0001-reftex-Remove-heuristics-to-detect-biblatex.patch";
	charset="UTF-8"

RnJvbSAyNjVmYjQ2YTE0ODhkNTRhYjAzZmYzMDU0NjMxZTlkYmYyZjg3YzcxIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBUaW0gUnVmZmluZyA8ZGV2QHJlYWwtb3ItcmFuZG9tLm9yZz4K
RGF0ZTogV2VkLCAyIEp1bCAyMDI1IDEzOjQyOjUyICswMjAwClN1YmplY3Q6IFtQQVRDSF0gcmVm
dGV4OiBSZW1vdmUgaGV1cmlzdGljcyB0byBkZXRlY3QgYmlibGF0ZXgKCi0tLQogbGlzcC90ZXh0
bW9kZXMvcmVmdGV4LXBhcnNlLmVsIHwgNDYgKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLQogMSBmaWxlIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDMzIGRlbGV0aW9ucygtKQoK
ZGlmZiAtLWdpdCBhL2xpc3AvdGV4dG1vZGVzL3JlZnRleC1wYXJzZS5lbCBiL2xpc3AvdGV4dG1v
ZGVzL3JlZnRleC1wYXJzZS5lbAppbmRleCBhN2ZmMDdlZmY4ZS4uYTc5MzgwN2E3ZGEgMTAwNjQ0
Ci0tLSBhL2xpc3AvdGV4dG1vZGVzL3JlZnRleC1wYXJzZS5lbAorKysgYi9saXNwL3RleHRtb2Rl
cy9yZWZ0ZXgtcGFyc2UuZWwKQEAgLTM3Myw0NSArMzczLDI1IEBAIHJlZnRleC1wYXJzZS1mcm9t
LWZpbGUKICAgICA7OyBSZXR1cm4gdGhlIGxpc3QKICAgICBkb2NzdHJ1Y3QpKQogCi0oZGVmdW4g
cmVmdGV4LXVzaW5nLWJpYmxhdGV4LXAgKCkKLSAgIlJldHVybiBub24tbmlsIGlmIHdlIGFyZSB1
c2luZyBiaWJsYXRleCBvciBvdGhlciBzcGVjaWZpYyBjaXRlIHBhY2thZ2UuCi1iaWJsYXRleCBh
bmQgb3RoZXIgc2ltaWxhciBwYWNrYWdlcyBsaWtlIG11bHRpYmliIGFsbG93IG11bHRpcGxlIG1h
Y3JvCi1jYWxscyB0byBsb2FkIGEgYmlibGlvZ3JhcGh5IGZpbGUuICBUaGlzIGZ1bmN0aW9uIHNo
b3VsZCBiZSBhYmxlIHRvCi1kZXRlY3QgdGhvc2UgcGFja2FnZXMuIgotICAoaWYgKGJvdW5kcCAn
VGVYLWFjdGl2ZS1zdHlsZXMpCi0gICAgICA7OyB0aGUgc29waGlzdGljYXRlZCBBVUNUZVggd2F5
Ci0gICAgICAob3IgKG1lbWJlciAiYmlibGF0ZXgiIFRlWC1hY3RpdmUtc3R5bGVzKQotICAgICAg
ICAgIChtZW1iZXIgIm11bHRpYmliIiBUZVgtYWN0aXZlLXN0eWxlcykpCi0gICAgOzsgcG9vci1t
YW4ncyBjaGVjay4uLgotICAgIChzYXZlLWV4Y3Vyc2lvbgotICAgICAgKHJlLXNlYXJjaC1mb3J3
YXJkCi0gICAgICAgIl5bXiVcbl0qP1xcXFx1c2VwYWNrYWdlXFwoXFxbW15dXSpcXF1cXCk/e2Jp
YmxhdGV4XFx8bXVsdGliaWJ9IiBuaWwgdCkpKSkKLQogOzs7IyMjYXV0b2xvYWQKIChkZWZ1biBy
ZWZ0ZXgtbG9jYXRlLWJpYmxpb2dyYXBoeS1maWxlcyAobWFzdGVyLWRpciAmb3B0aW9uYWwgZmls
ZXMpCiAgICJTY2FuIGJ1ZmZlciBmb3IgYmlibGlvZ3JhcGh5IG1hY3JvcyBhbmQgcmV0dXJuIGZp
bGUgbGlzdC4iCiAgICh1bmxlc3MgZmlsZXMKICAgICAoc2F2ZS1leGN1cnNpb24KICAgICAgIChn
b3RvLWNoYXIgKHBvaW50LW1pbikpCi0gICAgICA7OyB3aGVuIGJpYmxhdGV4IG9yIG11bHRpYmli
IGFyZSB1c2VkLCBtdWx0aXBsZSBcYmlibGlvZ3JhcGh5IG9yCi0gICAgICA7OyBcYWRkYmlicmVz
b3VyY2UgbWFjcm9zIGFyZSBhbGxvd2VkLiAgV2l0aCBwbGFpbiBiaWJ0ZXgsIG9ubHkKLSAgICAg
IDs7IHRoZSBmaXJzdCBpcyB1c2VkLgotICAgICAgKGxldCAoKHVzaW5nLWJpYmxhdGV4IChyZWZ0
ZXgtdXNpbmctYmlibGF0ZXgtcCkpCi0JICAgIChhZ2FpbiB0KSkKLQkod2hpbGUgKGFuZCBhZ2Fp
bgotCQkgICAgKHJlLXNlYXJjaC1mb3J3YXJkCi0JCSAgICAgKGNvbmNhdAotCQkgICAgICA7OyAi
XFwoXFxgXFx8W1xuXHJdXFwpW14lXSpcXFxcXFwoIgotCQkgICAgICAiXFwoXlxcKVteJVxuXHJd
KlxcXFxcXCgiCi0JCSAgICAgIChtYXBjb25jYXQgIydpZGVudGl0eSByZWZ0ZXgtYmlibGlvZ3Jh
cGh5LWNvbW1hbmRzICJcXHwiKQotCQkgICAgICAiXFwpXFwoXFxbLis/XFxdXFwpP3tbIFx0XSpc
XChbXn1dK1xcKSIpCi0JCSAgICAgbmlsIHQpKQotCSAgKHNldHEgZmlsZXMKLQkJKGFwcGVuZCBm
aWxlcwotCQkJKHNwbGl0LXN0cmluZyAocmVmdGV4LW1hdGNoLXN0cmluZyA0KQotCQkJCSAgICAg
ICJbIFx0XG5ccl0qLFsgXHRcblxyXSoiKSkpCi0JICAodW5sZXNzIHVzaW5nLWJpYmxhdGV4Ci0J
ICAgIChzZXRxIGFnYWluIG5pbCkpKSkpKQorICAgICAgOzsgV2hlbiBiaWJsYXRleCBvciBtdWx0
aWJpYiBhcmUgdXNlZCwgbXVsdGlwbGUgXGJpYmxpb2dyYXBoeSBvcgorICAgICAgOzsgXGFkZGJp
YnJlc291cmNlIG1hY3JvcyBhcmUgYWxsb3dlZCwgc28gZmluZCBhbGwgb2YgdGhlbS4KKyAgICAg
ICh3aGlsZSAocmUtc2VhcmNoLWZvcndhcmQKKyAgICAgICAgICAgICAgKGNvbmNhdAorICAgICAg
ICAgICAgICAgOzsgIlxcKFxcYFxcfFtcblxyXVxcKVteJV0qXFxcXFxcKCIKKyAgICAgICAgICAg
ICAgICJcXCheXFwpW14lXG5ccl0qXFxcXFxcKCIKKyAgICAgICAgICAgICAgIChtYXBjb25jYXQg
IydpZGVudGl0eSByZWZ0ZXgtYmlibGlvZ3JhcGh5LWNvbW1hbmRzICJcXHwiKQorICAgICAgICAg
ICAgICAgIlxcKVxcKFxcWy4rP1xcXVxcKT97WyBcdF0qXFwoW159XStcXCkiKQorICAgICAgICAg
ICAgICBuaWwgdCkKKyAgICAgICAgKHNldHEgZmlsZXMKKyAgICAgICAgICAgICAgKGFwcGVuZCBm
aWxlcworICAgICAgICAgICAgICAgICAgICAgIChzcGxpdC1zdHJpbmcgKHJlZnRleC1tYXRjaC1z
dHJpbmcgNCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJbIFx0XG5ccl0q
LFsgXHRcblxyXSoiKSkpKSkpCiAgICh3aGVuIGZpbGVzCiAgICAgKHNldHEgZmlsZXMKICAgICAg
ICAgICAobWFwY2FyCi0tIAoyLjUwLjAKCg==


--=-G6XzERhoRhoBILMdvP5s--




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 29 Jun 2025 09:34:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 29 05:34:43 2025
Received: from localhost ([127.0.0.1]:54864 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uVoQs-0001Co-9v
	for submit <at> debbugs.gnu.org; Sun, 29 Jun 2025 05:34:42 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:57126)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1uVoQp-0001Ba-5C
 for 78841 <at> debbugs.gnu.org; Sun, 29 Jun 2025 05:34:39 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <arash@HIDDEN>)
 id 1uVoQf-00015S-VA; Sun, 29 Jun 2025 05:34:29 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=LMwuOHdfSem5iHrYo6OhJ154K9IMLJwQsfUoablUKPI=; b=jaJrZ9TBubaAW8K8uiyN
 JlPEpchTOAYQq264PIjgaRZ01RegDe9WCqdV9MBcBcRHeBi8pTAChN0QRb0ALJaCj8do3R8u1YjOC
 aRe33UNc1ExRQARi7sM17f2jKuKHMri9jttoKlEBkTMLCIOCcBrfvxo3VTJFEXOJiAJsnD94SKSql
 qDpYpGPN4fK2Hifdxes9E8KY4rJR3ngvjlcLw2Hcs+i4AgOZ9ONsq5tnYiJwSaePsPcnbjPmHgamR
 QeznmNFVMw6uj87OikW8Dl44W175XwxvDmzLmqF7rK0fjG9NgmV/HbD9I2lk4/p3Y1q8a/SZ3GIMV
 LqgOxy5ZMh1juw==;
From: Arash Esbati <arash@HIDDEN>
To: Stefan Monnier <monnier@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
In-Reply-To: <jwva55rmoz1.fsf-monnier+emacs@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
 <m27c12g42b.fsf@HIDDEN>
 <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
 <m2ms9xd08y.fsf@HIDDEN>
 <3ea2db009c53358d773549e74914ed44745df362.camel@HIDDEN>
 <m2sejn3ac8.fsf@HIDDEN>
 <m27c0y6daz.fsf@HIDDEN>
 <jwva55rmoz1.fsf-monnier+emacs@HIDDEN>
Date: Sun, 29 Jun 2025 11:34:25 +0200
Message-ID: <m234bi3n8e.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78841
Cc: Tim Ruffing <dev@HIDDEN>, 78841 <at> debbugs.gnu.org,
 arne@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Stefan Monnier <monnier@HIDDEN> writes:

> LGTM.

Thanks.

> This said, I don't think we need `default-value`.  And we can
> presumably simplify the above to
>
>              (let ((file (if (re-search-forward
>                               "^%+ *\\(TeX-master\\|tex-main-file\\): *\"\\(.+\\)\""
>                               nil t)
>                              (match-string 2)
>                            (or (bound-and-true-p TeX-master)
>                                (bound-and-true-p tex-main-file)))))
>                (when (stringp file)
>                  (dolist ...)))

Yes, you're right.  And while we're at it, I also think we should
change:

  (search-forward "Local Variables:" nil t)

to

  (re-search-forward "^%+ *Local Variables:" nil t)

WDYT?  I'd install this change:

--8<---------------cut here---------------start------------->8---
diff --git a/lisp/international/latexenc.el b/lisp/international/latexenc.el
index 1b735810ee4..fea5be6dbd7 100644
--- a/lisp/international/latexenc.el
+++ b/lisp/international/latexenc.el
@@ -144,24 +144,27 @@ 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)))
-                  (dolist (ext `("" ,(if (boundp 'TeX-default-extension)
-                                         (concat "." TeX-default-extension)
-                                       "")
-                                 ".tex" ".ltx" ".dtx" ".drv"))
-                    (if (and (null latexenc-main-file) ;Stop at first.
-                             (file-exists-p (concat file ext)))
-                        (setq latexenc-main-file (concat file ext)))))))
+             (re-search-forward "^%+ *Local Variables:" nil t)
+              (let ((file (if (re-search-forward
+                               "^%+ *\\(TeX-master\\|tex-main-file\\): *\"\\(.+\\)\""
+                               nil t)
+                              (match-string 2)
+                            (or (bound-and-true-p TeX-master)
+                                (bound-and-true-p tex-main-file)))))
+                (dolist (ext `("" ,(if (boundp 'TeX-default-extension)
+                                       (concat "." TeX-default-extension)
+                                     "")
+                               ".tex" ".ltx" ".dtx" ".drv"))
+                  (if (and (null latexenc-main-file) ;Stop at first.
+                           (file-exists-p (concat file ext)))
+                      (setq latexenc-main-file (concat file ext))))))
             ;; try tex-modes tex-guess-main-file
             (when (and (not latexenc-dont-use-tex-guess-main-file-flag)
                        (not latexenc-main-file))
--8<---------------cut here---------------end--------------->8---

Best, Arash




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 28 Jun 2025 23:33:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 28 19:33:28 2025
Received: from localhost ([127.0.0.1]:52750 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uVf31-0003Yu-Hx
	for submit <at> debbugs.gnu.org; Sat, 28 Jun 2025 19:33:28 -0400
Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:18444)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <monnier@HIDDEN>)
 id 1uVf2y-0003XX-63
 for 78841 <at> debbugs.gnu.org; Sat, 28 Jun 2025 19:33:25 -0400
Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1])
 by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id B6CF2441254;
 Sat, 28 Jun 2025 19:33:18 -0400 (EDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca;
 s=mail; t=1751153597;
 bh=ekrBFkwx4Qh4yHe1TB27BcVfIOqpXHsAL81US/sBPLI=;
 h=From:To:Cc:Subject:In-Reply-To:References:Date:From;
 b=G126/IZgwobVYO/3TF/80TygZw/3gpQ0yIr9t6pNwL0IFx2z8YPXSjj+0nxIQBMVh
 oY7RE5wpPViei67DrSd+fT5Ic+Tdxkjd9HF0PQ+4ZtKv6u5QPVXtwLr12he9oHBW/c
 E5wc1ibvxYwddKBiMmx4TEhdqxM2IRTpbbvV8CCXCm5BfPZkanUXlRXT6+iz4DZRPJ
 ipe7vAoXoNhiW6ZNPsBE9DuxbYwEOJnGRt9M5nv3igIugNW/0/aIDXFoj5IynXBFdm
 gaVJ0ELPuZV9Ivtp67aMO3h30fQ1mUiY5ZjKZNn7yBQ4mPxcHoafTFlUDs5ZLKqyUW
 rPX27bXuk6fAQ==
Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1])
 by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 7FDB34411A0;
 Sat, 28 Jun 2025 19:33:17 -0400 (EDT)
Received: from pastel (unknown [104.247.225.139])
 by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 4E3AF1204C9;
 Sat, 28 Jun 2025 19:33:17 -0400 (EDT)
From: Stefan Monnier <monnier@HIDDEN>
To: Arash Esbati <arash@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
In-Reply-To: <m27c0y6daz.fsf@HIDDEN>
Message-ID: <jwva55rmoz1.fsf-monnier+emacs@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
 <m27c12g42b.fsf@HIDDEN>
 <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
 <m2ms9xd08y.fsf@HIDDEN>
 <3ea2db009c53358d773549e74914ed44745df362.camel@HIDDEN>
 <m2sejn3ac8.fsf@HIDDEN>
 <m27c0y6daz.fsf@HIDDEN>
Date: Sat, 28 Jun 2025 19:33:16 -0400
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-SPAM-INFO: Spam detection results:  0
 ALL_TRUSTED                -1 Passed through trusted hosts only via SMTP
 AWL -0.292 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
X-SPAM-LEVEL: 
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78841
Cc: Tim Ruffing <dev@HIDDEN>, 78841 <at> debbugs.gnu.org,
 arne@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

>> 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)
>                                         "")

LGTM.
This said, I don't think we need `default-value`.
And we can presumably simplify the above to

             (let ((file (if (re-search-forward
                              "^%+ *\\(TeX-master\\|tex-main-file\\): *\"\\(.+\\)\""
                              nil t)
                             (match-string 2)
                           (or (bound-and-true-p TeX-master)
                               (bound-and-true-p tex-main-file)))))
               (when (stringp file)
                 (dolist ...)))


- Stefan





Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 26 Jun 2025 09:51:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 26 05:51:48 2025
Received: from localhost ([127.0.0.1]:48707 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uUjGl-0008S4-Ld
	for submit <at> debbugs.gnu.org; Thu, 26 Jun 2025 05:51:48 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:46446)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1uUjGh-0008Rl-Vv
 for 78841 <at> debbugs.gnu.org; Thu, 26 Jun 2025 05:51:44 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <arash@HIDDEN>)
 id 1uUjGa-0001Co-OP; Thu, 26 Jun 2025 05:51:36 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=Gi8O/gWIGKs13EQFQmFSxjmyk1uSWjzHUOJL3mB0pcU=; b=r3QOVYmwhM2hnj3CVTVa
 sGY1zU69hQsKcsIvsCKSVRbBRKOqXS43T6hSCCfxomuiKszArwZzn5VNTMucE/ZtkvhGJw3Eceuyq
 lTHwfY5zF+281+IBxaPiaLRB0gKc7pcb+5/iNxHaX/b88ICdPo3A3jbIJoWDfDmqvIayrXwZ3IZfu
 AzyhgK8IeNnMnEA6h1nqFQC/FYY9KWk0FQUs4Mpe0rZkp0U7+I7Nwrzu1Oa49m2No7JVC8ZTQeENu
 bd/W3sAWjXEd9HX9igARqtFmiAKC2Cb+GacQK87mdctFkhrrdXh1C2y/ZMn5WyVlhw4DWeK2Fo5EO
 0BAxiICR+ZA9Eg==;
From: Arash Esbati <arash@HIDDEN>
To: arne@HIDDEN
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
In-Reply-To: <m2sejn3ac8.fsf@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
 <m27c12g42b.fsf@HIDDEN>
 <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
 <m2ms9xd08y.fsf@HIDDEN>
 <3ea2db009c53358d773549e74914ed44745df362.camel@HIDDEN>
 <m2sejn3ac8.fsf@HIDDEN>
Date: Thu, 26 Jun 2025 11:51:32 +0200
Message-ID: <m27c0y6daz.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78841
Cc: Tim Ruffing <dev@HIDDEN>,
 Stefan Monnier <monnier@HIDDEN>, 78841 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--=-=-=
Content-Type: text/plain

Arash Esbati <arash@HIDDEN> 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

--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=latexenc.patch

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)
                                        "")

--=-=-=--




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 25 Jun 2025 19:11:51 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jun 25 15:11:51 2025
Received: from localhost ([127.0.0.1]:39502 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uUVXB-0005O1-Rb
	for submit <at> debbugs.gnu.org; Wed, 25 Jun 2025 15:11:51 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:47570)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1uUVX8-0005Mb-1l
 for 78841 <at> debbugs.gnu.org; Wed, 25 Jun 2025 15:11:47 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <arash@HIDDEN>)
 id 1uUVX0-0006Sr-Rm; Wed, 25 Jun 2025 15:11:38 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=OpbVVV44AbkIbKf3X7JNOAGt3tsE8FoOpK8z/QJFw2M=; b=YGpYFj7SUL+gRsryh9vw
 Bg8EnGT7TLSxtEdiUkWJ/oFQJyraQFmDkpe5MXBPBCHAx+IRDbHnd9bCXLnoGuaKtEb0Mq1QygUw6
 zJTvgqXm3tAV19kLpojAS/Ea8Sz6pVWxVGbycbyFCJT85RJqmsKhYKRzHoYjdr15fN+a+s1RxrQgJ
 IRu75V7Qf3C3r2ysU23dDfkh5fUuu++QRbY4uiiNHEdau8rDWv91AF3vbNcGR/oZp4xdfLIoWBCvw
 moHqS3ilD8fdj32ArpHI9lpblqGQ+7OAs702ZmI0HLk8pug0aX6jahvymdlwUTZ0XEWaC1Q7LpTCM
 K8ejO+GF6d4Eaw==;
From: Arash Esbati <arash@HIDDEN>
To: arne@HIDDEN, Stefan Monnier <monnier@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
In-Reply-To: <3ea2db009c53358d773549e74914ed44745df362.camel@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
 <m27c12g42b.fsf@HIDDEN>
 <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
 <m2ms9xd08y.fsf@HIDDEN>
 <3ea2db009c53358d773549e74914ed44745df362.camel@HIDDEN>
Date: Wed, 25 Jun 2025 21:11:35 +0200
Message-ID: <m2sejn3ac8.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78841
Cc: Tim Ruffing <dev@HIDDEN>, 78841 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Tim Ruffing <dev@HIDDEN> writes:

>> IIUC, `latexenc-find-file-coding-system' isn't prepared to deal with
>> `TeX-master' set to a string top-level.  My change above adds that.
>
> I've tested this, and this works in this specific case.

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:

--8<---------------cut here---------------start------------->8---
diff --git a/lisp/international/latexenc.el b/lisp/international/latexenc.el
index 1b735810ee4..b7b022e68c4 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)
                                        "")
@@ -180,7 +189,7 @@ latexenc-find-file-coding-system
                   (coding-system-base   ;Disregard the EOL part of the CS.
                    (with-current-buffer latexenc-main-buffer
                      (or coding-system-for-write buffer-file-coding-system
-                        'undecided))))
+                        'undecided))))
               'undecided))))
     'undecided))
--8<---------------cut here---------------end--------------->8---

Do you have any comments on this?

@Stefan: FYI, I'm not familiar with tex-mode.el and what `tex-main-file'
does, maybe you can review the change above for tex-mode.el.  TIA.

Best, Arash




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 25 Jun 2025 07:15:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jun 25 03:15:35 2025
Received: from localhost ([127.0.0.1]:57929 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uUKM2-00019O-Jb
	for submit <at> debbugs.gnu.org; Wed, 25 Jun 2025 03:15:35 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:36046)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1uUKLw-00018M-Bm
 for 78841 <at> debbugs.gnu.org; Wed, 25 Jun 2025 03:15:32 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <arash@HIDDEN>)
 id 1uUKLq-0000Y3-76; Wed, 25 Jun 2025 03:15:22 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=sKCQKjIy03LILt2QVw4fMNZTbLs9PkOxPq90kkYdI6Y=; b=RgxqiK+Lyj4v+28BocTq
 Y3CErtqp0ota7hYgp0XJGn/lTQS+cMCskx4uWB5fw9gTGJoabH0Dc0CKIZs7CmAkGEPlYtNGN/C06
 hn+gOwgXYCLvI4ufU4FLo7MjvXJImBQ0V80tkBfuvLRBdxqfZX8craar3Q7D08W8OqiXdCMTn0l/V
 opNlspoKl8VCe9SN1ZidgeHNmfJtw3zobci3adfSr1y3KiBArnQCDFjHSt3IVCHazeS06b2pf3p3W
 lgEhv3Gjr+V8Lcd0LwC/ArDBL3bqkG3iq4w544mG0y3GUO5WX4sXHUbEjqpXyeP+E6U1j6HBR4yQ3
 2ErqNNHp/X/lLQ==;
From: Arash Esbati <arash@HIDDEN>
To: Tim Ruffing <dev@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
In-Reply-To: <3ea2db009c53358d773549e74914ed44745df362.camel@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
 <m27c12g42b.fsf@HIDDEN>
 <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
 <m2ms9xd08y.fsf@HIDDEN>
 <3ea2db009c53358d773549e74914ed44745df362.camel@HIDDEN>
Date: Wed, 25 Jun 2025 09:15:18 +0200
Message-ID: <m25xgkl2bd.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Tim Ruffing <dev@HIDDEN> writes:

> I've tested this, and this works in this specific case.

Thanks.

> But are you really suggesting this as a fix?

The way I see it this is a bug in latexenc.el which we should try to fix
anyway.  That would basically improve the current state.

> I feel this is building a hack on top of another.

Maybe, OTOH, mule-conf.el which adds

  ("\\.\\(tex\\|ltx\\|dtx\\|drv\\)\\'" . latexenc-find-file-coding-system)

to `file-coding-system-alist' is pre-loaded in Emacs.  So I would argue
we're relying on Emacs' default behavior here.  And if people remove
that entry, they should know what they're doing.

> If AUCTeX needs the master file to be open, then it just should open
> it and not rely on latexenc to open it.

Will take a closer look at this later, but remember that RefTeX should
also work without AUCTeX, so this point isn't much relevant.

> Your change doesn't solve the issue if any of the following happens:
>  * latexenc-dont-use-TeX-master-flag is t
>  * latexenc will be removed or changed in the future
>  * the \addbibresource commands is not in the same file as
>    \usepackage{biblatex}, see the test case in the attached zip.
>    (Again, extract it to some folder, cd into the folder with the tex
>    files, and run `emacs --init-directory=. --no-splash`)

I see your point, but I think these are sort of corner cases, given how
many times they were raised in the past.  I currently don't have the
time and energy to solve this issue in a way which can deal with all the
cases above, but I'll be happy to review and install such a change.
Patches are welcome.

Best, Arash




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 24 Jun 2025 08:51:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 24 04:51:02 2025
Received: from localhost ([127.0.0.1]:39566 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uTzMs-0007WY-8w
	for submit <at> debbugs.gnu.org; Tue, 24 Jun 2025 04:51:02 -0400
Received: from mout-p-102.mailbox.org ([80.241.56.152]:53192)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dev@HIDDEN>)
 id 1uTzMp-0007VD-3B
 for 78841 <at> debbugs.gnu.org; Tue, 24 Jun 2025 04:51:00 -0400
Received: from smtp202.mailbox.org (smtp202.mailbox.org [10.196.197.202])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 by mout-p-102.mailbox.org (Postfix) with ESMTPS id 4bRJZM0fcbz9smr;
 Tue, 24 Jun 2025 10:50:51 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=real-or-random.org;
 s=MBO0001; t=1750755051;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 in-reply-to:in-reply-to:references:references;
 bh=08t3ruG1kHbIVqSGWauyCrhyYWePai4Z9zWX7u1BwI0=;
 b=hY6rRg45NYxsWB+SU9bS9QQojzqmNxkBgPfslYwPSE7oC2fL0Pe4prUYrJ9algsrWBb9Bx
 JfDLozs2AITRoPMfWklfz8AChaf8z1cbLVKaLkQBuDkZoZdL24+MYI0twRdbBK7aZVLCuH
 nSSU51t6AqWqgUjsvOTn7R0YWjQPuIjHHCvkDgwLaSTNMkb08Htw97kxpuAV+hfiAC1jOM
 RO+p48HwHJoqWc0xb6+tSJkNba2IwoQ/L7BSZ4IgdMRRmPPEeHwGgZF6Rg/3dM+8PFuZE0
 HTSPIYwz0VVUDviHtmW8LmleISpTxj/QdcrZ1+1Mf4C2AcYZequTNHQ6ogHBlw==
Message-ID: <3ea2db009c53358d773549e74914ed44745df362.camel@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
From: Tim Ruffing <dev@HIDDEN>
To: Arash Esbati <arash@HIDDEN>
Date: Tue, 24 Jun 2025 10:50:49 +0200
In-Reply-To: <m2ms9xd08y.fsf@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
 <m27c12g42b.fsf@HIDDEN>
 <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
 <m2ms9xd08y.fsf@HIDDEN>
Content-Type: multipart/mixed; boundary="=-vJtBz6sHwQ7+NTAaPNyQ"
MIME-Version: 1.0
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-vJtBz6sHwQ7+NTAaPNyQ
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Thanks for the quick reply!

On Tue, 2025-06-24 at 10:14 +0200, Arash Esbati wrote:
> Ok.=C2=A0 But this is not a real requirement, right?=C2=A0 This is just t=
o
> showcase the issue.=C2=A0 Your setup involves setting `TeX-master' to a
> constant string, right?=C2=A0 If so, can you please delete this line:
>=20

Indeed, this is just to showcase the issue. See the comments in my
"init.el" snippet from my previous mail which have instructions to
reproduce the issue without the "%%% TeX-master:" line.


> (IIUC, `latexenc-find-file-coding-system' isn't
> prepared to deal with `TeX-master' set to a string top-level.=C2=A0 My
> change
> above adds that.

I've tested this, and this works in this specific case. But are you
really suggesting this as a fix?=C2=A0

I feel this is building a hack on top of another. If AUCTeX needs the
master file to be open, then it just should open it and not rely on
latexenc to open it.

Your change doesn't solve the issue if any of the following happens:
 * latexenc-dont-use-TeX-master-flag is t
 * latexenc will be removed or changed in the future
 * the \addbibresource commands is not in the same file as
   \usepackage{biblatex}, see the test case in the attached zip.
   (Again, extract it to some folder, cd into the folder with the tex
   files, and run `emacs --init-directory=3D. --no-splash`)


--=-vJtBz6sHwQ7+NTAaPNyQ
Content-Type: application/zip; name="reftex-bug.zip"
Content-Disposition: attachment; filename="reftex-bug.zip"
Content-Transfer-Encoding: base64

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
AAgA+orXWotGyBvoAAAASAEAABwAGAAAAAAAAAAAAKSBSQAAAHJlZnRleC1idWcvYmlibGF0ZXgt
YmliMS5iaWJ1eAsAAQToAwAABOgDAABVVAUAAYhxWWhQSwECFAMUAAgACAD6itdaS/4XuPwAAACt
AQAAHAAYAAAAAAAAAAAApIGbAQAAcmVmdGV4LWJ1Zy9iaWJsYXRleC1iaWIyLmJpYnV4CwABBOgD
AAAE6AMAAFVUBQABiHFZaFBLAQIUAxQACAAIAN1U2FoQsvdEJAAAAD4AAAAeABgAAAAAAAAAAACk
gQEDAAByZWZ0ZXgtYnVnL2JpYmxhdGV4LWNvbmZpZy50ZXh1eAsAAQToAwAABOgDAABVVAUAASNk
WmhQSwECFAMUAAgACAASVdhaP9faCZcAAADcAAAAHAAYAAAAAAAAAAAApIGRAwAAcmVmdGV4LWJ1
Zy9iaWJsYXRleC1tYWluLnRleHV4CwABBOgDAAAE6AMAAFVUBQABhWRaaFBLAQIUAxQACAAIABRV
2FpA1GXpVgAAAGIAAAAbABgAAAAAAAAAAACkgZIEAAByZWZ0ZXgtYnVnL2JpYmxhdGV4LXN1Yi50
ZXh1eAsAAQToAwAABOgDAABVVAUAAYlkWmhQSwECFAMUAAgACAARVthaGt6enxUBAACnAQAAEgAY
AAAAAAAAAAAApIFRBQAAcmVmdGV4LWJ1Zy9pbml0LmVsdXgLAAEE6AMAAAToAwAAVVQFAAFiZlpo
UEsFBgAAAAAHAAcAlAIAAMYGAAAAAA==


--=-vJtBz6sHwQ7+NTAaPNyQ--




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 24 Jun 2025 08:15:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 24 04:15:44 2025
Received: from localhost ([127.0.0.1]:39093 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uTyoh-0002sm-Dy
	for submit <at> debbugs.gnu.org; Tue, 24 Jun 2025 04:15:44 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:41648)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1uTyod-0002rs-US
 for 78841 <at> debbugs.gnu.org; Tue, 24 Jun 2025 04:15:40 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <arash@HIDDEN>)
 id 1uTyoX-0002qM-46; Tue, 24 Jun 2025 04:15:33 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=q/BB2cO++O8CpAF9T3Gr4RKzeryI3l2rQB/nASSD2C4=; b=WWW2FlPpmuS9lAxD77cB
 L1ILmdqaJcQ344P1eUP0V66Ci3dmWq5eRRQl5KVElOYY9ELIj7yKN6F1zb5pSzyTWNv1WHbkZiVOO
 qhzEutYq5oFVqTWLnXwf87H2hoZTSSnVzMB/mfwYbzzXWfOJ3P58Wyx/0t/RjIFLfyDUJbatgyXgo
 n8co+/u49f9utSGbKlN8BGGeDot8ao7USwA5sWPdlFlMlld6tX3mpm4f8BVkR01h2QcMpFPBbeFW7
 Aa/ZTllU+0zG3lW256YcTpek5kQ4FWClxw+C0v+ipdcoe2rnBNGDI5lP5m+xrXzZV4NRvbqcSMlC6
 Y95AVx23HjYPsw==;
From: Arash Esbati <arash@HIDDEN>
To: Tim Ruffing <dev@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
In-Reply-To: <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
 <m27c12g42b.fsf@HIDDEN>
 <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
Date: Tue, 24 Jun 2025 10:14:53 +0200
Message-ID: <m2ms9xd08y.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Tim Ruffing <dev@HIDDEN> writes:

> Hi again, thanks for taking the time and sorry that my instructions
> were still unclear.

Thanks for checking, and no problem =F0=9F=91=8D

> I can't reproduce the bug with your commands only,

Good.

> but I can reproduce it if I add this line (setq
> latexenc-dont-use-TeX-master-flag nil) as mentioned in my previous
> email.

Ok.  But this is not a real requirement, right?  This is just to
showcase the issue.  Your setup involves setting `TeX-master' to a
constant string, right?  If so, can you please delete this line:

%%% TeX-master: "biblatex-main"

in biblatex-sub.tex and save it, start a new Emacs with 'emacs -Q', eval
this in scratch:

--8<---------------cut here---------------start------------->8---
(progn
  (load "~/.config/emacs/.local/straight/build-30.1/auctex/auctex-autoloads=
.el" nil t t)
  (setq-default TeX-master "biblatex-main")
  (setq TeX-parse-self t)
  (add-hook 'LaTeX-mode-hook #'reftex-mode)
  (setq reftex-plug-into-AUCTeX t)
  (defun latexenc-find-file-coding-system (arg-list)
    "Determine the coding system of a LaTeX file if it uses \"inputenc.sty\=
".
The mapping from LaTeX's \"inputenc.sty\" encoding names to Emacs
coding system names is determined from `latex-inputenc-coding-alist'."
    (if (eq (car arg-list) 'insert-file-contents)
        (save-excursion
          ;; try to find the coding system in this file
          (goto-char (point-min))
          (if (catch 'cs
                (let ((case-fold-search nil))
                  (while (search-forward "inputenc" nil t)
                    (goto-char (match-beginning 0))
                    (beginning-of-line)
                    (if (or (looking-at "[^%\n]*\\\\usepackage\\[\\([^]]*\\=
)\\]{\\([^}]*,\\)?inputenc\\(,[^}]*\\)?}")
                            (looking-at "[^%\n]*\\\\inputencoding{\\([^}]*\=
\)}"))
                        (throw 'cs t)
                      (goto-char (match-end 0))))))
              (let* ((match (match-string 1))
                     (sym (or (latexenc-inputenc-to-coding-system match)
                              (intern match))))
                (cond
                 ((coding-system-p sym) sym)
                 ((and (require 'code-pages nil t) (coding-system-p sym)) s=
ym)
                 (t 'undecided)))
            ;; else try to find it in the master/main file

            ;; Fixme: If the current file is in an archive (e.g. tar,
            ;; zip), we should find the master file in that archive.
            ;; But, that is not yet implemented.   -- K.Handa
            (let ((default-directory (if (stringp (nth 1 arg-list))
                                         (file-name-directory (nth 1 arg-li=
st))
                                       default-directory))
                  latexenc-main-file)
              ;; Is there a TeX-master or tex-main-file in the local variab=
les
              ;; section?
              (unless latexenc-dont-use-TeX-master-flag
                (goto-char (point-max))
                (search-backward "\n\^L" (max (- (point-max) 3000) (point-m=
in))
                                 'move)
                (search-forward "Local Variables:" nil t)
                (when (or (re-search-forward
                           "^%+ *\\(TeX-master\\|tex-main-file\\): *\"\\(.+=
\\)\""
                           nil t)
                          ;; Addition start
                          (and (boundp 'TeX-master)
                               (stringp (default-value 'TeX-master)))
                          ;; Addition end
                          )
                  (let ((file
                         ;; Addition start
                         (or (match-string 2)
                             (and (boundp 'TeX-master)
                                  (default-value 'TeX-master))
                             ;; Addition end
                             )))
                    (dolist (ext `("" ,(if (boundp 'TeX-default-extension)
                                           (concat "." TeX-default-extensio=
n)
                                         "")
                                   ".tex" ".ltx" ".dtx" ".drv"))
                      (if (and (null latexenc-main-file) ;Stop at first.
                               (file-exists-p (concat file ext)))
                          (setq latexenc-main-file (concat file ext)))))))
              ;; try tex-modes tex-guess-main-file
              (when (and (not latexenc-dont-use-tex-guess-main-file-flag)
                         (not latexenc-main-file))
                ;; Use a separate `when' so the byte-compiler sees the fbou=
ndp.
                (when (fboundp 'tex-guess-main-file)
                  (let ((tex-start-of-header "\\\\document\\(style\\|class\=
\)"))
                    (setq latexenc-main-file (tex-guess-main-file)))))
              ;; if we found a master/main file get the coding system from =
it
              (if (and latexenc-main-file
                       (file-regular-p latexenc-main-file)
                       (file-readable-p latexenc-main-file))
                  (let* ((latexenc-dont-use-tex-guess-main-file-flag t)
                         (latexenc-dont-use-TeX-master-flag t)
                         (latexenc-main-buffer
                          (find-file-noselect latexenc-main-file t)))
                    (coding-system-base   ;Disregard the EOL part of the CS.
                     (with-current-buffer latexenc-main-buffer
                       (or coding-system-for-write buffer-file-coding-system
                           'undecided))))
                'undecided))))
      'undecided)) )
--8<---------------cut here---------------end--------------->8---

and try it again?  IIUC, `latexenc-find-file-coding-system' isn't
prepared to deal with `TeX-master' set to a string top-level.  My change
above adds that.

Best, Arash




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 23 Jun 2025 19:55:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 23 15:55:21 2025
Received: from localhost ([127.0.0.1]:58172 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uTnGC-0003UL-ND
	for submit <at> debbugs.gnu.org; Mon, 23 Jun 2025 15:55:21 -0400
Received: from mout-p-201.mailbox.org ([80.241.56.171]:41142)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dev@HIDDEN>)
 id 1uTnGA-0003Su-Cd
 for 78841 <at> debbugs.gnu.org; Mon, 23 Jun 2025 15:55:19 -0400
Received: from smtp102.mailbox.org (smtp102.mailbox.org
 [IPv6:2001:67c:2050:b231:465::102])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 by mout-p-201.mailbox.org (Postfix) with ESMTPS id 4bQzML5XTzz9sX2;
 Mon, 23 Jun 2025 21:55:10 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=real-or-random.org;
 s=MBO0001; t=1750708510;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 content-transfer-encoding:content-transfer-encoding:
 in-reply-to:in-reply-to:references:references;
 bh=iJ8p3sCTi1e4cgwEXoiHSkivTbp7dtIabiXJtewPVz0=;
 b=ScBvuMwWDGai65zlx9gQWB/CLoHR0ze1wiMFf70WI1Ubo2ZAkGT+lUM9qSCK4NrZN+/1jX
 7k/q7eqJRrJug7/K6kmqyaps2Gxm7PjcT9IuJhm9gJXo7FdmnCrMkUUW1gknfamTYsfOzl
 drQhyHrYMlBZWCdwMzIODS/qmCYPOYll1p6Rm6lDZW2IjkIUWJjo7zMJhl1pedjt6JiZhV
 En3yzcraVilEGuFNF3Z9eU36urGH6J7v3TvBBDPckb+aNnN+rj5o1fYmH11g6b1W28ZJBE
 ZHw/RR6cWWG5Pm++BWXCJfiMGArffz9Y6UPy2K494aFu4GCKj3dHFEUn/hx5eQ==
Message-ID: <6035ccd667bcb9f806c727ad8d130c128cb238fd.camel@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
From: Tim Ruffing <dev@HIDDEN>
To: Arash Esbati <arash@HIDDEN>
Date: Mon, 23 Jun 2025 21:55:09 +0200
In-Reply-To: <m27c12g42b.fsf@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
 <m27c12g42b.fsf@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Rspamd-Queue-Id: 4bQzML5XTzz9sX2
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Hi again, thanks for taking the time and sorry that my instructions
were still unclear. I can't reproduce the bug with your commands only,
but I can reproduce it if I add this line
(setq latexenc-dont-use-TeX-master-flag nil)
as mentioned in my previous email.

Consider this "init.el" file:
--8<---------------cut here---------------start------------->8---
(package-initialize t)
(package-activate 'auctex)

;; I use this:
;(add-to-list 'load-path "~/.config/emacs/.local/straight/build-30.1/auctex=
")
;(load "auctex-autoloads.el" nil t t)

(setq TeX-parse-self t)
(add-hook 'LaTeX-mode-hook #'reftex-mode)
(setq reftex-plug-into-AUCTeX t)

;; Either uncomment this and keep the "TeX-master" line in biblatex-sub.tex
(setq-default TeX-master nil)
(setq latexenc-dont-use-TeX-master-flag t)

;; Or uncomment this and remove the TeX-master-line in biblatex-sub.tex
;(setq latexenc-dont-use-TeX-master-flag nil)
;(setq-default TeX-master "biblatex-main")

(find-file "./biblatex-sub.tex")

;; Print to stdout for quicker debugging
(print (reftex-get-bibfile-list) 'external-debugging-output)
--8<---------------cut here---------------end------------->8---

Here are step-by-step instructions:
 * Save your minimal set of files in a temp directory
 * Add an init.el file as above to the directory
 * cd to the temp directory
 * Run: emacs --init-directory=3D. --no-splash

Expected outcome:
 * Two file paths are printed to stdout
 * If you try to add a citation, both entries are found=C2=A0

Actual outcome:
 * Only one file paths is printed to stdout
 * If you try to add a citation, only one entry is found

Best,
Tim




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 23 Jun 2025 10:12:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 23 06:12:13 2025
Received: from localhost ([127.0.0.1]:54269 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uTe9r-0004B6-CO
	for submit <at> debbugs.gnu.org; Mon, 23 Jun 2025 06:12:13 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:43902)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1uTe9n-00049U-LY
 for 78841 <at> debbugs.gnu.org; Mon, 23 Jun 2025 06:12:09 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <arash@HIDDEN>)
 id 1uTe9h-0006q1-5Y; Mon, 23 Jun 2025 06:12:01 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=sWM+BpyXIZvs0MwlRF+QJ+aPqS1cQHT7uNTZrBrmeFM=; b=SAd+cqHFQLQ9I+g1Hav7
 1SjiHhO08Dn4DsMTTlxA2+X9jaIi+yMuX96Uv+szW5v4aM1hxN9orkQodk2RblgLi/5lr7xSkIgqh
 E+/hJoBdgzoAHMpeEMEJVmM4I0zxV21kzE1iiD0UtOAaodT9DykCnbRSm4+y6u8NtZGz+m1KCivfA
 6HVZeLohG3LhOOei2D1lt4qcyTBA7sgom97G2crWsCv0eaAaP/VIrWJu6Ef+tC9czw3CvqIXPkDWt
 QU9jdlY41eK+ziJIRb9o4YQBHc3ssPUq/oPjssyZa9XbjiBdl8ittoPiA/faSrUewoouA05zgjhD+
 yC0tO5b1CTANvg==;
From: Arash Esbati <arash@HIDDEN>
To: Tim Ruffing <dev@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
In-Reply-To: <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
Date: Mon, 23 Jun 2025 12:11:56 +0200
Message-ID: <m27c12g42b.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

--=-=-=
Content-Type: text/plain

Tim Ruffing <dev@HIDDEN> writes:

> The thing is: As I said above, chapter.tex already knows that biblatex
> is used (because "biblatex" is in the list returned by (TeX-style-list)
> when called in chapter.tex). But the real issue is that this
> information will simply not be used when the main.tex buffer is checked
> in fundamental mode. 

I assembled a minimal set of files and tried to understand this.  The
files are attached, just save them in a temp directory, open
biblatex-main.tex and hit 'C-c C-n' to parse the file.  Now open a new
Emacs instance with 'emacs -Q' and eval this in scratch:

--8<---------------cut here---------------start------------->8---
(progn
  (package-initialize t)
  (package-activate 'auctex)

  ;; Alternatively adjust the path below and eval this if the above
  ;; doesn't work with Doom-Emacs:
  ;; (load "~/path/to/auctex/auctex-autoloads.el" nil t t)
  (setq-default TeX-master nil)
  (setq TeX-parse-self t)
  (add-hook 'LaTeX-mode-hook #'reftex-mode)
  (setq reftex-plug-into-AUCTeX t) )
--8<---------------cut here---------------end--------------->8---

I admit I have no idea how Doom manages its packages, so you can load
auctex-autoloads.el if the package-... functions don't work with Doom.
Once done, visit biblatex-sub.tex with this setup.  For me, all works as
expected and RefTeX finds both databases.  This is what I see when I hit
'C-c C-m cite RET . RET':

--=-=-=
Content-Type: image/png
Content-Disposition: inline; filename=snap.png
Content-Transfer-Encoding: base64

iVBORw0KGgoAAAANSUhEUgAAAlMAAAEYCAYAAAB4NnPaAAABVmlDQ1BJQ0MgUHJvZmlsZQAAGJVj
YGBiSCwoyGFhYGDIzSspCnJ3UoiIjFJgf87ACYQCDFYMsonJxQWOAQE+QCUMMBoVfLvGwAiiL+uC
zPK/usH68hpb82tik+fezFypjakeBXClpBYnA+k/QKyRXFBUwsDAqAJkB5SXFIDYQMwgUgR0FJDd
AWKnQ9hzQOwkCHsDWE1IkDOQfQTIFkjOSEwBsq8A2TpJSOLpSOzcnNJkqBtArudJzQsNBtFALMPg
yhDGYMRgzmDJYIpDnQlYnTNDPkMBQyVDEUMmQzpDBkMJgwKDI1CkgCGHIRXI9mTIY0hm0GPQAbKN
GAyA2BgUvujhhhDL4wcafQzImIkQS+JjYNgNjCLBYwgxtR1AL5gxMBw4W5BYlAgPTcZvLMVpxkYQ
Nvd2BgbWaf//fw5nYGDXZGD4e/3//9/b////u4yBgfkWUO83ACwSYcbFIPmlAAAAVmVYSWZNTQAq
AAAACAABh2kABAAAAAEAAAAaAAAAAAADkoYABwAAABIAAABEoAIABAAAAAEAAAJToAMABAAAAAEA
AAEYAAAAAEFTQ0lJAAAAU2NyZWVuc2hvdChO8P8AAAHWaVRYdFhNTDpjb20uYWRvYmUueG1wAAAA
AAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA2
LjAuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8y
Mi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAg
ICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAg
ICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI4MDwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAg
ICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj41OTU8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgog
ICAgICAgICA8ZXhpZjpVc2VyQ29tbWVudD5TY3JlZW5zaG90PC9leGlmOlVzZXJDb21tZW50Pgog
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
--=-=-=
Content-Type: text/plain


Can we please take this now from here?  Otherwise it's too confusing.
Thanks.

Best, Arash

--=-=-=
Content-Type: application/x-tex
Content-Disposition: attachment; filename=biblatex-main.tex
Content-Transfer-Encoding: base64

XGRvY3VtZW50Y2xhc3N7YXJ0aWNsZX0KClx1c2VwYWNrYWdlW2JhY2tlbmQ9YmlidGV4XXtiaWJs
YXRleH0KXGFkZGJpYnJlc291cmNle2JpYmxhdGV4LWJpYjF9ClxhZGRiaWJyZXNvdXJjZXtiaWJs
YXRleC1iaWIyfQoKXGJlZ2lue2RvY3VtZW50fQoKXGlucHV0e2JpYmxhdGV4LXN1Yn0KClNvbWUg
dGV4dC4KClxlbmR7ZG9jdW1lbnR9CgolJSUgTG9jYWwgVmFyaWFibGVzOgolJSUgbW9kZTogTGFU
ZVgKJSUlIFRlWC1tYXN0ZXI6IHQKJSUlIEVuZDoK
--=-=-=
Content-Type: application/x-tex
Content-Disposition: attachment; filename=biblatex-sub.tex
Content-Transfer-Encoding: base64

VGhpcyBpcyBhIHN1YmZpbGUuCgolJSUgTG9jYWwgVmFyaWFibGVzOgolJSUgbW9kZTogTGFUZVgK
JSUlIFRlWC1tYXN0ZXI6ICJiaWJsYXRleC1tYWluIgolJSUgRW5kOgo=
--=-=-=
Content-Type: application/octet-stream
Content-Disposition: attachment; filename=biblatex-bib1.bib
Content-Transfer-Encoding: base64

QGJvb2t7bGFtcG9ydDo5NCwKICBhdXRob3IgICAgPSB7TGVzbGllIEJhcnJ5IExhbXBvcnR9LAog
IHRpdGxlICAgICA9IHtMYVRlWCAtIHtBfSBEb2N1bWVudCBQcmVwYXJhdGlvbiBTeXN0ZW06IFVz
ZXIncyBHdWlkZQogICAgICAgICAgICAgICBhbmQgUmVmZXJlbmNlIE1hbnVhbCwgU2Vjb25kIEVk
aXRpb259LAogIHB1Ymxpc2hlciA9IHtQZWFyc29uIC8gUHJlbnRpY2UgSGFsbH0sCiAgeWVhciAg
ICAgID0gezE5OTR9LAogIGlzYm4gICAgICA9IHs5NzgtMC0yMDEtNTI5ODMtOH0sCiAgdGltZXN0
YW1wID0ge0ZyaSwgMDggQXByIDIwMTEgMTg6MjE6MDAgKzAyMDB9LAp9Cg==
--=-=-=
Content-Type: application/octet-stream
Content-Disposition: attachment; filename=biblatex-bib2.bib
Content-Transfer-Encoding: base64

QGJvb2t7bWl0dGVsYmFjaDo5NywKICBhdXRob3IgICAgPSB7TWljaGVsIEdvb3NzZW5zIGFuZAog
ICAgICAgICAgICAgICBTZWJhc3RpYW4gUmFodHogYW5kCiAgICAgICAgICAgICAgIEZyYW5rIE1p
dHRlbGJhY2h9LAogIHRpdGxlICAgICA9IHtUaGUgTGFUZVggR3JhcGhpY3MgQ29tcGFuaW9uIC0g
SWxsdXN0cmF0aW5nIGRvY3VtZW50cwogICAgICAgICAgICAgICB3aXRoIFRlWCBhbmQgUG9zdFNj
cmlwdH0sCiAgc2VyaWVzICAgID0ge0FkZGlzb24tV2VzbGV5IHNlcmllcyBvbiB0b29scyBhbmQg
dGVjaG5pcXVlcwogICAgICAgICAgICAgICBmb3IgY29tcHV0ZXIgdHlwZXNldHRpbmd9LAogIHB1
Ymxpc2hlciA9IHtBZGRpc29uLVdlc2xleX0sCiAgeWVhciAgICAgID0gezE5OTd9LAogIGlzYm4g
ICAgICA9IHs5NzgtMC0yMDEtODU0NjktNX0sCn0K
--=-=-=--




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 22 Jun 2025 12:54:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 22 08:54:12 2025
Received: from localhost ([127.0.0.1]:47426 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uTKD5-0002jg-Ad
	for submit <at> debbugs.gnu.org; Sun, 22 Jun 2025 08:54:12 -0400
Received: from mout-p-101.mailbox.org ([2001:67c:2050:0:465::101]:47280)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dev@HIDDEN>)
 id 1uTKD2-0002hn-GO
 for 78841 <at> debbugs.gnu.org; Sun, 22 Jun 2025 08:54:09 -0400
Received: from smtp202.mailbox.org (smtp202.mailbox.org [10.196.197.202])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 by mout-p-101.mailbox.org (Postfix) with ESMTPS id 4bQB3q5Yj0z9ss9;
 Sun, 22 Jun 2025 14:53:59 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=real-or-random.org;
 s=MBO0001; t=1750596839;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 content-transfer-encoding:content-transfer-encoding:
 in-reply-to:in-reply-to:references:references;
 bh=Z43y8VP34xcRL3PGp3i7n3iFLgIikEXcQlRhxvz1oh8=;
 b=Ru5LfawqkGD2GWHlgedthlFm1Xcbjj5pJ+WyWnYt4+t2ryR3DXtNUqYMb1oVoFypgogt0O
 SVAKZGsY/7+gbk9ydQmcGXLaNsteSaxpF8Di+1W0JSVbCiR9viR/E5rAX6AhnPSfVOjZ3L
 rSBoLesAhk5LWa4kPW4HY7DVyYfirlQ0O9Ygxt9rPCxTIqggTCCAFdrs1Q1SxL2VWvEgnY
 p0hVkJgT2p5pR3jenpB/zVXVLviHA1FdlcTYizJV/yY8Gwnf/GtRzG3Jb9mQl3mJSiyT1t
 1gg6psRd6rXaoERs9+iFe1gayX64d5HLoAn6j0VZjKP4pSfiFm7Co3S7fR8+Eg==
Message-ID: <85f7ef2829b05689da63269d8b8e2f95ba6063db.camel@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
From: Tim Ruffing <dev@HIDDEN>
To: Arash Esbati <arash@HIDDEN>
Date: Sun, 22 Jun 2025 14:53:58 +0200
In-Reply-To: <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
 <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Sorry for another email. Just for completeness, this is on
AUCTeX 14.0.9 and Emacs 30.1, and I use Doom Emacs.

Tim




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 22 Jun 2025 12:53:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 22 08:53:05 2025
Received: from localhost ([127.0.0.1]:47421 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uTKBy-0002Y7-56
	for submit <at> debbugs.gnu.org; Sun, 22 Jun 2025 08:53:05 -0400
Received: from mout-p-102.mailbox.org ([2001:67c:2050:0:465::102]:58556)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dev@HIDDEN>)
 id 1uTKBu-0002W4-12
 for 78841 <at> debbugs.gnu.org; Sun, 22 Jun 2025 08:53:00 -0400
Received: from smtp1.mailbox.org (smtp1.mailbox.org [10.196.197.1])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 by mout-p-102.mailbox.org (Postfix) with ESMTPS id 4bQB2Q3lfNz9spg;
 Sun, 22 Jun 2025 14:52:46 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=real-or-random.org;
 s=MBO0001; t=1750596766;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 content-transfer-encoding:content-transfer-encoding:
 in-reply-to:in-reply-to:references:references;
 bh=DZDxoQUh0lDKUhJTmlF0w0yWVatBKp5Gwlrv/OoPAxc=;
 b=xhxfR/vOfAXgj0lenHv1cgwYR3Q8ymUWNhkB17/Q0z39j1WciMQF5fWYyiWqaAv9tloWKS
 CwTYxor5w1FuUqKN8STgZN2Trp0lTc7QvIXlnop9tkGoOaq/AjGQd6A78zflmqA3x9iG3z
 mZFLhXEAU5wOjWrQQc0M3e/+JNGPZOHg3FUS7BXgAV4BsbbpKnkPDVbeLiVpZz69y02HB4
 +ZIeBa4UFWpEI5Jd7U6S0s786iwOSqEcL/Qo7odgznP6gNYUuncyzoEe+onELp5f7foEkM
 8GBzxkV7TQYblJ4CvHpMkp7l2ZJWG9M5colqtJXNY2mNjt9GLCm1+ytAH/Z0Xw==
Message-ID: <58ce178c4f360a5e2305950b85f542093e3321ac.camel@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
From: Tim Ruffing <dev@HIDDEN>
To: Arash Esbati <arash@HIDDEN>
Date: Sun, 22 Jun 2025 14:52:44 +0200
In-Reply-To: <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
 <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On Sat, 2025-06-21 at 22:05 +0200, Tim Ruffing wrote:
> I haven't investigated the root cause for this, but let me know
> if you can reproduce it now.=20

Update:=C2=A0
If you have the "%%% TeX-master: "main.tex" line, what will open and
keep open the main.tex buffer when opening chapter.tex is *not* AUCTeX
but the built-in latexenc.el. This is what debug-on-entry find-file-
noselect tells me, and you can confirm it by setting
  (setq latexenc-dont-use-TeX-master-flag nil),
and just to make sure, also
  (setq latexenc-dont-use-tex-guess-main-file-flag nil).

And this makes exactly the bug. So another reproducer is:

config:
(setq latexenc-dont-use-TeX-master-flag nil)  ; this is new
(setq latexenc-dont-use-tex-guess-main-file-flag nil)  ; why not=20
(setq reftex-initialize-temporary-buffers nil) ; default
(setq reftex-keep-temporary-buffers 1)  ;  default

chapter.tex:

%%% Local Variables:
%%% mode: LaTeX
%%% TeX-master: "main.tex"
%%% End:

main.tex:

\documentclass{standalone}
\usepackage{biblatex}
\addbibresource{1.bib}
\addbibresource{2.bib}
\begin{document}
\input{chapter.tex}
\end{document}

However, you're still right. AUCTeX will *also* open main.tex when it's
initialized in chapter.tex. And in particular, even with the above
reproducer, i.e., even with latexenc-dont-use-TeX-master-flag set to
nil, "biblatex" will be in (TeX-style-list) when called in chapter.tex.
That means that AUCTeX correctly figures out the main file and parses
it (but it won't keep the main.tex buffer open unlike latexenc).=C2=A0

What happens then is what I described in my initial email. reftex will
open main.tex as a temp buffer in fundamental mode, and so on...  =20

The thing is: As I said above, chapter.tex already knows that biblatex
is used (because "biblatex" is in the list returned by (TeX-style-list)
when called in chapter.tex). But the real issue is that this
information will simply not be used when the main.tex buffer is checked
in fundamental mode.=20

And I believe that this analysis now really shows that either the call
to (TeX-style-list) should be performed in the buffer in which (reftex-
get-bibfile-list) is called (instead of calling it separately in each
searched buffer). Or simpler, as I've initially suggested, just never
stop after the first occurrence of a bibliography command, and the
problem will just disappear entirely.=20




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 21 Jun 2025 20:05:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 21 16:05:52 2025
Received: from localhost ([127.0.0.1]:43719 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uT4TH-0000xM-5Z
	for submit <at> debbugs.gnu.org; Sat, 21 Jun 2025 16:05:51 -0400
Received: from mout-p-101.mailbox.org ([80.241.56.151]:46414)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dev@HIDDEN>)
 id 1uT4TE-0000wI-Id
 for 78841 <at> debbugs.gnu.org; Sat, 21 Jun 2025 16:05:49 -0400
Received: from smtp1.mailbox.org (smtp1.mailbox.org [10.196.197.1])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 by mout-p-101.mailbox.org (Postfix) with ESMTPS id 4bPlhM5fLQz9smk;
 Sat, 21 Jun 2025 22:05:39 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=real-or-random.org;
 s=MBO0001; t=1750536339;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 content-transfer-encoding:content-transfer-encoding:
 in-reply-to:in-reply-to:references:references;
 bh=/qwxmHcMS5kBFYq4oDRWrOiOeR8QI+0mQazpg+7PCU8=;
 b=Qxb175R+2mkrQvAwEmFEbzTzv3iqXGXf9bxGa4Op0fCcCyyPTxgHPxBMVnF2ajq5Zs0aor
 3M49egn06rAtKix3exgZpJb7J0lC1eHlMDxp2MZqP5bjv9w9CQuFJdBdQaQaHZNOUnADxr
 4THGO09/CsHD2K/m0MbSScNSjX1qTD8wVZsss8ykp4ldr+cRbxd36NvmET3hbdxbxt8B0u
 L+P82V8oyuF/pe9sMVjDNVtX49tWBGJDarnAjKHeht3MpQVV42vueQp3oIyQZflZW1Y94d
 GasO/yMz5EkHFhflSV/jxH9QqkHHunXGrc1N/OYXTeDC2wjDnrhMJHLcXGPrbQ==
Message-ID: <38a681423b506c440b175c7ba78e2d1add2cfa69.camel@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
From: Tim Ruffing <dev@HIDDEN>
To: Arash Esbati <arash@HIDDEN>
Date: Sat, 21 Jun 2025 22:05:38 +0200
In-Reply-To: <m2cyaxje44.fsf@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
 <m2cyaxje44.fsf@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

On Sat, 2025-06-21 at 17:42 +0200, Arash Esbati wrote:
> Is this with AUCTeX?=C2=A0 I'm asking because AUCTeX opens the master fil=
e
> in
> the background when you visit a subfile.=C2=A0 So your chapter.tex should
> look like this:
>=20
> --8<---------------cut here---------------start------------->8---
> Content of chapter.tex
>=20
> %%% Local Variables:
> %%% mode: LaTeX
> %%% TeX-master: "main.tex"
> %%% End:
> --8<---------------cut here---------------end--------------->8---
>=20

Oh, that's interesting. I didn't use a local variables section, but I
have this in my config instead:

(setq-default TeX-master "main")

And this works, at least in principle. In chapter.tex, (TeX-master-
file) returns "main". And also compilation works properly and uses the
main file.

But this appears to make a difference for reftex-get-bibfile-list! I
get both bib files 1.bib and 2.bib with this chapter.tex as you
suggested:

%%% Local Variables:
%%% mode: LaTeX
%%% TeX-master: "main.tex"
%%% End:

But only 1.bib with this chapter.tex (and still setting TeX-master in
my config).
=20
%%% Local Variables:
%%% mode: LaTeX
%%% End:

(When testing, make sure to restart emacs first.)

This shouldn't happen, (setq-default TeX-master "main") is suggested in
the docs, so it should not make a difference whether it's set as a
local variable in the file or as a default in the config.

But okay, this is probably the reason why noone has discovered this
before. I haven't investigated the root cause for this, but let me know
if you can reproduce it now.=20

> I think the correct fix is to replace (boundp 'TeX-active-styles)
> with:
>=20
> (and (fboundp 'TeX-style-list)
> =C2=A0=C2=A0=C2=A0=C2=A0 (TeX-style-list))
>=20

Sure, sounds better, yes. I think that change should be applied in any
case (unless the code is removed entirely).

> > Then reftex-using-biblatex-p will fall back on a "poor-man's check"
> > (according to the comment in the code), which looks for
> > \usepackage{biblatex} using some regex.
> >=20
> > I think this logic is broken. Whether biblatex is used or not
> > should
> > not be judged in each file of a multifile document separately.
> > Either
> > the entire document uses biblatex, or it doesn't. As a result,
> > replacing boundp by local-variable-p is only my second best
> > suggestion.
>=20
> I'm not sure I follow: `TeX-style-list' returns all active styles for
> the entire document, the test is done on a per file basis, but the
> final
> result goes for the entire document.

Well okay, if AUCTeX is used, then you're right: the result is the same
for all files. But if the poor man's check is used, the regexp is
really checked separately in each file (if I'm not mistaken).=C2=A0One coul=
d
argue that this is good enough for a poor man's check. It will work as
long as the bib files are loaded in the same file that contains
\usepackage{biblatex}, which is probably the common case even for
multifile docs. But still, the behavior is a bit erratic. Then, in the
above examples, loading two bib files will work in main.tex but not in
chapter.tex.=20

>=20
> > My best suggestion is to get rid of reftex-using-biblatex-p
> > entirely,
> > and assume it's always true.
>=20
> I'm not convinced yet that this a good idea.=C2=A0 The way around, the
> current code is in place for >25 years now and the number of
> complaints
> were low :-)

Not exactly, the biblatex support has been there only for 12 years. ;)
But yeah, I agree it's still a very long time for code.

Best,
Tim




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at 78841 <at> debbugs.gnu.org:


Received: (at 78841) by debbugs.gnu.org; 21 Jun 2025 15:42:23 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 21 11:42:22 2025
Received: from localhost ([127.0.0.1]:42383 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uT0MG-0002pq-8O
	for submit <at> debbugs.gnu.org; Sat, 21 Jun 2025 11:42:22 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:57686)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arash@HIDDEN>) id 1uT0MA-0002oA-KL
 for 78841 <at> debbugs.gnu.org; Sat, 21 Jun 2025 11:42:16 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <arash@HIDDEN>)
 id 1uT0M3-00014i-IR; Sat, 21 Jun 2025 11:42:07 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=3kZKQ6HrkeOm0bD3K5ilSFbXGtURokqYBpzKIB7yajI=; b=K+vMqjMi9GetzjJqxQ4R
 CD5rMlqyyL6aKGf5thJB9GC6JH8Kiqsg4JRi64eskcPzfT7VjNA5J4FqT9mBL7BcsMlz52NS3if1w
 7Vhcr1VRJn4WOYlTLN5uNwPxhl0w8WTudGPkp2k4hssWLYroSlNclCRXBZGTxzMOQRJkHdR5koe0E
 JD6TDaT4/K/d+MoEMkUYQA6tKDa4gLihsbefCd+vNSQsVqSf3vwCcEmsnraT/h6hZlO/q+yCjSwJr
 FiwT5jlZoBMYxzwQq7eqUpwNedypoj5Z6fcj+uKIz41w4eKH3de82tVH2+bR+2iTGjARO2l+0vN0l
 umyXGKaFVy7CvA==;
From: Arash Esbati <arash@HIDDEN>
To: Tim Ruffing <dev@HIDDEN>
Subject: Re: bug#78841: reftex-get-bibfile-list fails to detect biblatex if
 there's no buffer for the main file
In-Reply-To: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
References: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
Date: Sat, 21 Jun 2025 17:42:03 +0200
Message-ID: <m2cyaxje44.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 78841
Cc: 78841 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Tim Ruffing <dev@HIDDEN> writes:

> With (default) settings
>
> (setq reftex-initialize-temporary-buffers nil)
> (setq reftex-keep-temporary-buffers 1)
>
> assume you call (reftex-get-bibfile-list) in a chapter.tex buffer but
> there's no buffer yet for the main file main.tex that looks like this:
>
> \documentclass{standalone}
> \usepackage{biblatex}
> \addbibresource{1.bib}
> \addbibresource{2.bib}
> \begin{document}
> \input{chapter.tex} 
> \end{document}

Is this with AUCTeX?  I'm asking because AUCTeX opens the master file in
the background when you visit a subfile.  So your chapter.tex should
look like this:

--8<---------------cut here---------------start------------->8---
Content of chapter.tex

%%% Local Variables:
%%% mode: LaTeX
%%% TeX-master: "main.tex"
%%% End:
--8<---------------cut here---------------end--------------->8---

> Then reftex-get-bibfile-list will return only the first bib file but it
> is supposed to return both bib files.
>
> The problem is that reftex-locate-bibliography-files tries to figure
> out whether biblatex is used, i.e., whether it needs to continue
> searching after the first bibliography command. It does so (also) in
> main.tex, which has beem opened only as a temp buffer in fundamental
> mode.

Can you come up with couple of minimal files and an exact recipe how to
do this?  In my case, main.tex if opened, see above.

> Whether biblatex is used is determined in reftex-using-biblatex-p,
> which relies on the value of TeX-active-styles if (boundp
> 'TeX-active-styles).
>
> But the latter is the wrong condition: (boundp 'TeX-active-styles) is
> true in fundamental mode because 'Tex-active-styles has a (global)
> binding of nil.
>
> Replacing
> (boundp 'TeX-active-styles)
> by
> (local-variable-p 'TeX-active-styles)
> fixes this check for me.

I think the correct fix is to replace (boundp 'TeX-active-styles) with:

(and (fboundp 'TeX-style-list)
     (TeX-style-list))

> Then reftex-using-biblatex-p will fall back on a "poor-man's check"
> (according to the comment in the code), which looks for
> \usepackage{biblatex} using some regex.
>
> I think this logic is broken. Whether biblatex is used or not should
> not be judged in each file of a multifile document separately. Either
> the entire document uses biblatex, or it doesn't. As a result,
> replacing boundp by local-variable-p is only my second best suggestion.

I'm not sure I follow: `TeX-style-list' returns all active styles for
the entire document, the test is done on a per file basis, but the final
result goes for the entire document.

> My best suggestion is to get rid of reftex-using-biblatex-p entirely,
> and assume it's always true.

I'm not convinced yet that this a good idea.  The way around, the
current code is in place for >25 years now and the number of complaints
were low :-)

Best, Arash




Information forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 19 Jun 2025 19:28:38 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 19 15:28:37 2025
Received: from localhost ([127.0.0.1]:38336 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1uSKw6-0003eW-SY
	for submit <at> debbugs.gnu.org; Thu, 19 Jun 2025 15:28:37 -0400
Received: from lists.gnu.org ([2001:470:142::17]:59096)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <dev@HIDDEN>)
 id 1uSKw2-0003cu-9B
 for submit <at> debbugs.gnu.org; Thu, 19 Jun 2025 15:28:32 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <dev@HIDDEN>)
 id 1uSKvw-0000J1-6I
 for bug-auctex@HIDDEN; Thu, 19 Jun 2025 15:28:24 -0400
Received: from mout-p-201.mailbox.org ([80.241.56.171])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_CHACHA20_POLY1305:256)
 (Exim 4.90_1) (envelope-from <dev@HIDDEN>)
 id 1uSKvt-0004mb-8Q
 for bug-auctex@HIDDEN; Thu, 19 Jun 2025 15:28:23 -0400
Received: from smtp2.mailbox.org (smtp2.mailbox.org
 [IPv6:2001:67c:2050:b231:465::2])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
 (No client certificate requested)
 by mout-p-201.mailbox.org (Postfix) with ESMTPS id 4bNVy41HZCz9stc
 for <bug-auctex@HIDDEN>; Thu, 19 Jun 2025 21:28:12 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=real-or-random.org;
 s=MBO0001; t=1750361292;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:mime-version:mime-version:content-type:content-type:
 content-transfer-encoding:content-transfer-encoding;
 bh=IAOhoUTGLpLcmnnPi/6j3e3X2mP4yjL+6jZ2KNZhO2w=;
 b=N07vK96nCeO9Z5/kAzm10xntFduIl9tbH/fvoEYv8kHOU3AxV7dCNOPCSJNNZmzUmuKgfQ
 0nkxIYS3YBFfLtfDMP5ftbmUorMwAksCzq3DJv54IgEo0todKK+ypIncNqogDKhGaiJFmc
 R+nfJwHWPew9JFQpCPvZCqkStmnbAHfYGhNV65AFqOgUh4MakBxcyf2s8bL/4XqW/7L/uX
 rzH0d5zK8cw1vGE5abtHGXcBPcS3AP4oNQVJ8ClKs8MRz2keEipuDxEtBPhSeOgpmgYpm8
 DMKj32SQlBR6e6Y0dETIA4U1RgBXgeTRl9kRGBWIt2FBDfARRxzNWPCgiMP8yA==
Message-ID: <f7024467db5f6bcae03187e909186bd2567e1a95.camel@HIDDEN>
Subject: reftex-get-bibfile-list fails to detect biblatex if there's no
 buffer for the main file
From: Tim Ruffing <dev@HIDDEN>
To: bug-auctex@HIDDEN
Date: Thu, 19 Jun 2025 21:28:10 +0200
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Rspamd-Queue-Id: 4bNVy41HZCz9stc
Received-SPF: pass client-ip=80.241.56.171;
 envelope-from=dev@HIDDEN; helo=mout-p-201.mailbox.org
X-Spam_score_int: -27
X-Spam_score: -2.8
X-Spam_bar: --
X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001,
 RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)

With (default) settings

(setq reftex-initialize-temporary-buffers nil)
(setq reftex-keep-temporary-buffers 1)

assume you call (reftex-get-bibfile-list) in a chapter.tex buffer but
there's no buffer yet for the main file main.tex that looks like this:

\documentclass{standalone}
\usepackage{biblatex}
\addbibresource{1.bib}
\addbibresource{2.bib}
\begin{document}
\input{chapter.tex}=20
\end{document}

Then reftex-get-bibfile-list will return only the first bib file but it
is supposed to return both bib files.

The problem is that reftex-locate-bibliography-files tries to figure
out whether biblatex is used, i.e., whether it needs to continue
searching after the first bibliography command. It does so (also) in
main.tex, which has beem opened only as a temp buffer in fundamental
mode. Whether biblatex is used is determined in reftex-using-biblatex-
p, which relies on the value of TeX-active-styles if (boundp 'TeX-
active-styles).=C2=A0

But the latter is the wrong condition: (boundp 'TeX-active-styles) is
true in fundamental mode because 'Tex-active-styles has a (global)
binding of nil.

Replacing
(boundp 'TeX-active-styles)
by
(local-variable-p=C2=A0'TeX-active-styles)
fixes this check for me. Then reftex-using-biblatex-p will fall back on
a "poor-man's check" (according to the comment in the code), which
looks for \usepackage{biblatex} using some regex.

However, while this patch would fix the problem for me, I still don't
like the resulting code:

 * In fact, checking TeX-active-styles would work if only the check was
   done in the chapter.tex buffer from which reftex-get-bibfile-list is
   called, but it's instead done in each buffer separately.=C2=A0
 * Similarly, the poor man's check is done in each buffer separately. I
   think this means that also the poor man's check will only work for
   any \addbibresource command which happens to be in the same buffer
   as \usepackage{biblatex}. =C2=A0

I think this logic is broken. Whether biblatex is used or not should
not be judged in each file of a multifile document separately. Either
the entire document uses biblatex, or it doesn't. As a result,
replacing boundp by local-variable-p is only my second best suggestion.

My best suggestion is to get rid of reftex-using-biblatex-p entirely,
and assume it's always true. In other words, never stop after the first
\addbibresource (or rather \bibliography) command has been found. This
gets rid of the broken logic and both imperfect heuristics. I assume
this is fine performance-wise, and I assume this is what one would do
when asked to reimplement this from scratch.=C2=A0

A look at the history shows that the initial code that stops after the
first value is is >25 years old (and this is just how far back git
goes). Back then there was only bibtex and it was okay to stop after
the first \bibliography, and CPUs were way slower. Then in 2013, the
fix for biblatex was added, but it was done in an attempt to keep the
early return if biblatex is not used.

I'm happy to provide a proper patch for either suggestion, but they're
both trivial enough that you'll probably do the changes yourself
quicker than asking me for the patch.

Best,
Tim




Acknowledgement sent to Tim Ruffing <dev@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-auctex@HIDDEN. Full text available.
Report forwarded to bug-auctex@HIDDEN:
bug#78841; Package auctex. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 7 Jul 2025 18:45:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.