X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fmatita%2FmatitaMisc.ml;h=687cb94f052de7c1068d90ec4a88ce62c91f7a1e;hb=9935a5bf5bdc98ad01a2b0234cf4e612a62c939f;hp=0c4329e554350936ea863f1c2e581e13df8ca5d9;hpb=55b82bd235d82ff7f0a40d980effe1efde1f5073;p=helm.git diff --git a/helm/software/matita/matitaMisc.ml b/helm/software/matita/matitaMisc.ml index 0c4329e55..687cb94f0 100644 --- a/helm/software/matita/matitaMisc.ml +++ b/helm/software/matita/matitaMisc.ml @@ -30,7 +30,10 @@ open Printf (** Functions "imported" from Http_getter_misc *) let normalize_dir = Http_getter_misc.normalize_dir -let strip_suffix = Http_getter_misc.strip_suffix +let strip_suffix ~suffix s = + try + Http_getter_misc.strip_suffix ~suffix s + with Invalid_argument _ -> s let absolute_path file = if file.[0] = '/' then file else Unix.getcwd () ^ "/" ^ file @@ -150,3 +153,34 @@ let list_tl_at ?(equality=(==)) e l = | hd :: tl -> aux tl in aux l + +let shutup () = + HLog.set_log_callback (fun _ _ -> ()) +(* + let out = open_out "/dev/null" in + Unix.dup2 (Unix.descr_of_out_channel out) (Unix.descr_of_out_channel stderr) +*) + +(* FG: out_preamble *********************************************************) + +let out_comment och s = + let s = if s <> "" && s.[0] = '*' then "#" ^ s else s in + Printf.fprintf och "%s%s%s\n\n" "(*" s "*)" + +let out_line_comment och s = + let l = 70 - String.length s in + let s = Printf.sprintf " %s %s" s (String.make l '*') in + out_comment och s + +let out_preamble och = + let rt_base_dir = Filename.dirname Sys.argv.(0) in + let path = Filename.concat rt_base_dir "matita.ma.templ" in + let lines = 14 in + let ich = open_in path in + let rec print i = + if i > 0 then + let s = input_line ich in + begin Printf.fprintf och "%s\n" s; print (pred i) end + in + print lines; + out_line_comment och "This file was automatically generated: do not edit"