src/Pure/ProofGeneral/proof_general_emacs.ML
changeset 24873 9de439f51e3c
parent 24867 e5b55d7be9bb
child 24874 e4400a70eeaa
equal deleted inserted replaced
24872:7fd1aa6671a4 24873:9de439f51e3c
   284        change print_mode (cons proof_generalN o remove (op =) proof_generalN);
   284        change print_mode (cons proof_generalN o remove (op =) proof_generalN);
   285        Isar.sync_main ());
   285        Isar.sync_main ());
   286 
   286 
   287 
   287 
   288 
   288 
   289  (** generate elisp file for keyword classification **)
   289 (** generate elisp file for keyword classification **)
   290 
   290 
   291 local
   291 local
   292 
   292 
   293 val regexp_meta = member (op =) (explode ".*+?[]^$");
   293 val regexp_meta = member (op =) (explode ".*+?[]^$");
   294 val regexp_quote = translate_string (fn c => if regexp_meta c then "\\\\" ^ c else c);
   294 val regexp_quote = translate_string (fn c => if regexp_meta c then "\\\\" ^ c else c);
   314 
   314 
   315 in
   315 in
   316 
   316 
   317 fun write_keywords s =
   317 fun write_keywords s =
   318  (init_outer_syntax ();
   318  (init_outer_syntax ();
   319   File.write (Path.explode ("isar-keywords" ^ (if s = "" then "" else "-" ^ s) ^".el"))
   319   File.write (Path.explode ("isar-keywords" ^ (if s = "" then "" else "-" ^ s) ^ ".el"))
   320     (make_elisp_syntax (OuterSyntax.dest_keywords (), OuterSyntax.dest_parsers ())));
   320     (make_elisp_syntax (OuterSyntax.dest_keywords (), OuterSyntax.dest_parsers ())));
   321 
   321 
   322 end;
   322 end;
   323 
   323 
   324 end;
   324 end;