X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fcomponents%2Fbinaries%2Fmatex%2Fmatex.ml;h=ddd41304914bc1ba7235391c4668b1153c1d18e9;hb=50a9ed8c6207145fccf59e6a5dbbff935cd2c6d7;hp=db1785c794f300e2a89ea8518d5febd34f3070d0;hpb=2ffd7e47f1872878f6af4084074655da5cf3b23e;p=helm.git diff --git a/matita/components/binaries/matex/matex.ml b/matita/components/binaries/matex/matex.ml index db1785c79..ddd413049 100644 --- a/matita/components/binaries/matex/matex.ml +++ b/matita/components/binaries/matex/matex.ml @@ -15,42 +15,56 @@ module F = Filename module U = NUri module R = Helm_registry module L = Librarian -module B = NCicLibrary -module C = NCicTypeChecker -module H = HLog +module X = Ground module G = Options module E = Engine module O = TeXOutput +module K = Kernel let help_O = " Set this output directory" let help_X = " Clear configuration and options" +let help_a = " Log alpha-unconverted identifiers (default: no)" +let help_c = " Check term transformations (default: no)" +let help_g = " Global alpha-conversion (default: no)" +let help_l = " Output the list of generated files in this file" +let help_m = " Log missing notational macros (default: no)" +let help_p = " Omit proofs (default: no)" +let help_t = " Omit types (default: no)" let help = "" (* internal functions *******************************************************) -let trusted _ = true +let alpha_decode = R.triple R.string R.string R.string -let no_log _ _ = () +let const_decode = R.pair R.string R.string + +let macro_decode = R.quad R.string R.string R.int R.int let init registry = R.load_from registry; if !G.no_init then begin - B.init (); - C.set_trust trusted; - H.set_log_callback no_log; + K.init (); G.no_init := false; - end + end; + G.alpha_type := R.get_list alpha_decode "matex.alpha.type"; + G.alpha_sort := R.get_list alpha_decode "matex.alpha.sort"; + G.alpha_gref := R.get_list const_decode "matex.alpha.gref"; + G.macro_gref := R.get_list macro_decode "matex.notation.const" let is_registry s = F.check_suffix s ".conf.xml" let no_init () = - failwith "MaTeX: registry not initialized" + failwith "MaTeX: main: registry not initialized" let malformed s = - failwith ("MaTeX: malformed argument: " ^ s) + failwith ("MaTeX: main: malformed argument: " ^ s) + +let set_list fname = + let file = F.concat !G.out_dir fname in + G.close_list (); G.list_och := Some (open_out file) let process s = if is_registry s then init s @@ -59,7 +73,19 @@ let process s = else malformed s let main = +begin try A.parse [ "-O", A.String ((:=) G.out_dir), help_O; "-X", A.Unit G.clear, help_X; + "-a", A.Set G.log_alpha, help_a; + "-c", A.Set G.check, help_c; + "-g", A.Set G.global_alpha, help_g; + "-l", A.String set_list, help_l; + "-m", A.Set G.log_missing, help_m; + "-p", A.Set G.no_proofs, help_p; + "-t", A.Set G.no_types, help_t; ] process help +with + | X.Error s -> X.log s +end; +G.close_list ()