aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Pierre Courtieu <Pierre.Courtieu@cnam.fr>2014-12-15 20:56:07 +0100
committerGravatar Pierre Courtieu <Pierre.Courtieu@cnam.fr>2014-12-15 20:56:15 +0100
commit0e730e4fa316cbfbd2d6dc60276498f57f500e0e (patch)
treea3149569f71bdc4ee842ec49b8d6d98c126c7102
parent594d2b8beb98b67f059014c5d76ba0d09dba2e4c (diff)
Changed bullet informations to warning for better display in PG.
Since it displays together with the goal, it is better (for pg and other interfaces probably) that they are in a different message.
-rw-r--r--lib/pp.ml4
-rw-r--r--lib/pp.mli10
-rw-r--r--printing/printer.ml18
3 files changed, 20 insertions, 12 deletions
diff --git a/lib/pp.ml b/lib/pp.ml
index d7ae31dd3..44036ca99 100644
--- a/lib/pp.ml
+++ b/lib/pp.ml
@@ -447,6 +447,10 @@ let logger = ref std_logger
let feedback_id = ref (Feedback.Edit 0)
let feedback_route = ref Feedback.default_route
+(* If mixing some output and a goal display, please use msg_warning,
+ so that interfaces (proofgeneral for example) can easily dispatch
+ them to different windows. *)
+
let msg_info x = !logger ~id:!feedback_id Info x
let msg_notice x = !logger ~id:!feedback_id Notice x
let msg_warning x = !logger ~id:!feedback_id Warning x
diff --git a/lib/pp.mli b/lib/pp.mli
index fd529e1d7..d4314a336 100644
--- a/lib/pp.mli
+++ b/lib/pp.mli
@@ -122,6 +122,16 @@ type message = Feedback.message = {
type logger = message_level -> std_ppcmds -> unit
+(** {6 output functions}
+
+[msg_info] and [msg_notice] do not put any decoration on output by
+default. If possible don't mix them with goal output (prefer
+msg_warning) so that dispatching of outputs is easier. Once all
+interfaces use the xml-like protocol this constraint can be
+relaxed. *)
+(* Should we advertise these functions more? Should they be the ONLY
+ allowed way to output something? *)
+
val msg_info : std_ppcmds -> unit
(** Message that displays information, usually in verbose mode, such as [Foobar
is defined] *)
diff --git a/printing/printer.ml b/printing/printer.ml
index cda0403d9..5d9fa1313 100644
--- a/printing/printer.ml
+++ b/printing/printer.ml
@@ -618,22 +618,16 @@ let pr_open_subgoals ?(proof=Proof_global.give_me_the_proof ()) () =
begin match bgoals,shelf,given_up with
| [] , [] , [] -> pr_subgoals None sigma seeds shelf stack goals
| [] , [] , _ ->
- (* emacs mode: xml-like flag for detecting information message *)
- str (emacs_str "<infomsg>") ++
- str "No more goals, however there are goals you gave up. You need to go back and solve them."
- ++ str (emacs_str "</infomsg>")
- ++ fnl () ++ fnl ()
+ msg_warning (str "No more goals, however there are goals you gave up. You need to go back and solve them.");
+ fnl () ++ fnl ()
++ pr_subgoals ~pr_first:false None bsigma seeds [] [] given_up
| [] , _ , _ ->
- (* emacs mode: xml-like flag for detecting information message *)
- str (emacs_str "<infomsg>") ++
- str "All the remaining goals are on the shelf."
- ++ str (emacs_str "</infomsg>")
- ++ fnl () ++ fnl ()
+ msg_warning (str "All the remaining goals are on the shelf.");
+ fnl () ++ fnl ()
++ pr_subgoals ~pr_first:false None bsigma seeds [] [] shelf
| _ , _, _ ->
- str "This subproof is complete, but there are still unfocused goals."
- ++ fnl () ++ fnl ()
+ msg_warning (str "This subproof is complete, but there are still unfocused goals.");
+ fnl () ++ fnl ()
++ pr_subgoals ~pr_first:false None bsigma seeds shelf [] bgoals
end
| _ -> pr_subgoals None sigma seeds shelf stack goals