Subject: bug#78693: 14.0.9; Folding of math macros with a function spec is broken

From: "Paul D. Nelson" <[email-masked]>
Date: Wed, 04 Jun 2025 12:32:08 +0200

Thanks Raghuzar.  The issue is the result of this change:

--8<---------------cut here---------------start------------->8---
diff --git a/tex-fold.el b/tex-fold.el
index 766270ef..78e5b822 100644
--- a/tex-fold.el
+++ b/tex-fold.el
@@ -901,6 +901,12 @@ TYPE can be either `env' for environments, `macro' for macros or
            (goto-char (1+ start))
            (LaTeX-find-matching-end)
            (point))
+          ((eq type 'math)
+           (goto-char (1+ start))
+           (if (zerop (skip-chars-forward "A-Za-z@"))
+               (forward-char)
+             (skip-chars-forward "*"))
+           (point))
           (t
            (goto-char start)
            (TeX-find-macro-end)))))
--8<---------------cut here---------------end--------------->8---

The intent here was that "math macros" built-in to tex-fold don't take
arguments, but this is not the case for the custom one you provide.

> (setq TeX-fold-math-spec-list `((,(lambda (text) (propertize text 'face '(underline))) ("underline"))))

Is there a reason to prefer this vs. the same with
TeX-fold-macro-spec-list in place of TeX-fold-math-spec-list?

Paul