1*86abb9fbSDavid du Colombier #include "/sys/src/cmd/lex/ldefs.h" 23e12c5d1SDavid du Colombier #include <stdio.h> 33e12c5d1SDavid du Colombier 43e12c5d1SDavid du Colombier extern FILE* yyout; 53e12c5d1SDavid du Colombier 63e12c5d1SDavid du Colombier int printable(int c)73e12c5d1SDavid du Colombierprintable(int c) 83e12c5d1SDavid du Colombier { 93e12c5d1SDavid du Colombier return 040 < c && c < 0177; 103e12c5d1SDavid du Colombier } 113e12c5d1SDavid du Colombier 123e12c5d1SDavid du Colombier void allprint(int c)13*86abb9fbSDavid du Colombierallprint(int c) 143e12c5d1SDavid du Colombier { 153e12c5d1SDavid du Colombier 163e12c5d1SDavid du Colombier switch(c) { 173e12c5d1SDavid du Colombier case '\n': 183e12c5d1SDavid du Colombier fprintf(yyout,"\\n"); 193e12c5d1SDavid du Colombier break; 203e12c5d1SDavid du Colombier case '\t': 213e12c5d1SDavid du Colombier fprintf(yyout,"\\t"); 223e12c5d1SDavid du Colombier break; 233e12c5d1SDavid du Colombier case '\b': 243e12c5d1SDavid du Colombier fprintf(yyout,"\\b"); 253e12c5d1SDavid du Colombier break; 263e12c5d1SDavid du Colombier case ' ': 273e12c5d1SDavid du Colombier fprintf(yyout,"\\\bb"); 283e12c5d1SDavid du Colombier break; 293e12c5d1SDavid du Colombier default: 303e12c5d1SDavid du Colombier if(!printable(c)) 313e12c5d1SDavid du Colombier fprintf(yyout,"\\%-3o",c); 323e12c5d1SDavid du Colombier else 333e12c5d1SDavid du Colombier c = putc(c,yyout); 343e12c5d1SDavid du Colombier USED(c); 353e12c5d1SDavid du Colombier break; 363e12c5d1SDavid du Colombier } 373e12c5d1SDavid du Colombier return; 383e12c5d1SDavid du Colombier } 39