1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-07 08:00:48 -08:00

(outline-font-lock-level): New function.

This commit is contained in:
Karl Heuer 1998-04-15 06:28:28 +00:00
parent 154a307db3
commit f06552d463

View file

@ -47,7 +47,7 @@ in the file it applies to. See also outline-heading-end-regexp."
;; already assigned a local value to it.
(or (default-value 'outline-regexp)
(setq-default outline-regexp "[*\^L]+"))
(defcustom outline-heading-end-regexp "\n"
"*Regular expression to match the end of a heading line.
You can assume that point is at the beginning of a heading when this
@ -163,6 +163,17 @@ in the file it applies to."
nil t)))
"Additional expressions to highlight in Outline mode.")
(defun outline-font-lock-level ()
(let ((count 1))
(save-excursion
(outline-back-to-heading)
(condition-case nil
(while (not (bobp))
(outline-up-heading 1)
(setq count (1+ count)))
(error)))
count))
(defvar outline-view-change-hook nil
"Normal hook to be run after outline visibility changes.")
@ -170,10 +181,10 @@ in the file it applies to."
(defun outline-mode ()
"Set major mode for editing outlines with selective display.
Headings are lines which start with asterisks: one for major headings,
two for subheadings, etc. Lines not starting with asterisks are body lines.
two for subheadings, etc. Lines not starting with asterisks are body lines.
Body text or subheadings under a heading can be made temporarily
invisible, or visible again. Invisible lines are attached to the end
invisible, or visible again. Invisible lines are attached to the end
of the heading, so they move with it, if the line is killed and yanked
back. A heading with text hidden under it is marked with an ellipsis (...).
@ -441,7 +452,7 @@ If FLAG is nil then text is shown, while if FLAG is t the text is hidden."
;; or delete it entirely (if it is contained in beg...end).
(if (< (overlay-start o) beg)
(if (> (overlay-end o) end)
(progn
(progn
(setq o1 (outline-copy-overlay o))
(move-overlay o1 (overlay-start o1) beg)
(move-overlay o end (overlay-end o)))
@ -644,7 +655,7 @@ Stop at the first and last subheadings of a superior heading."
(outline-back-to-heading)
(while (> arg 0)
(let ((point-to-move-to (save-excursion
(outline-get-next-sibling))))
(outline-get-next-sibling))))
(if point-to-move-to
(progn
(goto-char point-to-move-to)
@ -663,7 +674,7 @@ Stop at the first and last subheadings of a superior heading."
(if (< (funcall outline-level) level)
nil
(point))))
(defun outline-backward-same-level (arg)
"Move backward to the ARG'th subheading at same level as this one.
Stop at the first and last subheadings of a superior heading."