src/Pure/Syntax/syntax_phases.ML
changeset 49655 6642e559f165
parent 49358 0fa351b1bd14
child 49657 40e4feac2921
equal deleted inserted replaced
49654:366d8b41ca17 49655:6642e559f165
   613       | token_trans "_var" x = SOME (Pretty.mark_str (var_or_skolem x))
   613       | token_trans "_var" x = SOME (Pretty.mark_str (var_or_skolem x))
   614       | token_trans "_numeral" x = SOME (Pretty.mark_str (Isabelle_Markup.numeral, x))
   614       | token_trans "_numeral" x = SOME (Pretty.mark_str (Isabelle_Markup.numeral, x))
   615       | token_trans "_inner_string" x = SOME (Pretty.mark_str (Isabelle_Markup.inner_string, x))
   615       | token_trans "_inner_string" x = SOME (Pretty.mark_str (Isabelle_Markup.inner_string, x))
   616       | token_trans _ _ = NONE;
   616       | token_trans _ _ = NONE;
   617 
   617 
       
   618     fun markup_trans a [Ast.Variable x] = token_trans a x
       
   619       | markup_trans _ _ = NONE;
       
   620 
   618     fun markup_extern c =
   621     fun markup_extern c =
   619       (case Syntax.lookup_const syn c of
   622       (case Syntax.lookup_const syn c of
   620         SOME "" => ([], c)
   623         SOME "" => ([], c)
   621       | SOME b => markup_extern b
   624       | SOME b => markup_extern b
   622       | NONE => c |> Lexicon.unmark
   625       | NONE => c |> Lexicon.unmark
   626           case_fixed = fn x => free_or_skolem ctxt x,
   629           case_fixed = fn x => free_or_skolem ctxt x,
   627           case_default = fn x => ([], x)});
   630           case_default = fn x => ([], x)});
   628   in
   631   in
   629     t_to_ast ctxt (Syntax.print_translation syn) t
   632     t_to_ast ctxt (Syntax.print_translation syn) t
   630     |> Ast.normalize ctxt (Syntax.print_rules syn)
   633     |> Ast.normalize ctxt (Syntax.print_rules syn)
   631     |> prt_t ctxt (Syntax.prtabs syn) (Syntax.print_ast_translation syn) token_trans markup_extern
   634     |> prt_t ctxt (Syntax.prtabs syn) (Syntax.print_ast_translation syn) markup_trans markup_extern
   632     |> Pretty.markup markup
   635     |> Pretty.markup markup
   633   end;
   636   end;
   634 
   637 
   635 in
   638 in
   636 
   639