X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matitaB%2Fcomponents%2Fsyntax_extensions%2Fmake_table.ml;h=84787e896d6a97ac13c5cac98b34f013a2f61d83;hb=bbb6dd07ecb430bf06bb52c2506626106449a5af;hp=59204c6e47c0aaca4837193c4f2dfc1d8e05e8d4;hpb=cacbe3c6493ddce76c4c13379ade271d8dd172e8;p=helm.git diff --git a/matitaB/components/syntax_extensions/make_table.ml b/matitaB/components/syntax_extensions/make_table.ml index 59204c6e4..84787e896 100644 --- a/matitaB/components/syntax_extensions/make_table.ml +++ b/matitaB/components/syntax_extensions/make_table.ml @@ -82,16 +82,26 @@ let parse_from_xml () = let main () = let oc = open_out Sys.argv.(1) in let oc_doc = open_out Sys.argv.(2) in + let oc_js = open_out Sys.argv.(3) in output_string oc "(* GENERATED by make_table: DO NOT EDIT! *)\n"; output_string oc_doc "(* GENERATED by make_table: DO NOT EDIT! *)\n"; + output_string oc_js "/* GENERATED by make_table: DO NOT EDIT! */\n"; output_string oc "let macro2utf8 = Hashtbl.create 2000\n"; output_string oc "let utf82macro = Hashtbl.create 2000\n"; output_string oc "let data = [\n"; + output_string oc_js "var macro2utf8 = new Object();\n"; + output_string oc_js "var utf82macro = new Object();\n"; let macro2utf8 = parse_from_xml () in Hashtbl.iter (fun macro utf8 -> + let hescape s = + String.escaped (Netencoding.Html.encode ~prefer_name:false ~in_enc:`Enc_utf8 () s) in fprintf oc " \"%s\", \"%s\";\n" macro (String.escaped utf8); - fprintf oc_doc "\\%s %s\n" macro utf8) + fprintf oc_doc "\\%s %s\n" macro utf8; + fprintf oc_js "macro2utf8[\"%s\"] = \"%s\";\n" + macro (hescape utf8); + fprintf oc_js "utf82macro[\"%s\"] = \"%s\";\n" + (hescape utf8) macro) macro2utf8; output_string oc " ];;\n"; output_string oc "let _ =\n";