src/Pure/General/symbol.ML
changeset 6166 a56aaad7ff2d
parent 6118 caa439435666
child 6225 f453bd781dfd
equal deleted inserted replaced
6165:a7d74bf9da52 6166:a56aaad7ff2d
    41 val enc_end = 255;
    41 val enc_end = 255;
    42 
    42 
    43 val enc_vector =
    43 val enc_vector =
    44 [
    44 [
    45 (* GENERATED TEXT FOLLOWS - Do not edit! *)
    45 (* GENERATED TEXT FOLLOWS - Do not edit! *)
    46   "\\<space2>",
    46   "\\<spacespace>",
    47   "\\<Gamma>",
    47   "\\<Gamma>",
    48   "\\<Delta>",
    48   "\\<Delta>",
    49   "\\<Theta>",
    49   "\\<Theta>",
    50   "\\<Lambda>",
    50   "\\<Lambda>",
    51   "\\<Pi>",
    51   "\\<Pi>",
   192   | is_quasi_letter "'" = true
   192   | is_quasi_letter "'" = true
   193   | is_quasi_letter s = is_letter s;
   193   | is_quasi_letter s = is_letter s;
   194 
   194 
   195 val is_blank =
   195 val is_blank =
   196   fn " " => true | "\t" => true | "\n" => true | "\^L" => true
   196   fn " " => true | "\t" => true | "\n" => true | "\^L" => true
   197     | "\160" => true | "\\<space2>" => true
   197     | "\160" => true | "\\<spacespace>" => true
   198     | _ => false;
   198     | _ => false;
   199 
   199 
   200 val is_letdig = is_quasi_letter orf is_digit;
   200 val is_letdig = is_quasi_letter orf is_digit;
   201 
   201 
   202 fun is_printable s =
   202 fun is_printable s =
   260   let val chs = explode str in
   260   let val chs = explode str in
   261     if forall (fn c => ord c < enc_start) chs then str
   261     if forall (fn c => ord c < enc_start) chs then str
   262     else implode (map symbol' chs)
   262     else implode (map symbol' chs)
   263   end;
   263   end;
   264 
   264 
   265 val output = implode o map char o sym_explode;
   265 fun char' s = if size s > 1 then "\\" ^ s else s;
       
   266 fun output s = let val chr = (* if "isabelle_font" mem_string !print_mode *)
       
   267 (* FIXME: does not work yet, because of static calls to output in printer.ML *)
       
   268 			     (* then *) char (* else char'*)
       
   269 		in (implode o map chr o sym_explode) s end;
   266 
   270 
   267 
   271 
   268 (*final declarations of this structure!*)
   272 (*final declarations of this structure!*)
   269 val explode = sym_explode;
   273 val explode = sym_explode;
   270 val length = sym_length;
   274 val length = sym_length;