X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fmatita%2FmatitaTypes.ml;h=30e64892cc2ede541a3313994e52325c170a4fbf;hb=ad8d37cce3b39565861014d870b91b1add0ec0e3;hp=5e2e98062b4e2c0148783d22d1da9e780e01a64a;hpb=9f49495f5f1e54ccacb8142043cba65ca55b7125;p=helm.git diff --git a/helm/software/matita/matitaTypes.ml b/helm/software/matita/matitaTypes.ml index 5e2e98062..30e64892c 100644 --- a/helm/software/matita/matitaTypes.ml +++ b/helm/software/matita/matitaTypes.ml @@ -36,33 +36,64 @@ type abouts = | `Current_proof | `Us | `Coercions + | `CoercionsFull + | `TeX + | `Grammar + | `Hints ] type mathViewer_entry = [ `About of abouts (* current proof *) - | `Check of string (* term *) + | `Check of string (* term *) | `Cic of Cic.term * Cic.metasenv - | `Dir of string (* "directory" in cic uris namespace *) + | `NCic of NCic.term * NCic.context * NCic.metasenv * NCic.substitution + | `Dir of string (* "directory" in cic uris namespace *) + | `HBugs of [ `Tutors ] (* list of available HBugs tutors *) + | `Metadata of [ `Deps of [`Fwd | `Back] * UriManager.uri ] | `Uri of UriManager.uri (* cic object uri *) + | `NRef of NReference.reference (* cic object uri *) | `Whelp of string * UriManager.uri list (* query and results *) + | `Univs of UriManager.uri ] let string_of_entry = function | `About `Blank -> "about:blank" | `About `Current_proof -> "about:proof" | `About `Us -> "about:us" - | `About `Coercions -> "about:coercions" + | `About `Coercions -> "about:coercions?tred=true" + | `About `CoercionsFull -> "about:coercions" + | `About `TeX -> "about:tex" + | `About `Grammar -> "about:grammar" + | `About `Hints -> "about:hints" | `Check _ -> "check:" | `Cic (_, _) -> "term:" + | `NCic (_, _, _, _) -> "nterm:" | `Dir uri -> uri + | `HBugs `Tutors -> "hbugs:/tutors/" + | `Metadata meta -> + "metadata:/" ^ + (match meta with + | `Deps (dir, uri) -> + "deps/" ^ + let suri = + let suri = UriManager.string_of_uri uri in + let len = String.length suri in + String.sub suri 4 (len - 4) in (* strip "cic:" prefix *) + (match dir with | `Fwd -> "forward" | `Back -> "backward") ^ suri) | `Uri uri -> UriManager.string_of_uri uri + | `NRef nref -> NReference.string_of_reference nref | `Whelp (query, _) -> query + | `Univs uri -> "univs:" ^ UriManager.string_of_uri uri let entry_of_string = function | "about:blank" -> `About `Blank | "about:proof" -> `About `Current_proof | "about:us" -> `About `Us - | "about:coercions" -> `About `Coercions + | "about:hints" -> `About `Hints + | "about:coercions?tred=true" -> `About `Coercions + | "about:coercions" -> `About `CoercionsFull + | "about:tex" -> `About `TeX + | "about:grammar" -> `About `Grammar | _ -> (* only about entries supported ATM *) raise (Invalid_argument "entry_of_string") @@ -74,4 +105,7 @@ class type mathViewer = method show_entry: ?reuse:bool -> mathViewer_entry -> unit method show_uri_list: ?reuse:bool -> entry:mathViewer_entry -> UriManager.uri list -> unit + method screenshot: + GrafiteTypes.status -> NCic.metasenv -> NCic.metasenv -> + NCic.substitution -> string -> unit end