| "[" { out "["; TP.OB }
| "]" { out "]"; TP.CB }
| "*" { out "*"; TP.SR }
+ | "^" { out "^"; TP.CF }
| "+" { out "+"; TP.PS }
| "(" { out "("; TP.OP }
| ")" { out ")"; TP.CP }
| "@" { out ")"; TP.AT }
- | "space" { out "name"; TP.SPACE }
+ | "space" { out "space"; TP.SPACE }
| "name" { out "name"; TP.NAME }
| "table" { out "table"; TP.TABLE }
| "class" { out "class"; TP.CSS }
+ | "uri" { out "uri"; TP.URI }
+ | "ext" { out "ext"; TP.EXT }
| eof { TP.EOF }
and str = parse
| QT { "" }
+ | "\\\\" { "\\" ^ str lexbuf }
| "\\\"" { "\"" ^ str lexbuf }
| _ as c { S.make 1 c ^ str lexbuf }
and block = parse