src/Pure/Isar/isar_syn.ML
changeset 27617 dee36037a832
parent 27614 f38c25d106a7
child 27681 8cedebf55539
equal deleted inserted replaced
27616:a811269b577c 27617:dee36037a832
   715 
   715 
   716 
   716 
   717 (* global history commands *)
   717 (* global history commands *)
   718 
   718 
   719 val _ =
   719 val _ =
       
   720   OuterSyntax.improper_command "Isar.command" "define command (Isar editor model)" K.control
       
   721     (Scan.optional P.properties [] -- P.position P.string >> (fn (props, text) =>
       
   722       Toplevel.no_timing o Toplevel.imperative (fn () =>
       
   723         ignore (Isar.create_command (OuterSyntax.prepare_command props text)))));
       
   724 
       
   725 val _ =
       
   726   OuterSyntax.improper_command "Isar.insert" "insert command (Isar editor model)" K.control
       
   727     (P.string -- P.string >> (fn (prev, id) =>
       
   728       Toplevel.no_timing o Toplevel.imperative (fn () => Isar.insert_command prev id)));
       
   729 
       
   730 val _ =
       
   731   OuterSyntax.improper_command "Isar.remove" "remove command (Isar editor model)" K.control
       
   732     (P.string >> (fn id =>
       
   733       Toplevel.no_timing o Toplevel.imperative (fn () => Isar.remove_command id)));
       
   734 
       
   735 val _ =
   720   OuterSyntax.improper_command "init_toplevel" "init toplevel point-of-interest" K.control
   736   OuterSyntax.improper_command "init_toplevel" "init toplevel point-of-interest" K.control
   721     (Scan.succeed (Toplevel.no_timing o Toplevel.imperative Isar.init_point));
   737     (Scan.succeed (Toplevel.no_timing o Toplevel.imperative Isar.init_point));
   722 
   738 
   723 val _ =
   739 val _ =
   724   OuterSyntax.improper_command "linear_undo" "undo commands" K.control
   740   OuterSyntax.improper_command "linear_undo" "undo commands" K.control