[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 7da1860c: Support starred section names
From: |
Ikumi Keita |
Subject: |
master 7da1860c: Support starred section names |
Date: |
Sat, 26 Nov 2022 11:10:33 -0500 (EST) |
branch: master
commit 7da1860c2a8cf7a2eb8f1596bf51af5532aa949b
Author: Ikumi Keita <ikumi@ikumi.que.jp>
Commit: Ikumi Keita <ikumi@ikumi.que.jp>
Support starred section names
* latex.el (LaTeX-section-level): Accept starred section names.
Simplify.
(LaTeX-section-name): Simplify.
(LaTeX-section-heading): Include starred variants in completion
candidates.
* tex.el (LaTeX-command-section-boundaries): Arrange regexp to
accept starred section names.
Simplify.
(LaTeX-command-section-change-level): Simplify.
(): Arrange cookies for silencing compiler.
* context.el (ConTeXt-numbered-section-name)
(ConTeXt-unnumbered-section-name,ConTeXt-numbered-section-level)
(ConTeXt-unnumbered-section-level):
Simplify.
---
context.el | 24 ++++--------------------
latex.el | 25 ++++++++++++-------------
tex.el | 20 ++++++++------------
3 files changed, 24 insertions(+), 45 deletions(-)
diff --git a/context.el b/context.el
index c8a99b94..1eeda6a9 100644
--- a/context.el
+++ b/context.el
@@ -363,35 +363,19 @@ section."
(defun ConTeXt-numbered-section-name (level)
"Return the name of the section corresponding to LEVEL."
- (let ((entry (TeX-member level ConTeXt-numbered-section-list
- (function (lambda (a b) (equal a (nth 1 b)))))))
- (if entry
- (nth 0 entry)
- nil)))
+ (car (rassoc (list level) ConTeXt-numbered-section-list)))
(defun ConTeXt-unnumbered-section-name (level)
"Return the name of the section corresponding to LEVEL."
- (let ((entry (TeX-member level ConTeXt-unnumbered-section-list
- (function (lambda (a b) (equal a (nth 1 b)))))))
- (if entry
- (nth 0 entry)
- nil)))
+ (car (rassoc (list level) ConTeXt-unnumbered-section-list)))
(defun ConTeXt-numbered-section-level (name)
"Return the level of the section NAME."
- (let ((entry (TeX-member name ConTeXt-numbered-section-list
- (function (lambda (a b) (equal a (nth 0 b)))))))
- (if entry
- (nth 1 entry)
- nil)))
+ (cadr (assoc name ConTeXt-numbered-section-list)))
(defun ConTeXt-unnumbered-section-level (name)
"Return the level of the section NAME."
- (let ((entry (TeX-member name ConTeXt-unnumbered-section-list
- (function (lambda (a b) (equal a (nth 0 b)))))))
- (if entry
- (nth 1 entry)
- nil)))
+ (cadr (assoc name ConTeXt-unnumbered-section-list)))
;;; Section Hooks.
diff --git a/latex.el b/latex.el
index 01436f53..ac900673 100644
--- a/latex.el
+++ b/latex.el
@@ -259,20 +259,14 @@ used in style files."
(defun LaTeX-section-name (level)
"Return the name of the section corresponding to LEVEL."
- (let ((entry (TeX-member level LaTeX-section-list
- (lambda (a b) (equal a (nth 1 b))))))
- (if entry
- (nth 0 entry)
- nil)))
+ (car (rassoc (list level) LaTeX-section-list)))
(defun LaTeX-section-level (name)
- "Return the level of the section NAME."
- (let ((entry (TeX-member name LaTeX-section-list
- (lambda (a b) (equal a (nth 0 b))))))
-
- (if entry
- (nth 1 entry)
- nil)))
+ "Return the level of the section NAME.
+NAME can be starred variant."
+ (if (string-suffix-p "*" name)
+ (setq name (substring-no-properties name 0 -1)))
+ (cadr (assoc name LaTeX-section-list)))
(defcustom TeX-outline-extra nil
"List of extra TeX outline levels.
@@ -474,7 +468,12 @@ Insert this hook into `LaTeX-section-hook' to allow the
user to change
the name of the sectioning command inserted with \\[LaTeX-section]."
(let ((string (completing-read
(concat "Level (default " LaTeX-name "): ")
- LaTeX-section-list
+ (append
+ ;; Include starred variants in candidates.
+ (mapcar (lambda (sct)
+ (list (concat (car sct) "*")))
+ LaTeX-section-list)
+ LaTeX-section-list)
nil nil nil nil LaTeX-name)))
;; Update LaTeX-name
(if (not (zerop (length string)))
diff --git a/tex.el b/tex.el
index 2dfb7a76..f7b822f5 100644
--- a/tex.el
+++ b/tex.el
@@ -56,6 +56,7 @@
(bus service path interface signal handler &rest args))
(declare-function LaTeX-environment-list "latex" nil)
(declare-function LaTeX-bibliography-list "latex" nil)
+(declare-function LaTeX-section-name "latex" (level))
(declare-function comint-exec "ext:comint"
(buffer name command startfile switches))
(declare-function comint-mode "ext:comint" nil)
@@ -91,7 +92,6 @@
(defvar LaTeX-optcl)
(defvar LaTeX-optop)
(defvar LaTeX-largest-level)
-(defvar LaTeX-section-list)
;; tex-ispell.el
(defvar TeX-ispell-verb-delimiters)
;; Others:
@@ -9077,8 +9077,7 @@ Initialize it to `LaTeX-largest-level' if needed."
determine the current section by `LaTeX-command-section'.
The levels are defined by `LaTeX-section-list'."
(interactive "p")
- (let ((old-level (car (rassoc (list (LaTeX-command-section-level))
- LaTeX-section-list))))
+ (let ((old-level (LaTeX-section-name (LaTeX-command-section-level))))
(setq LaTeX-command-section-level (+ LaTeX-command-section-level arg))
(cond
((> LaTeX-command-section-level 6)
@@ -9088,8 +9087,8 @@ The levels are defined by `LaTeX-section-list'."
(setq LaTeX-command-section-level 0)
(message "Cannot enlarge LaTeX-command-section-level above part."))
(t (message "Changed level from %s to %s."
- old-level (car (rassoc (list LaTeX-command-section-level)
- LaTeX-section-list)))))))
+ old-level (LaTeX-section-name
+ LaTeX-command-section-level))))))
(defun LaTeX-command-section-boundaries ()
"Return the boundaries of the current section as (start . end).
@@ -9097,13 +9096,10 @@ The section is determined by
`LaTeX-command-section-level'."
(let* ((case-fold-search nil)
(rx (concat "\\\\" (regexp-opt
(mapcar
- (lambda (level)
- (car (rassoc (list level) LaTeX-section-list)))
- (let (r)
- (dotimes (i (1+ (LaTeX-command-section-level)))
- (push i r))
- r)))
- "{")))
+ #'LaTeX-section-name
+ (number-sequence
+ 0 (LaTeX-command-section-level))))
+ "\\*?{")))
(cons (save-excursion
(re-search-backward rx nil t)
(point))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master 7da1860c: Support starred section names,
Ikumi Keita <=