aboutsummaryrefslogtreecommitdiffhomepage
path: root/isar/isar-syntax.el
diff options
context:
space:
mode:
authorGravatar David Aspinall <da@inf.ed.ac.uk>2009-09-14 07:25:08 +0000
committerGravatar David Aspinall <da@inf.ed.ac.uk>2009-09-14 07:25:08 +0000
commitfabd109c15b7bb67101a76c9865c9bd5e7608921 (patch)
tree5b8749deddd66051d6bab7700b007b9f5ec69575 /isar/isar-syntax.el
parenta5860920c359bc69c4ed4d3c06f4ed9d064a447d (diff)
Improve support for outline mode: additional headings and sublevel support
Diffstat (limited to 'isar/isar-syntax.el')
-rw-r--r--isar/isar-syntax.el21
1 files changed, 19 insertions, 2 deletions
diff --git a/isar/isar-syntax.el b/isar/isar-syntax.el
index 83d879a5..8db7ae33 100644
--- a/isar/isar-syntax.el
+++ b/isar/isar-syntax.el
@@ -121,8 +121,20 @@ This list is in the right format for proof-easy-config.")
isar-keywords-proof-script
isar-keywords-qed-global))
-(defconst isar-keywords-outline
- isar-keywords-theory-heading)
+(defconst isar-outline-heading-alist
+ (list
+ (mapcar (lambda (w) (cons w 1))
+ (append isar-keywords-theory-heading
+ isar-keywords-theory-begin
+ isar-keywords-theory-end))
+ (mapcar (lambda (w) (cons w 2))
+ (append isar-keywords-theory-script
+ isar-keywords-theory-goal))
+ (mapcar (lambda (w) (cons w 3))
+ (append isar-keywords-proof-heading
+ isar-keywords-theory-goal))
+ (mapcar (lambda (w) (cons w 4))
+ isar-keywords-proof-block)))
(defconst isar-keywords-fume
(append isar-keywords-theory-begin
@@ -552,6 +564,11 @@ matches contents of quotes for quoted identifiers.")
;; ----- outline mode
+(defconst isar-keywords-outline
+ (apply 'append
+ (mapcar (lambda (l) (mapcar 'car l))
+ isar-outline-heading-alist)))
+
(defconst isar-outline-regexp
(concat "[ \t]*\\(?:" (isar-ids-to-regexp isar-keywords-outline) "\\)")
"Outline regexp for Isabelle/Isar documents")