mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-06 06:20:55 -08:00
Use 'outline-heading-end-regexp' consistently.
* lisp/outline.el (outline-font-lock-keywords): For non-nil 'outline-search-function' also search for 'outline-heading-end-regexp' afterwards like there is 'outline-heading-end-regexp' at the end of the regexp counterpart. (outline-minor-mode-highlight-buffer): Use 'outline-heading-end-regexp' like in 'outline-font-lock-keywords' instead of "$". For non-nil 'outline-search-function' also use 'outline-heading-end-regexp' the same way. * lisp/help.el (describe-bindings): Remove unnecessary buffer-local 'outline-heading-end-regexp'.
This commit is contained in:
parent
f9b311464d
commit
c9cb89edd5
2 changed files with 18 additions and 9 deletions
|
|
@ -793,7 +793,6 @@ or a buffer name."
|
|||
|
||||
(when describe-bindings-outline
|
||||
(setq-local outline-regexp ".*:$")
|
||||
(setq-local outline-heading-end-regexp ":\n")
|
||||
(setq-local outline-level (lambda () 1))
|
||||
(setq-local outline-minor-mode-cycle t
|
||||
outline-minor-mode-highlight t
|
||||
|
|
|
|||
|
|
@ -259,13 +259,18 @@ non-nil and point is located on the heading line.")
|
|||
map))
|
||||
|
||||
(defvar outline-font-lock-keywords
|
||||
'(
|
||||
`(
|
||||
;; Highlight headings according to the level.
|
||||
(eval . (list (or (when outline-search-function
|
||||
(lambda (limit)
|
||||
,(lambda (limit)
|
||||
(when-let* ((ret (funcall outline-search-function limit)))
|
||||
;; This is equivalent to adding ".*" in the regexp below.
|
||||
(set-match-data (list (match-beginning 0) (pos-eol)))
|
||||
(set-match-data
|
||||
(list (match-beginning 0)
|
||||
(save-excursion
|
||||
(save-match-data
|
||||
(re-search-forward
|
||||
(concat ".*" outline-heading-end-regexp) nil t)))))
|
||||
ret)))
|
||||
(concat "^\\(?:" outline-regexp "\\).*" outline-heading-end-regexp))
|
||||
0 '(if outline-minor-mode
|
||||
|
|
@ -520,11 +525,16 @@ outline font-lock faces to those of major mode."
|
|||
(save-excursion
|
||||
(goto-char (point-min))
|
||||
(let ((regexp (unless outline-search-function
|
||||
(concat "^\\(?:" outline-regexp "\\).*$"))))
|
||||
(concat "^\\(?:" outline-regexp "\\).*" outline-heading-end-regexp))))
|
||||
(while (if outline-search-function
|
||||
(when-let* ((ret (funcall outline-search-function)))
|
||||
;; This is equivalent to adding ".*" in the regexp above.
|
||||
(set-match-data (list (match-beginning 0) (pos-eol)))
|
||||
(set-match-data
|
||||
(list (match-beginning 0)
|
||||
(save-excursion
|
||||
(save-match-data
|
||||
(re-search-forward
|
||||
(concat ".*" outline-heading-end-regexp) nil t)))))
|
||||
ret)
|
||||
(re-search-forward regexp nil t))
|
||||
(let ((overlay (make-overlay (match-beginning 0) (match-end 0))))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue