more message markup, provided by prover;
authorwenzelm
Mon, 05 Aug 2013 15:48:13 +0200
changeset 52863 acbced24e5fc
parent 52862 930ce8eacb87
child 52864 c2da0d3b974d
more message markup, provided by prover;
src/Pure/Tools/find_theorems.ML
src/Tools/jEdit/src/find_dockable.scala
--- a/src/Pure/Tools/find_theorems.ML	Mon Aug 05 15:29:10 2013 +0200
+++ b/src/Pure/Tools/find_theorems.ML	Mon Aug 05 15:48:13 2013 +0200
@@ -659,11 +659,16 @@
         print_fn = fn _ => fn state =>
           let
             val msg =
-              Pretty.string_of (pretty_theorems_cmd state NONE false (parse_query query))
-                handle exn =>
-                  if Exn.is_interrupt exn then reraise exn
-                  else ML_Compiler.exn_message exn;  (* FIXME error markup!? *)
-          in Output.result [(Markup.kindN, find_theoremsN), (Markup.instanceN, instance)] msg end}
+              XML.Elem ((Markup.writelnN, []),
+                [XML.Text
+                  (Pretty.string_of (pretty_theorems_cmd state NONE false (parse_query query)))])
+              handle exn =>
+                if Exn.is_interrupt exn then reraise exn
+                else XML.Elem ((Markup.errorN, []), [XML.Text (ML_Compiler.exn_message exn)]);
+          in
+            Output.result [(Markup.kindN, find_theoremsN), (Markup.instanceN, instance)]
+              (YXML.string_of msg)
+          end}
     | _ => NONE));
 
 end;
--- a/src/Tools/jEdit/src/find_dockable.scala	Mon Aug 05 15:29:10 2013 +0200
+++ b/src/Tools/jEdit/src/find_dockable.scala	Mon Aug 05 15:48:13 2013 +0200
@@ -75,10 +75,11 @@
 
     val new_output =
       (for {
-        (_, XML.Elem(Markup(Markup.RESULT, props), body)) <- new_state.results.entries
+        (_, XML.Elem(Markup(Markup.RESULT, props), List(XML.Elem(markup, body)))) <-
+          new_state.results.entries
         if props.contains((Markup.KIND, FIND_THEOREMS))
         if props.contains((Markup.INSTANCE, instance))
-      } yield XML.Elem(Markup(Markup.WRITELN_MESSAGE, Nil), body)).toList
+      } yield XML.Elem(Markup(Markup.message(markup.name), markup.properties), body)).toList
 
     if (new_output != current_output)
       pretty_text_area.update(new_snapshot, new_state.results, Pretty.separate(new_output))