X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fmatita%2FmatitaScript.ml;h=829806871d1422f435e393faf6044b02cd18a405;hb=667640d70feb01f2a800b548fa019c92b103d75a;hp=dcddf7b2cc93cad40ef7f9bc63fef764ba2c9aff;hpb=bee436af0c6ceb1c83259c94036df8b12f901f2d;p=helm.git diff --git a/helm/software/matita/matitaScript.ml b/helm/software/matita/matitaScript.ml index dcddf7b2c..829806871 100644 --- a/helm/software/matita/matitaScript.ml +++ b/helm/software/matita/matitaScript.ml @@ -371,20 +371,28 @@ let eval_nmacro include_paths (buffer : GText.buffer) guistuff grafite_status us | TA.Screenshot (_,name) -> let status = script#grafite_status in let _,_,menv,subst,_ = status#obj in - let sequent = List.hd menv in - guistuff.mathviewer#screenshot status sequent menv subst name; + let name = Filename.dirname (script#filename) ^ "/" ^ name in + let sequents = + let selected = Continuationals.Stack.head_goals status#stack in + List.filter (fun x,_ -> List.mem x selected) menv + in + guistuff.mathviewer#screenshot status sequents menv subst name; [status, parsed_text], "", parsed_text_length | TA.NCheck (_,t) -> let status = script#grafite_status in - let ctx = [] in + let _,_,menv,subst,_ = status#obj in + let ctx = + try let _,(_,ctx,_) = List.hd menv in ctx + with Failure "hd" -> [] + in let m, s, status, t = GrafiteDisambiguate.disambiguate_nterm - None status [] [] ctx (parsed_text,parsed_text_length, + None status ctx menv subst (parsed_text,parsed_text_length, CicNotationPt.Cast (t,CicNotationPt.Implicit `JustOne)) (* XXX use the metasenv, if possible *) in guistuff.mathviewer#show_entry (`NCic (t,ctx,m,s)); - [], "", parsed_text_length + [status, parsed_text], "", parsed_text_length let rec eval_macro include_paths (buffer : GText.buffer) guistuff grafite_status user_goal unparsed_text parsed_text script mac = let module MQ = MetadataQuery in @@ -652,7 +660,7 @@ and eval_statement include_paths (buffer : GText.buffer) guistuff eval_executable include_paths buffer guistuff grafite_status user_goal unparsed_text skipped nonskipped script ex loc | GrafiteParser.LSome (GrafiteAst.Comment (loc, GrafiteAst.Code (_, ex))) - (*when Helm_registry.get_bool "matita.literate" *) -> + when Helm_registry.get_bool "matita.execcomments" -> let _, nonskipped, skipped, parsed_text_length = text_of_loc loc in eval_executable include_paths buffer guistuff grafite_status user_goal unparsed_text skipped nonskipped script ex loc