aboutsummaryrefslogtreecommitdiffhomepage
path: root/isar
diff options
context:
space:
mode:
authorGravatar Makarius Wenzel <makarius@sketis.net>2000-06-16 17:10:51 +0000
committerGravatar Makarius Wenzel <makarius@sketis.net>2000-06-16 17:10:51 +0000
commit8d4028b7e7b88596e572fd58116129201433b0a2 (patch)
treef532ac107cdbb6e299d0be122300ff61808e80f9 /isar
parent07104f014aa8a696ac1aee4f4f839c1092d1f160 (diff)
proper function-menu (fume) setup;
Diffstat (limited to 'isar')
-rw-r--r--isar/isar-syntax.el31
-rw-r--r--isar/isar.el5
2 files changed, 28 insertions, 8 deletions
diff --git a/isar/isar-syntax.el b/isar/isar-syntax.el
index 8e1285c7..5ba2052d 100644
--- a/isar/isar-syntax.el
+++ b/isar/isar-syntax.el
@@ -92,6 +92,12 @@
isar-keywords-theory-heading
isar-keywords-theory-goal))
+(defconst isar-keywords-fume
+ (append isar-keywords-theory-begin
+ isar-keywords-theory-heading
+ isar-keywords-theory-decl
+ isar-keywords-theory-goal))
+
(defconst isar-keywords-indent-open
(append isar-keywords-theory-goal
isar-keywords-proof-goal
@@ -142,18 +148,12 @@
(defconst isar-global-save-command-regexp
(proof-anchor-regexp (isar-ids-to-regexp isar-keywords-qed-global)))
-(defconst isar-save-with-hole-regexp proof-no-regexp)
-
(defconst isar-goal-command-regexp
(proof-anchor-regexp (isar-ids-to-regexp isar-keywords-theory-goal)))
(defconst isar-local-goal-command-regexp
(proof-anchor-regexp (isar-ids-to-regexp isar-keywords-local-goal)))
-(defconst isar-goal-with-hole-regexp
- (concat "\\(" (isar-ids-to-regexp isar-keywords-theory-goal) "\\)" isar-name-regexp ":")
- "Regexp matching goal commands in Isabelle/Isar which name a theorem")
-
(defconst isar-comment-start "(*")
(defconst isar-comment-end "*)")
(defconst isar-comment-start-regexp (regexp-quote isar-comment-start))
@@ -320,6 +320,25 @@
(proof-anchor-regexp (isar-ids-to-regexp isar-keywords-theory-switch)))
+;; ----- function-menu
+
+(defconst isar-any-entity-regexp
+ (concat "\\(" (isar-ids-to-regexp isar-keywords-fume) "\\)"
+ "\\(" isar-name-regexp "[[:=]\\)?"))
+
+(defconst isar-named-entity-regexp
+ (concat "\\(" (isar-ids-to-regexp isar-keywords-fume) "\\)"
+ isar-name-regexp "[[:=]"))
+
+(defconst isar-unnamed-entity-regexp
+ (concat "\\(" (isar-ids-to-regexp isar-keywords-fume) "\\)"))
+
+(defconst isar-next-entity-regexps
+ (list isar-any-entity-regexp
+ (list isar-named-entity-regexp '(1 2))
+ (list isar-unnamed-entity-regexp 1)))
+
+
;; ----- indentation
(defconst isar-indent-any-regexp
diff --git a/isar/isar.el b/isar/isar.el
index f69eaa53..7f4a0615 100644
--- a/isar/isar.el
+++ b/isar/isar.el
@@ -172,8 +172,9 @@
;; script buffer.
proof-save-command-regexp isar-save-command-regexp
proof-goal-command-regexp isar-goal-command-regexp
- proof-goal-with-hole-regexp isar-goal-with-hole-regexp
- proof-save-with-hole-regexp isar-save-with-hole-regexp
+ proof-goal-with-hole-regexp nil
+ proof-save-with-hole-regexp nil
+ proof-script-next-entity-regexps isar-next-entity-regexps
proof-indent-enclose-offset (- proof-indent)
proof-indent-open-offset 0