emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/auctex 03a5aac0d7 08/18: Improve guessing a name for th


From: Tassilo Horn
Subject: [elpa] externals/auctex 03a5aac0d7 08/18: Improve guessing a name for the current header line
Date: Sun, 17 Mar 2024 07:37:12 -0400 (EDT)

branch: externals/auctex
commit 03a5aac0d7843b8e89701d73b29eb02d5654db28
Author: Arash Esbati <arash@gnu.org>
Commit: Arash Esbati <arash@gnu.org>

    Improve guessing a name for the current header line
    
    * latex.el (LaTeX-outline-name): Handle long titles and the ones
    with balanced braces correctly.  (bug#32062)
    
    Co-authored-by: Omar Antolin Camarena <omar.antolin@gmail.com>
---
 latex.el | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/latex.el b/latex.el
index 3e3452a4d3..36177c4847 100644
--- a/latex.el
+++ b/latex.el
@@ -366,9 +366,16 @@ If so, return the second element, otherwise return nil."
 (defun LaTeX-outline-name ()
   "Guess a name for the current header line."
   (save-excursion
-    (if (re-search-forward "{\\([^}]*\\)}" (+ (point) fill-column 10) t)
-        (match-string 1)
-      (buffer-substring (point) (min (point-max) (+ 20 (point)))))))
+    (search-forward "{" nil t)
+    (let ((beg (point)))
+      (backward-char)
+      (condition-case nil
+          (with-syntax-table (TeX-search-syntax-table ?\{ ?\})
+            (forward-sexp)
+            (backward-char))
+        (error (forward-sentence)))
+      (replace-regexp-in-string "[\n\r][ ]*" " "
+                                (buffer-substring beg (point))))))
 
 (add-hook 'TeX-remove-style-hook
           (lambda () (setq LaTeX-largest-level nil)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]