GNU bug report logs -
#62997
13.1.10; LaTeX-xparse-macro-parse in xparse.el fails when opening a LaTeX file
Previous Next
Reported by: Yuki Nishida <nishida <at> rsworks.jp>
Date: Fri, 21 Apr 2023 15:05:02 UTC
Severity: normal
Found in version 13.1.10
Done: Arash Esbati <arash <at> gnu.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 62997 in the body.
You can then email your comments to 62997 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-auctex <at> gnu.org
:
bug#62997
; Package
auctex
.
(Fri, 21 Apr 2023 15:05:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Yuki Nishida <nishida <at> rsworks.jp>
:
New bug report received and forwarded. Copy sent to
bug-auctex <at> gnu.org
.
(Fri, 21 Apr 2023 15:05:03 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
In a particular environment, opening a LaTeX file for the first time fails with the *Backtrace* buffer that says LaTeX-xparse-macro-parse fails with (scan-error “Unbalanced parentheses” ...)
It seems to be caused by an xparse macro definition containing '(' as a token in an argument's specification like:
\NewDocumentCommand\FOO{>{\SplitArgument{1}{(}}m}
I suspect the implementation interprets '(}' as balanced parentheses and causes the scan-error.
Best regards,
Yuki
Emacs : GNU Emacs 28.2 (build 1, x86_64-apple-darwin18.7.0, NS appkit-1671.60 Version 10.14.6 (Build 18G95))
of 2022-09-13
Package: 13.1.10
current state:
==============
(setq
AUCTeX-date "2023-03-05"
window-system 'ns
LaTeX-version "2e"
TeX-style-path '("/usr/local/var/auctex" "/Users/nishida/.emacs.d/elpa/auctex-13.1.10/style"
"/Users/nishida/.emacs.d/auctex/auto" "/Users/nishida/.emacs.d/auctex/style"
"auto" "style")
TeX-auto-save t
TeX-parse-self t
TeX-master nil
TeX-command-list '(("Latexmk" "latexmk %t" TeX-run-TeX nil (latex-mode) :help "Run Latexmk")
("Make" "make -j" TeX-run-TeX nil t)
("TeX"
"%(PDF)%(tex) %(file-line-error) %`%(extraopts) %S%(PDFout)%(mode)%' %(output-dir) %t"
TeX-run-TeX nil (plain-tex-mode ams-tex-mode texinfo-mode) :help
"Run plain TeX")
("LaTeX" "%`%l%(mode)%' %T" TeX-run-TeX nil (latex-mode doctex-mode) :help
"Run LaTeX")
("Makeinfo" "makeinfo %(extraopts) %(o-dir) %t" TeX-run-compile nil
(texinfo-mode) :help "Run Makeinfo with Info output")
("Makeinfo HTML" "makeinfo %(extraopts) %(o-dir) --html %t" TeX-run-compile
nil (texinfo-mode) :help "Run Makeinfo with HTML output")
("AmSTeX" "amstex %(PDFout) %`%(extraopts) %S%(mode)%' %(output-dir) %t"
TeX-run-TeX nil (ams-tex-mode) :help "Run AMSTeX")
("ConTeXt" "%(cntxcom) --once --texutil %(extraopts) %(execopts)%t"
TeX-run-TeX nil (context-mode) :help "Run ConTeXt once")
("ConTeXt Full" "%(cntxcom) %(extraopts) %(execopts)%t" TeX-run-TeX nil
(context-mode) :help "Run ConTeXt until completion")
("BibTeX" "bibtex %(O?aux)" TeX-run-BibTeX nil
(plain-tex-mode latex-mode doctex-mode ams-tex-mode texinfo-mode context-mode)
:help "Run BibTeX")
("Biber" "biber %(output-dir) %s" TeX-run-Biber nil
(plain-tex-mode latex-mode doctex-mode ams-tex-mode texinfo-mode) :help
"Run Biber")
("Texindex" "texindex %s.??" TeX-run-command nil (texinfo-mode) :help
"Run Texindex")
("Texi2dvi" "%(PDF)texi2dvi %t" TeX-run-command nil (texinfo-mode) :help
"Run Texi2dvi or Texi2pdf")
("View" "%V" TeX-run-discard-or-function t t :help "Run Viewer")
("Print" "%p" TeX-run-command t t :help "Print the file")
("Queue" "%q" TeX-run-background nil t :help "View the printer queue" :visible
TeX-queue-command)
("File" "%(o?)dvips %d -o %f " TeX-run-dvips t
(plain-tex-mode latex-mode doctex-mode ams-tex-mode texinfo-mode) :help
"Generate PostScript file")
("Dvips" "%(o?)dvips %d -o %f " TeX-run-dvips nil
(plain-tex-mode latex-mode doctex-mode ams-tex-mode texinfo-mode) :help
"Convert DVI file to PostScript")
("Dvipdfmx" "dvipdfmx -o %(O?pdf) %d" TeX-run-dvipdfmx nil
(plain-tex-mode latex-mode doctex-mode ams-tex-mode texinfo-mode) :help
"Convert DVI file to PDF with dvipdfmx")
("Ps2pdf" "ps2pdf %f %(O?pdf)" TeX-run-ps2pdf nil
(plain-tex-mode latex-mode doctex-mode ams-tex-mode texinfo-mode) :help
"Convert PostScript file to PDF")
("Glossaries" "makeglossaries %(d-dir) %s" TeX-run-command nil
(plain-tex-mode latex-mode doctex-mode ams-tex-mode texinfo-mode) :help
"Run makeglossaries to create glossary file")
("Index" "makeindex %(O?idx)" TeX-run-index nil
(plain-tex-mode latex-mode doctex-mode ams-tex-mode texinfo-mode) :help
"Run makeindex to create index file")
("upMendex" "upmendex %(O?idx)" TeX-run-index t
(plain-tex-mode latex-mode doctex-mode ams-tex-mode texinfo-mode) :help
"Run upmendex to create index file")
("Xindy" "texindy %s" TeX-run-command nil
(plain-tex-mode latex-mode doctex-mode ams-tex-mode texinfo-mode) :help
"Run xindy to create index file")
("Check" "lacheck %s" TeX-run-compile nil (latex-mode) :help
"Check LaTeX file for correctness")
("ChkTeX" "chktex -v6 %s" TeX-run-compile nil (latex-mode) :help
"Check LaTeX file for common mistakes")
("Spell" "(TeX-ispell-document \"\")" TeX-run-function nil t :help
"Spell-check the document")
("Clean" "TeX-clean" TeX-run-function nil t :help
"Delete generated intermediate files")
("Clean All" "(TeX-clean t)" TeX-run-function nil t :help
"Delete generated intermediate and output files")
("Other" "" TeX-run-command t t :help "Run an arbitrary command"))
)
Information forwarded
to
bug-auctex <at> gnu.org
:
bug#62997
; Package
auctex
.
(Fri, 21 Apr 2023 18:30:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 62997 <at> debbugs.gnu.org (full text, mbox):
Yuki Nishida <nishida <at> rsworks.jp> writes:
> In a particular environment, opening a LaTeX file for the first time
> fails with the *Backtrace* buffer that says LaTeX-xparse-macro-parse
> fails with (scan-error “Unbalanced parentheses” ...)
>
> It seems to be caused by an xparse macro definition containing '(' as
> a token in an argument's specification like:
>
> \NewDocumentCommand\FOO{>{\SplitArgument{1}{(}}m}
>
> I suspect the implementation interprets '(}' as balanced parentheses
> and causes the scan-error.
Thanks for the report. Can you please apply this patch to xparse.el and
report back if it solves the issue?
--8<---------------cut here---------------start------------->8---
diff --git a/style/xparse.el b/style/xparse.el
index 397a0c4b..ca70fd68 100644
--- a/style/xparse.el
+++ b/style/xparse.el
@@ -128,7 +128,8 @@ TYPE is one of the symbols mac or env."
;; over [>=] and a balanced {}
((looking-at-p "[>=]")
(forward-char 1)
- (forward-sexp))
+ (with-syntax-table (TeX-search-syntax-table ?\{ ?\})
+ (forward-sexp)))
;; Mandatory arguments:
;; m: Ask for input with "Text" as prompt
((looking-at-p "m")
--8<---------------cut here---------------end--------------->8---
TIA. Best, Arash
Reply sent
to
Arash Esbati <arash <at> gnu.org>
:
You have taken responsibility.
(Mon, 24 Apr 2023 08:00:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Yuki Nishida <nishida <at> rsworks.jp>
:
bug acknowledged by developer.
(Mon, 24 Apr 2023 08:00:02 GMT)
Full text and
rfc822 format available.
Message #13 received at 62997-done <at> debbugs.gnu.org (full text, mbox):
Yuki Nishida <nishida <at> rsworks.jp> writes:
> The patch works. The issue is solved.
> Many thanks for the fix.
Thanks for testing and your feedback. I've installed that change;
therefore I'm closing this report.
Best, Arash
P.S. In future, please keep ###@debbugs.gnu.org in CC when replying.
Thanks.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Mon, 22 May 2023 11:24:15 GMT)
Full text and
rfc822 format available.
This bug report was last modified 2 years and 29 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.