]> matita.cs.unibo.it Git - helm.git/blob - helm/DEVEL/pxp/pxp/lexers/pxp_lex_defs_iso88591.def
Initial revision
[helm.git] / helm / DEVEL / pxp / pxp / lexers / pxp_lex_defs_iso88591.def
1 (* $Id$
2  * ----------------------------------------------------------------------
3  *
4  *)
5
6 let ws = [ ' ' '\t' '\r' '\n' ]
7
8 (* Note: ISO-8859-1 charset does not have 'combining characters' *)
9
10 let letter = ['A'-'Z' 'a'-'z' '\192'-'\214' '\216'-'\246' '\248'-'\255']
11 let extender = '\183'
12 let digit = ['0'-'9']
13 let ascii_digit = ['0'-'9']
14 let ascii_hexdigit = ['0'-'9' 'A'-'F' 'a'-'f']
15 let namechar = letter | digit | '.' | ':' | '-' | '_' | extender
16 let name = ( letter | '_' | ':' ) namechar*
17 let nmtoken = namechar+
18
19 let character = ['\009' '\010' '\013' '\032'-'\255']
20
21 let character_except_question_mark =                    (* '?' = '\063' *)
22   [ '\009' '\010' '\013' '\032'-'\062' '\064'-'\255' ]
23
24 let character_except_right_angle_bracket =              (* '>' = '\062' *)
25   [ '\009' '\010' '\013' '\032'-'\061' '\063'-'\255' ]
26
27 let character_except_minus =                            (* '-' = '\045' *)
28   [ '\009' '\010' '\013' '\032'-'\044' '\046'-'\255' ]
29
30 let character_except_quot =                             (* '"' = '\034' *)
31   [ '\009' '\010' '\013' '\032'-'\033' '\035'-'\255' ]
32
33 let character_except_apos =                             (* '\'' = '\039' *)
34   [ '\009' '\010' '\013' '\032'-'\038' '\040'-'\255' ]
35
36 let pi_string = character_except_question_mark* 
37                 ( '?' character_except_right_angle_bracket 
38                       character_except_question_mark* )* 
39                 '?'?
40
41 let comment_string = character_except_minus* 
42                      ('-' character_except_minus+ )*
43
44 let normal_character = 
45   [^ '&' '<' ']' '\000'-'\008' '\010'-'\031']
46
47 let character_except_rbracket =                               (* ']' = '\093' *)
48   [ '\009' '\010' '\013' '\032'-'\092' '\094'-'\255' ]
49
50 let character_except_rbracket_rangle =          (* ']' = '\093', '>' = '\062' *)
51   [ '\009' '\010' '\013' '\032'-'\061' '\063'-'\092' '\094'-'\255' ]
52
53 let cdata_string = 
54   character_except_rbracket*
55   ( "]" character_except_rbracket+ |
56     "]]" ']'* character_except_rbracket_rangle character_except_rbracket*
57   )*
58   ']'*
59 (* cdata_string = char* - ( char* ']]>' char* ) *)
60
61 let printable_character_except_amp_lt =
62   (* '&' = '\038', '<' = '\060' *)
63   [ '\032'-'\037' '\039'-'\059' '\061'-'\255']
64
65 let printable_character_except_amp_percent =
66   (* '%' = '\037', '&' = '\038' *)
67   [ '\032'-'\036' '\039'-'\255']
68
69 let character_except_special =
70   (* '<'=060, ']'=093, '"'=034, '\''=039 *)
71   [ '\009' '\010' '\013' '\032'-'\033' '\035'-'\038' '\040'-'\059' 
72                          '\061'-'\092' '\094'-'\255' ]
73
74 (* ======================================================================
75  * History:
76  * 
77  * $Log$
78  * Revision 1.1  2000/11/17 09:57:32  lpadovan
79  * Initial revision
80  *
81  * Revision 1.1  2000/05/20 20:33:25  gerd
82  *      Initial revision.
83  *
84  * 
85  *)