branch: externals/auctex
commit 433b5f9ee70411aa09e16b5de855e69c310448f1
Author: Ikumi Keita <[email protected]>
Commit: Ikumi Keita <[email protected]>
Parse package/class option with comments correctly
* latex.el: (LaTeX-auto-class-regexp-list): Replace the regexp for
RequirePackage/LoadClass option with the same one for usepackage.
* tests/latex/latex-test.el: Add test for the change above.
---
latex.el | 4 ++--
tests/latex/latex-test.el | 16 ++++++++++++++++
2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/latex.el b/latex.el
index 8dc9fa3..76c15de 100644
--- a/latex.el
+++ b/latex.el
@@ -1530,14 +1530,14 @@ This is necessary since index entries may contain
commands and stuff.")
(defvar LaTeX-auto-class-regexp-list
'(;; \RequirePackage[<options>]{<package>}[<date>]
- ("\\\\Require\\(Package\\)\\(\\[\\([^#\\.%]*?\\)\\]\\)?\
+ ("\\\\Require\\(Package\\)\\(\\[\\([^\]\\]*\\)\\]\\)?\
{\\([^#\\.\n\r]+?\\)}"
(3 4 1) LaTeX-auto-style)
;; \RequirePackageWithOptions{<package>}[<date>],
("\\\\Require\\(Package\\)WithOptions\\(\\){\\([^#\\.\n\r]+?\\)}"
(2 3 1) LaTeX-auto-style)
;; \LoadClass[<options>]{<package>}[<date>]
- ("\\\\Load\\(Class\\)\\(\\[\\([^#\\.%]*?\\)\\]\\)?{\\([^#\\.\n\r]+?\\)}"
+ ("\\\\Load\\(Class\\)\\(\\[\\([^\]\\]*\\)\\]\\)?{\\([^#\\.\n\r]+?\\)}"
(3 4 1) LaTeX-auto-style)
;; \LoadClassWithOptions{<package>}[<date>]
("\\\\Load\\(Class\\)WithOptions\\(\\){\\([^#\\.\n\r]+?\\)}"
diff --git a/tests/latex/latex-test.el b/tests/latex/latex-test.el
index 05ca2c8..a53d48e 100644
--- a/tests/latex/latex-test.el
+++ b/tests/latex/latex-test.el
@@ -165,4 +165,20 @@ last extension is stripped."
(LaTeX-bibliography-list))
'(("../foo-1.bar_2.qux3")))))
+(ert-deftest LaTeX-auto-class-regexp ()
+ "Check parsing optional argument with comment correctly.
+
+Test against RequirePackage."
+ (with-temp-buffer
+ (insert "\\RequirePackage[
+backend=biber % here is a comment
+]{biblatex}
+")
+ (latex-mode)
+ (let ((TeX-parse-self t))
+ (TeX-update-style t))
+ (should (member "biblatex" (TeX-style-list)))
+ (should (LaTeX-provided-package-options-member
+ "biblatex" "backend=biber"))))
+
;;; latex-test.el ends here