@@ -3830,6 +3830,30 @@ Supported attributes:
38303830 state , !: s , [] )),
38313831 DocAbove);
38323832
3833+ MLCode(Pred("coq.goal->pp" ,
3834+ CIn(goal ,"G" ,
3835+ Out(ppboxes , "B" ,
3836+ Full(raw_ctx , {|prints a goal G to a pp.t B using Coq's pretty printer"
3837+ Supported attributes:
3838+ - @ppall! (default: false, prints all details)
3839+ - @ppmost! (default: false, prints most details)
3840+ - @pplevel! (default: _, prints parentheses to reach that level, 200 = off)
3841+ - @holes! (default: false, prints evars as _)|} ))),
3842+ (fun (proof_context ,evar ,args ) _ ~depth _ _ state ->
3843+ let sigma = get_sigma state in
3844+ let pr_named_context_of env sigma =
3845+ let make_decl_list env d pps = Printer. pr_named_decl env sigma d :: pps in
3846+ let psl = List. rev (Environ. fold_named_context make_decl_list env ~init :[] ) in
3847+ Pp. (v 0 (prlist_with_sep (fun _ -> ws 2 ) (fun x -> x ) psl )) in
3848+ let s = Pp. (repr @@ with_pp_options proof_context .options .pp (fun () ->
3849+ v 0 @@
3850+ pr_named_context_of proof_context .env sigma ++ cut () ++
3851+ str "======================" ++ cut () ++
3852+ Printer. pr_econstr_env proof_context .env sigma
3853+ Evd. (evar_concl @@ find_undefined sigma evar ))) in
3854+ state , !: s , [] )),
3855+ DocAbove);
3856+
38333857 LPDoc "-- Extra Dependencies -----------------------------------------------" ;
38343858
38353859 MLCode(Pred("coq.extra-dep" ,
0 commit comments