~ubuntu-branches/debian/sid/libembperl-perl/sid

« back to all changes in this revision

Viewing changes to epchar.c.iso-latin-2

  • Committer: Bazaar Package Importer
  • Author(s): Angus Lees
  • Date: 2004-02-15 14:23:39 UTC
  • Revision ID: james.westby@ubuntu.com-20040215142339-n21gqf7mx9tmyb8d
Tags: upstream-2.0b10
Import upstream version 2.0b10

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*###################################################################################
 
2
#
 
3
#   Embperl - Copyright (c) 1997-1999 Gerald Richter / ECOS
 
4
#
 
5
#   You may distribute under the terms of either the GNU General Public
 
6
#   License or the Artistic License, as specified in the Perl README file.
 
7
#   For use with Apache httpd and mod_perl, see also Apache copyright.
 
8
#
 
9
#   THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
 
10
#   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
 
11
#   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 
12
#
 
13
###################################################################################*/
 
14
 
 
15
 
 
16
/* input and output escaping for iso-8859-2 (iso-latin-2) */
 
17
/* from Jiri Novak */
 
18
 
 
19
#include "ep.h"
 
20
 
 
21
 
 
22
 
 
23
/*
 
24
/* Character Translation
 
25
*/
 
26
 
 
27
 
 
28
struct tCharTrans Char2Html [] = 
 
29
 
 
30
    {
 
31
        { ' ' ,   ""         },    /* �             Unused */ 
 
32
        { ' ' ,   ""         },    /*              Unused */
 
33
        { ' ' ,   ""         },    /*              Unused  */
 
34
        { ' ' ,   ""         },    /*              Unused  */
 
35
        { ' ' ,   ""         },    /*              Unused  */
 
36
        { ' ' ,   ""         },    /*              Unused  */
 
37
        { ' ' ,   ""         },    /*              Unused  */
 
38
        { ' ' ,   ""         },    /*              Unused  */
 
39
        { ' ' ,   ""         },    /*              Unused  */
 
40
        { ' ' ,   ""         },    /* 	             Horizontal tab  */
 
41
        { ' ' ,   ""         },    /* 
             Line feed  */
 
42
        { ' ' ,   ""         },    /*              Unused  */
 
43
        { ' ' ,   ""         },    /*              Unused  */
 
44
        { ' ' ,   ""         },    /* 
             Carriage Return  */
 
45
        { ' ' ,   ""         },    /*              Unused  */
 
46
        { ' ' ,   ""         },    /*              Unused  */
 
47
        { ' ' ,   ""         },    /*              Unused  */
 
48
        { ' ' ,   ""         },    /*              Unused  */
 
49
        { ' ' ,   ""         },    /*              Unused  */
 
50
        { ' ' ,   ""         },    /*              Unused  */
 
51
        { ' ' ,   ""         },    /*              Unused  */
 
52
        { ' ' ,   ""         },    /*              Unused  */
 
53
        { ' ' ,   ""         },    /*              Unused  */
 
54
        { ' ' ,   ""         },    /*              Unused  */
 
55
        { ' ' ,   ""         },    /*              Unused  */
 
56
        { ' ' ,   ""         },    /*              Unused  */
 
57
        { ' ' ,   ""         },    /*              Unused  */
 
58
        { ' ' ,   ""         },    /*              Unused  */
 
59
        { ' ' ,   ""         },    /*              Unused  */
 
60
        { ' ' ,   ""         },    /*              Unused  */
 
61
        { ' ' ,   ""         },    /*              Unused  */
 
62
        { ' ' ,   ""         },    /*              Unused  */
 
63
        { ' ' ,   ""         },    /*               Space  */
 
64
        { '!' ,   ""         },    /*   !           Exclamation mark  */
 
65
        { '"' ,   """   },    /*   Quotation mark  */
 
66
        { '#' ,   ""         },    /*   #           Number sign  */
 
67
        { '$' ,   ""         },    /*   $           Dollar sign  */
 
68
        { '%' ,   ""         },    /*   %           Percent sign  */
 
69
        { '&' ,   "&"    },    /*   Ampersand  */
 
70
        { '\'' ,  ""         },    /*   '           Apostrophe  */
 
71
        { '(' ,   ""         },    /*   (           Left parenthesis  */
 
72
        { ')' ,   ""         },    /*   )           Right parenthesis  */
 
73
        { '*' ,   ""         },    /*   *           Asterisk  */
 
74
        { '+' ,   ""         },    /*   +           Plus sign  */
 
75
        { ',' ,   ""         },    /*   ,           Comma  */
 
76
        { '-' ,   ""         },    /*   -           Hyphen  */
 
77
        { '.' ,   ""         },    /*   .           Period (fullstop)  */
 
78
        { '/' ,   ""         },    /*   /           Solidus (slash)  */
 
79
        { '0' ,   ""         },    /*   0           Digit 0  */
 
80
        { '1' ,   ""         },    /*   1           Digit 1  */
 
81
        { '2' ,   ""         },    /*   2           Digit 2  */
 
82
        { '3' ,   ""         },    /*   3           Digit 3  */
 
83
        { '4' ,   ""         },    /*   4           Digit 4  */
 
84
        { '5' ,   ""         },    /*   5           Digit 5  */
 
85
        { '6' ,   ""         },    /*   6           Digit 6  */
 
86
        { '7' ,   ""         },    /*   7           Digit 7  */
 
87
        { '8' ,   ""         },    /*   8           Digit 8  */
 
88
        { '9' ,   ""         },    /*   9           Digit 9  */
 
89
        { ':' ,   ""         },    /*   :           Colon  */
 
90
        { ';' ,   ""         },    /*   &#59;           Semicolon  */
 
91
        { '<' ,   "&lt;"     },    /*   Less than  */
 
92
        { '=' ,   ""         },    /*   &#61;           Equals sign  */
 
93
        { '>' ,   "&gt;"     },    /*   Greater than  */
 
94
        { '?' ,   ""         },    /*   &#63;           Question mark  */
 
95
        { '@' ,   ""         },    /*   &#64;           Commercial at  */
 
96
        { 'A' ,   ""         },    /*   &#65;           Capital A  */
 
97
        { 'B' ,   ""         },    /*   &#66;           Capital B  */
 
98
        { 'C' ,   ""         },    /*   &#67;           Capital C  */
 
99
        { 'D' ,   ""         },    /*   &#68;           Capital D  */
 
100
        { 'E' ,   ""         },    /*   &#69;           Capital E  */
 
101
        { 'F' ,   ""         },    /*   &#70;           Capital F  */
 
102
        { 'G' ,   ""         },    /*   &#71;           Capital G  */
 
103
        { 'H' ,   ""         },    /*   &#72;           Capital H  */
 
104
        { 'I' ,   ""         },    /*   &#73;           Capital I  */
 
105
        { 'J' ,   ""         },    /*   &#74;           Capital J  */
 
106
        { 'K' ,   ""         },    /*   &#75;           Capital K  */
 
107
        { 'L' ,   ""         },    /*   &#76;           Capital L  */
 
108
        { 'M' ,   ""         },    /*   &#77;           Capital M  */
 
109
        { 'N' ,   ""         },    /*   &#78;           Capital N  */
 
110
        { 'O' ,   ""         },    /*   &#79;           Capital O  */
 
111
        { 'P' ,   ""         },    /*   &#80;           Capital P  */
 
112
        { 'Q' ,   ""         },    /*   &#81;           Capital Q  */
 
113
        { 'R' ,   ""         },    /*   &#82;           Capital R  */
 
114
        { 'S' ,   ""         },    /*   &#83;           Capital S  */
 
115
        { 'T' ,   ""         },    /*   &#84;           Capital T  */
 
116
        { 'U' ,   ""         },    /*   &#85;           Capital U  */
 
117
        { 'V' ,   ""         },    /*   &#86;           Capital V  */
 
118
        { 'W' ,   ""         },    /*   &#87;           Capital W  */
 
119
        { 'X' ,   ""         },    /*   &#88;           Capital X  */
 
120
        { 'Y' ,   ""         },    /*   &#89;           Capital Y  */
 
121
        { 'Z' ,   ""         },    /*   &#90;           Capital Z  */
 
122
        { '[' ,   ""         },    /*   &#91;           Left square bracket  */
 
123
        { '\\' ,  ""         },    /*   &#92;           Reverse solidus (backslash)  */
 
124
        { ']' ,   ""         },    /*   &#93;           Right square bracket  */
 
125
        { '^' ,   ""         },    /*   &#94;           Caret  */
 
126
        { '_' ,   ""         },    /*   &#95;           Horizontal bar (underscore)  */
 
127
        { '`' ,   ""         },    /*   &#96;           Acute accent  */
 
128
        { 'a' ,   ""         },    /*   &#97;           Small a  */
 
129
        { 'b' ,   ""         },    /*   &#98;           Small b  */
 
130
        { 'c' ,   ""         },    /*   &#99;           Small c  */
 
131
        { 'd' ,   ""         },    /*   &#100;          Small d  */
 
132
        { 'e' ,   ""         },    /*   &#101;          Small e  */
 
133
        { 'f' ,   ""         },    /*   &#102;          Small f  */
 
134
        { 'g' ,   ""         },    /*   &#103;          Small g  */
 
135
        { 'h' ,   ""         },    /*   &#104;          Small h  */
 
136
        { 'i' ,   ""         },    /*   &#105;          Small i  */
 
137
        { 'j' ,   ""         },    /*   &#106;          Small j  */
 
138
        { 'k' ,   ""         },    /*   &#107;          Small k  */
 
139
        { 'l' ,   ""         },    /*   &#108;          Small l  */
 
140
        { 'm' ,   ""         },    /*   &#109;          Small m  */
 
141
        { 'n' ,   ""         },    /*   &#110;          Small n  */
 
142
        { 'o' ,   ""         },    /*   &#111;          Small o  */
 
143
        { 'p' ,   ""         },    /*   &#112;          Small p  */
 
144
        { 'q' ,   ""         },    /*   &#113;          Small q  */
 
145
        { 'r' ,   ""         },    /*   &#114;          Small r  */
 
146
        { 's' ,   ""         },    /*   &#115;          Small s  */
 
147
        { 't' ,   ""         },    /*   &#116;          Small t  */
 
148
        { 'u' ,   ""         },    /*   &#117;          Small u  */
 
149
        { 'v' ,   ""         },    /*   &#118;          Small v  */
 
150
        { 'w' ,   ""         },    /*   &#119;          Small w  */
 
151
        { 'x' ,   ""         },    /*   &#120;          Small x  */
 
152
        { 'y' ,   ""         },    /*   &#121;          Small y  */
 
153
        { 'z' ,   ""         },    /*   &#122;          Small z  */
 
154
        { '{' ,   ""         },    /*   &#123;          Left curly brace  */
 
155
        { '|' ,   ""         },    /*   &#124;          Vertical bar  */
 
156
        { '}' ,   ""         },    /*   &#125;          Right curly brace  */
 
157
        { '~' ,   ""         },    /*   &#126;          Tilde  */
 
158
        { '' ,   ""         },    /*   &#127;          Unused  */
 
159
        { '�' ,   ""         },    /*   &#128;          Unused */
 
160
         
 
161
        { ' ' ,   ""         },    /* &#129;            Unused  */
 
162
        { ' ' ,   ""         },    /* &#130;            Unused  */
 
163
        { ' ' ,   ""         },    /* &#131;            Unused  */
 
164
        { ' ' ,   ""         },    /* &#132;            Unused  */
 
165
        { ' ' ,   ""         },    /* &#133;            Unused  */
 
166
        { ' ' ,   ""         },    /* &#134;            Unused  */
 
167
        { ' ' ,   ""         },    /* &#135;            Unused  */
 
168
        { ' ' ,   ""         },    /* &#136;            Unused  */
 
169
        { ' ' ,   ""         },    /* &#137;            Unused  */
 
170
        { ' ' ,   ""         },    /* &#138;            Horizontal tab  */
 
171
        { ' ' ,   ""         },    /* &#139;            Line feed  */
 
172
        { ' ' ,   ""         },    /* &#140;            Unused  */
 
173
        { ' ' ,   ""         },    /* &#141;            Unused  */
 
174
        { ' ' ,   ""         },    /* &#142;            Carriage Return  */
 
175
        { ' ' ,   ""         },    /* &#143;            Unused  */
 
176
        { ' ' ,   ""         },    /* &#144;            Unused  */
 
177
        { ' ' ,   ""         },    /* &#145;            Unused  */
 
178
        { ' ' ,   ""         },    /* &#146;            Unused  */
 
179
        { ' ' ,   ""         },    /* &#147;            Unused  */
 
180
        { ' ' ,   ""         },    /* &#148;            Unused  */
 
181
        { ' ' ,   ""         },    /* &#149;            Unused  */
 
182
        { ' ' ,   ""         },    /* &#150;            Unused  */
 
183
        { ' ' ,   ""         },    /* &#151;            Unused  */
 
184
        { ' ' ,   ""         },    /* &#152;            Unused  */
 
185
        { ' ' ,   ""         },    /* &#153;            Unused  */
 
186
        { ' ' ,   ""         },    /* &#154;            Unused  */
 
187
        { ' ' ,   ""         },    /* &#155;            Unused  */
 
188
        { ' ' ,   ""         },    /* &#156;            Unused  */
 
189
        { ' ' ,   ""         },    /* &#157;            Unused  */
 
190
        { ' ' ,   ""         },    /* &#158;            Unused  */
 
191
        { ' ' ,   ""         },    /* &#159;            Unused  */
 
192
        { ' ', "&nbsp;" },             /* &#160; - nobreakspace */
 
193
        { '�',  "" },           /* &#161; - Aogonek */
 
194
        { '�',  "" },           /* &#162; - breve */
 
195
        { '�',  "" },           /* &#163; - Lstroke */
 
196
        { '�',  "&curren;" },           /* &#164; - currency */
 
197
        { '�',  "" },           /* &#165; - Lcaron */
 
198
        { '�',  "" },           /* &#166; - Sacute */
 
199
        { '�',  "&sect;" },             /* &#167; - section */
 
200
        { '�',  "&die;" },              /* &#168; - diaeresis */
 
201
        { '�',  "" },           /* &#169; - Scaron */
 
202
        { '�',  "" },           /* &#170; - Scedilla */
 
203
        { '�',  "" },           /* &#171; - Tcaron */
 
204
        { '�',  "" },           /* &#172; - Zacute */
 
205
        { '�',  "&shy;" },              /* &#173; - hyphen */
 
206
        { '�',  "" },           /* &#174; - Zcaron */
 
207
        { '�',  "" },           /* &#175; - Zabovedot */
 
208
        { '�',  "&degree;" },           /* &#176; - degree */
 
209
        { '�',  "" },           /* &#177; - aogonek */
 
210
        { '�',  "" },           /* &#178; - ogonek */
 
211
        { '�',  "" },           /* &#179; - lstroke */
 
212
        { '�',  "&acute;" },            /* &#180; - acute */
 
213
        { '�',  "" },           /* &#181; - lcaron */
 
214
        { '�',  "" },           /* &#182; - sacute */
 
215
        { '�',  "" },           /* &#183; - caron */
 
216
        { '�',  "&Cedilla;" },          /* &#184; - cedilla */
 
217
        { '�',  "" },           /* &#185; - scaron */
 
218
        { '�',  "" },           /* &#186; - scedilla */
 
219
        { '�',  "" },           /* &#187; - tcaron */
 
220
        { '�',  "" },           /* &#188; - zacute */
 
221
        { '�',  "" },           /* &#189; - doubleacute */
 
222
        { '�',  "" },           /* &#190; - zcaron */
 
223
        { '�',  "" },           /* &#191; - zabovedot */
 
224
        { '�',  "" },           /* &#192; - Racute */
 
225
        { '�',  "&Aacute;" },           /* &#193; - Aacute */
 
226
        { '�',  "&Acirc;" },            /* &#194; - Acircumflex */
 
227
        { '�',  "" },           /* &#195; - Abreve */
 
228
        { '�',  "&Auml;" },             /* &#196; - Adiaeresis */
 
229
        { '�',  "" },           /* &#197; - Lacute */
 
230
        { '�',  "" },           /* &#198; - Cacute */
 
231
        { '�',  "&Ccedil;" },           /* &#199; - Ccedilla */
 
232
        { '�',  "" },           /* &#200; - Ccaron */
 
233
        { '�',  "&Eacute;" },           /* &#201; - Eacute */
 
234
        { '�',  "" },           /* &#202; - Eogonek */
 
235
        { '�',  "&Euml;" },             /* &#203; - Ediaeresis */
 
236
        { '�',  "" },           /* &#204; - Ecaron */
 
237
        { '�',  "&Iacute;" },           /* &#205; - Iacute */
 
238
        { '�',  "&Icirc;" },            /* &#206; - Icircumflex */
 
239
        { '�',  "" },           /* &#207; - Dcaron */
 
240
        { '�',  "&ETH;" },              /* &#208; - Eth */
 
241
        { '�',  "" },           /* &#209; - Nacute */
 
242
        { '�',  "" },           /* &#210; - Ncaron */
 
243
        { '�',  "&Oacute;" },           /* &#211; - Oacute */
 
244
        { '�',  "&Ocirc;" },            /* &#212; - Ocircumflex */
 
245
        { '�',  "" },           /* &#213; - Odoubleacute */
 
246
        { '�',  "&Ouml;" },             /* &#214; - Odiaeresis */
 
247
        { '�',  "&times;" },            /* &#215; - multiply */
 
248
        { '�',  "" },           /* &#216; - Rcaron */
 
249
        { '�',  "" },           /* &#217; - Uring */
 
250
        { '�',  "&Uacute;" },           /* &#218; - Uacute */
 
251
        { '�',  "" },           /* &#219; - Udoubleacute */
 
252
        { '�',  "&Uuml;" },             /* &#220; - Udiaeresis */
 
253
        { '�',  "&Yacute;" },           /* &#221; - Yacute */
 
254
        { '�',  "" },           /* &#222; - Tcedilla */
 
255
        { '�',  "&szlig;" },            /* &#223; - ssharp */
 
256
        { '�',  "" },           /* &#224; - racute */
 
257
        { '�',  "&aacute;" },           /* &#225; - aacute */
 
258
        { '�',  "&acirc;" },            /* &#226; - acircumflex */
 
259
        { '�',  "" },           /* &#227; - abreve */
 
260
        { '�',  "&auml;" },             /* &#228; - adiaeresis */
 
261
        { '�',  "" },           /* &#229; - lacute */
 
262
        { '�',  "" },           /* &#230; - cacute */
 
263
        { '�',  "&ccedil;" },           /* &#231; - ccedilla */
 
264
        { '�',  "" },           /* &#232; - ccaron */
 
265
        { '�',  "&eacute;" },           /* &#233; - eacute */
 
266
        { '�',  "" },           /* &#234; - eogonek */
 
267
        { '�',  "&euml;" },             /* &#235; - ediaeresis */
 
268
        { '�',  "" },           /* &#236; - ecaron */
 
269
        { '�',  "&iacute;" },           /* &#237; - iacute */
 
270
        { '�',  "&icirc;" },            /* &#238; - icircumflex */
 
271
        { '�',  "" },           /* &#239; - dcaron */
 
272
        { '�',  "&eth;" },              /* &#240; - eth */
 
273
        { '�',  "" },           /* &#241; - nacute */
 
274
        { '�',  "" },           /* &#242; - ncaron */
 
275
        { '�',  "&oacute;" },           /* &#243; - oacute */
 
276
        { '�',  "&ocirc;" },            /* &#244; - ocircumflex */
 
277
        { '�',  "" },           /* &#245; - odoubleacute */
 
278
        { '�',  "&ouml;" },             /* &#246; - odiaeresis */
 
279
        { '�',  "&divide;" },           /* &#247; - division */
 
280
        { '�',  "" },           /* &#248; - rcaron */
 
281
        { '�',  "" },           /* &#249; - uring */
 
282
        { '�',  "&uacute;" },           /* &#250; - uacute */
 
283
        { '�',  "" },           /* &#251; - udoubleacute */
 
284
        { '�',  "&uuml;" },             /* &#252; - udiaeresis */
 
285
        { '�',  "&yacute;" },           /* &#253; - yacute */
 
286
        { '�',  "" },           /* &#254; - tcedilla */
 
287
        { '',  "" },           /* &#255; - abovedot */
 
288
    } ; 
 
289
 
 
290
 
 
291
struct tCharTrans Char2Url [] = 
 
292
 
 
293
    {
 
294
        { ' ' ,   "%00"         },    /* &#00;          Unused */ 
 
295
        { ' ' ,   "%01"         },    /* &#01;          Unused */
 
296
        { ' ' ,   "%02"         },    /* &#02;          Unused  */
 
297
        { ' ' ,   "%03"         },    /* &#03;          Unused  */
 
298
        { ' ' ,   "%04"         },    /* &#04;          Unused  */
 
299
        { ' ' ,   "%05"         },    /* &#05;          Unused  */
 
300
        { ' ' ,   "%06"         },    /* &#06;          Unused  */
 
301
        { ' ' ,   "%07"         },    /* &#07;          Unused  */
 
302
        { ' ' ,   "%08"         },    /* &#08;          Unused  */
 
303
        { ' ' ,   "%09"         },    /* &#09;          Horizontal tab  */
 
304
        { ' ' ,   "%0A"         },    /* &#10;          Line feed  */
 
305
        { ' ' ,   "%0B"         },    /* &#11;          Unused  */
 
306
        { ' ' ,   "%0C"         },    /* &#12;          Unused  */
 
307
        { ' ' ,   "%0D"         },    /* &#13;          Carriage Return  */
 
308
        { ' ' ,   "%0E"         },    /* &#14;          Unused  */
 
309
        { ' ' ,   "%0F"         },    /* &#15;          Unused  */
 
310
        { ' ' ,   "%10"         },    /* &#16;          Unused  */
 
311
        { ' ' ,   "%11"         },    /* &#17;          Unused  */
 
312
        { ' ' ,   "%12"         },    /* &#18;          Unused  */
 
313
        { ' ' ,   "%13"         },    /* &#19;          Unused  */
 
314
        { ' ' ,   "%14"         },    /* &#20;          Unused  */
 
315
        { ' ' ,   "%15"         },    /* &#21;          Unused  */
 
316
        { ' ' ,   "%16"         },    /* &#22;          Unused  */
 
317
        { ' ' ,   "%17"         },    /* &#23;          Unused  */
 
318
        { ' ' ,   "%18"         },    /* &#24;          Unused  */
 
319
        { ' ' ,   "%19"         },    /* &#25;          Unused  */
 
320
        { ' ' ,   "%1A"         },    /* &#26;          Unused  */
 
321
        { ' ' ,   "%1B"         },    /* &#27;          Unused  */
 
322
        { ' ' ,   "%1C"         },    /* &#28;          Unused  */
 
323
        { ' ' ,   "%1D"         },    /* &#29;          Unused  */
 
324
        { ' ' ,   "%1E"         },    /* &#30;          Unused  */
 
325
        { ' ' ,   "%1F"         },    /* &#31;          Unused  */
 
326
        { ' ' ,   "%20"           },    /*      &#32;           Space  */
 
327
        { '!' ,   ""         },    /*   &#33;           Exclamation mark  */
 
328
        { '"' ,   "%22"   },    /*      Quotation mark  */
 
329
        { '#' ,   "%23"      },    /*   &#35;           Number sign  */
 
330
        { '$' ,   "%24"         },    /*        &#36;           Dollar sign  */
 
331
        { '%' ,   "%25"      },    /*   &#37;           Percent sign  */
 
332
        { '&' ,   "%26"    },    /*     Ampersand  */
 
333
        { '\'' ,  "%27"       },    /*  &#39;           Apostrophe  */
 
334
        { '(' ,   ""         },    /*   &#40;           Left parenthesis  */
 
335
        { ')' ,   ""         },    /*   &#41;           Right parenthesis  */
 
336
        { '*' ,   ""         },    /*   &#42;           Asterisk  */
 
337
        { '+' ,   "%2B"         },    /*        &#43;           Plus sign  */
 
338
        { ',' ,   "%2C"         },    /*        &#44;           Comma  */
 
339
        { '-' ,   ""         },    /*   &#45;           Hyphen  */
 
340
        { '.' ,   ""         },    /*   &#46;           Period (fullstop)  */
 
341
        { '/' ,   ""         },    /*   &#47;           Solidus (slash)  */
 
342
        { '0' ,   ""         },    /*   &#48;           Digit 0  */
 
343
        { '1' ,   ""         },    /*   &#49;           Digit 1  */
 
344
        { '2' ,   ""         },    /*   &#50;           Digit 2  */
 
345
        { '3' ,   ""         },    /*   &#51;           Digit 3  */
 
346
        { '4' ,   ""         },    /*   &#52;           Digit 4  */
 
347
        { '5' ,   ""         },    /*   &#53;           Digit 5  */
 
348
        { '6' ,   ""         },    /*   &#54;           Digit 6  */
 
349
        { '7' ,   ""         },    /*   &#55;           Digit 7  */
 
350
        { '8' ,   ""         },    /*   &#56;           Digit 8  */
 
351
        { '9' ,   ""         },    /*   &#57;           Digit 9  */
 
352
/* We should escape this according to the rfc, but this would make troubles inside
 
353
   of urls, so will don' escape it   
 
354
        { ':' ,   "%3A"      },   */ /*         &#58;           Colon  */
 
355
        { ':' ,   ""      },    /*      &#58;           Colon  */
 
356
        { ';' ,   "%3B"      },    /*   &#59;           Semicolon  */
 
357
        { '<' ,   "%3C"      },    /*   Less than  */
 
358
        { '=' ,   "%3D"      },    /*   &#61;           Equals sign  */
 
359
        { '>' ,   "%3E"      },    /*   Greater than  */
 
360
        { '?' ,   "%3F"      },    /*   &#63;           Question mark  */
 
361
        { '@' ,   ""      },    /*      &#64;           Commercial at  */
 
362
        { 'A' ,   ""         },    /*   &#65;           Capital A  */
 
363
        { 'B' ,   ""         },    /*   &#66;           Capital B  */
 
364
        { 'C' ,   ""         },    /*   &#67;           Capital C  */
 
365
        { 'D' ,   ""         },    /*   &#68;           Capital D  */
 
366
        { 'E' ,   ""         },    /*   &#69;           Capital E  */
 
367
        { 'F' ,   ""         },    /*   &#70;           Capital F  */
 
368
        { 'G' ,   ""         },    /*   &#71;           Capital G  */
 
369
        { 'H' ,   ""         },    /*   &#72;           Capital H  */
 
370
        { 'I' ,   ""         },    /*   &#73;           Capital I  */
 
371
        { 'J' ,   ""         },    /*   &#74;           Capital J  */
 
372
        { 'K' ,   ""         },    /*   &#75;           Capital K  */
 
373
        { 'L' ,   ""         },    /*   &#76;           Capital L  */
 
374
        { 'M' ,   ""         },    /*   &#77;           Capital M  */
 
375
        { 'N' ,   ""         },    /*   &#78;           Capital N  */
 
376
        { 'O' ,   ""         },    /*   &#79;           Capital O  */
 
377
        { 'P' ,   ""         },    /*   &#80;           Capital P  */
 
378
        { 'Q' ,   ""         },    /*   &#81;           Capital Q  */
 
379
        { 'R' ,   ""         },    /*   &#82;           Capital R  */
 
380
        { 'S' ,   ""         },    /*   &#83;           Capital S  */
 
381
        { 'T' ,   ""         },    /*   &#84;           Capital T  */
 
382
        { 'U' ,   ""         },    /*   &#85;           Capital U  */
 
383
        { 'V' ,   ""         },    /*   &#86;           Capital V  */
 
384
        { 'W' ,   ""         },    /*   &#87;           Capital W  */
 
385
        { 'X' ,   ""         },    /*   &#88;           Capital X  */
 
386
        { 'Y' ,   ""         },    /*   &#89;           Capital Y  */
 
387
        { 'Z' ,   ""         },    /*   &#90;           Capital Z  */
 
388
        { '[' ,   "%5B"         },    /*        &#91;           Left square bracket  */
 
389
        { '\\' ,  "%5C"         },    /*        &#92;           Reverse solidus (backslash)  */
 
390
        { ']' ,   "%5D"         },    /*        &#93;           Right square bracket  */
 
391
        { '^' ,   "%5E"         },    /*        &#94;           Caret  */
 
392
        { '_' ,   ""         },    /*   &#95;           Horizontal bar (underscore)  */
 
393
        { '`' ,   "%60"         },    /*        &#96;           Acute accent  */
 
394
        { 'a' ,   ""         },    /*   &#97;           Small a  */
 
395
        { 'b' ,   ""         },    /*   &#98;           Small b  */
 
396
        { 'c' ,   ""         },    /*   &#99;           Small c  */
 
397
        { 'd' ,   ""         },    /*   &#100;          Small d  */
 
398
        { 'e' ,   ""         },    /*   &#101;          Small e  */
 
399
        { 'f' ,   ""         },    /*   &#102;          Small f  */
 
400
        { 'g' ,   ""         },    /*   &#103;          Small g  */
 
401
        { 'h' ,   ""         },    /*   &#104;          Small h  */
 
402
        { 'i' ,   ""         },    /*   &#105;          Small i  */
 
403
        { 'j' ,   ""         },    /*   &#106;          Small j  */
 
404
        { 'k' ,   ""         },    /*   &#107;          Small k  */
 
405
        { 'l' ,   ""         },    /*   &#108;          Small l  */
 
406
        { 'm' ,   ""         },    /*   &#109;          Small m  */
 
407
        { 'n' ,   ""         },    /*   &#110;          Small n  */
 
408
        { 'o' ,   ""         },    /*   &#111;          Small o  */
 
409
        { 'p' ,   ""         },    /*   &#112;          Small p  */
 
410
        { 'q' ,   ""         },    /*   &#113;          Small q  */
 
411
        { 'r' ,   ""         },    /*   &#114;          Small r  */
 
412
        { 's' ,   ""         },    /*   &#115;          Small s  */
 
413
        { 't' ,   ""         },    /*   &#116;          Small t  */
 
414
        { 'u' ,   ""         },    /*   &#117;          Small u  */
 
415
        { 'v' ,   ""         },    /*   &#118;          Small v  */
 
416
        { 'w' ,   ""         },    /*   &#119;          Small w  */
 
417
        { 'x' ,   ""         },    /*   &#120;          Small x  */
 
418
        { 'y' ,   ""         },    /*   &#121;          Small y  */
 
419
        { 'z' ,   ""         },    /*   &#122;          Small z  */
 
420
        { '{' ,   "%7B"         },    /*        &#123;          Left curly brace  */
 
421
        { '|' ,   "%7C"         },    /*        &#124;          Vertical bar  */
 
422
        { '}' ,   "%7D"         },    /*        &#125;          Right curly brace  */
 
423
        { '~' ,   ""         },    /*   &#126;          Tilde  */
 
424
        { '' ,   "%7F"         },    /*        &#127;          Unused  */
 
425
        { '�' ,   "%80"         },    /*        &#128;          Unused */
 
426
        { ' ' ,   "%81"         },    /* &#129;         Unused  */
 
427
        { ' ' ,   "%82"         },    /* &#130;         Unused  */
 
428
        { ' ' ,   "%83"         },    /* &#131;         Unused  */
 
429
        { ' ' ,   "%84"         },    /* &#132;         Unused  */
 
430
        { ' ' ,   "%85"         },    /* &#133;         Unused  */
 
431
        { ' ' ,   "%86"         },    /* &#134;         Unused  */
 
432
        { ' ' ,   "%87"         },    /* &#135;         Unused  */
 
433
        { ' ' ,   "%88"         },    /* &#136;         Unused  */
 
434
        { ' ' ,   "%89"         },    /* &#137;         Unused  */
 
435
        { ' ' ,   "%8A"         },    /* &#138;         Horizontal tab  */
 
436
        { ' ' ,   "%8B"         },    /* &#139;         Line feed  */
 
437
        { ' ' ,   "%8C"         },    /* &#140;         Unused  */
 
438
        { ' ' ,   "%8D"         },    /* &#141;         Unused  */
 
439
        { ' ' ,   "%8E"         },    /* &#142;         Carriage Return  */
 
440
        { ' ' ,   "%8F"         },    /* &#143;         Unused  */
 
441
        { ' ' ,   "%90"         },    /* &#144;         Unused  */
 
442
        { ' ' ,   "%91"         },    /* &#145;         Unused  */
 
443
        { ' ' ,   "%92"         },    /* &#146;         Unused  */
 
444
        { ' ' ,   "%93"         },    /* &#147;         Unused  */
 
445
        { ' ' ,   "%94"         },    /* &#148;         Unused  */
 
446
        { ' ' ,   "%95"         },    /* &#149;         Unused  */
 
447
        { ' ' ,   "%96"         },    /* &#150;         Unused  */
 
448
        { ' ' ,   "%97"         },    /* &#151;         Unused  */
 
449
        { ' ' ,   "%98"         },    /* &#152;         Unused  */
 
450
        { ' ' ,   "%99"         },    /* &#153;         Unused  */
 
451
        { ' ' ,   "%9A"         },    /* &#154;         Unused  */
 
452
        { ' ' ,   "%9B"         },    /* &#155;         Unused  */
 
453
        { ' ' ,   "%9C"         },    /* &#156;         Unused  */
 
454
        { ' ' ,   "%9D"         },    /* &#157;         Unused  */
 
455
        { ' ' ,   "%9E"         },    /* &#158;         Unused  */
 
456
        { ' ' ,   "%9F"         },    /* &#159;         Unused  */
 
457
        { '�' ,   "%A0"   },    /*      Non-breaking Space  */
 
458
        { '�' ,   "%A1"  },    /*       Inverted exclamation    */
 
459
        { '�' ,   "%A2"   },    /*      Cent sign               */
 
460
        { '�' ,   "%A3"  },    /*       Pound sterling  */
 
461
        { '�' ,   "%A4" },    /*        General currency sign  */
 
462
        { '�' ,   "%A5"    },    /*     Yen sign  */
 
463
        { '�' ,   "%A6" },    /*        Broken vertical bar  */
 
464
        { '�' ,   "%A7"  },    /*       Section sign  */
 
465
        { '�' ,   "%A8"   },    /*      Di�resis / Umlaut  */
 
466
        { '�' ,   "%A9"  },    /*       Copyright               */
 
467
        { '�' ,   "%AA"  },    /*       Feminine ordinal  */
 
468
        { '�' ,   "%AB" },    /*        Left angle quote, guillemot left  */
 
469
        { '�' ,   "%AC"   },    /*      Not sign  */
 
470
        { '�' ,   "%AD"    },    /*     Soft hyphen  */
 
471
        { '�' ,   "%AE"    },    /*     Registered trademark  */
 
472
        { '�' ,   "%AF"  },    /*       Macron accent  */
 
473
        { '�' ,   "%B0"    },    /*     Degree sign  */
 
474
        { '�' ,   "%B1" },    /*        Plus or minus  */
 
475
        { '�' ,   "%B2"   },    /*      Superscript two  */
 
476
        { '�' ,   "%B3"   },    /*      Superscript three  */
 
477
        { '�' ,   "%B4"  },    /*       Acute accent  */
 
478
        { '�' ,   "%B5"  },    /*       Micro sign  */
 
479
        { '�' ,   "%B6"   },    /*      Paragraph sign  */
 
480
        { '�' ,   "%B7" },    /*        Middle dot  */
 
481
        { '�' ,   "%B8"  },    /*       Cedilla  */
 
482
        { '�' ,   "%B9"   },    /*      Superscript one  */
 
483
        { '�' ,   "%BA"   },    /*      Masculine ordinal  */
 
484
        { '�' ,   "%BB"  },    /*       Right angle quote, guillemot right  */
 
485
        { '�' ,   "%BC" },    /*        Fraction one-fourth  */
 
486
        { '�' ,   "%BD" },    /*        Fraction one-half  */
 
487
        { '�' ,   "%BE" },    /*        Fraction three-fourths  */
 
488
        { '�' ,   "%BF" },    /*        Inverted question mark  */
 
489
        { '�' ,   "%C0" },    /*        Capital A, grave accent  */
 
490
        { '�' ,   "%C1" },    /*        Capital A, acute accent  */
 
491
        { '�' ,   "%C2"  },    /*       Capital A, circumflex  */
 
492
        { '�' ,   "%C3" },    /*        Capital A, tilde  */
 
493
        { '�' ,   "%C4"   },    /*      Capital A, di�resis / umlaut  */
 
494
        { '�' ,   "%C5"  },    /*       Capital A, ring  */
 
495
        { '�' ,   "%C6"  },    /*       Capital AE ligature  */
 
496
        { '�' ,   "%C7" },    /*        Capital C, cedilla  */
 
497
        { '�' ,   "%C8" },    /*        Capital E, grave accent  */
 
498
        { '�' ,   "%C9" },    /*        Capital E, acute accent  */
 
499
        { '�' ,   "%CA"  },    /*       Capital E, circumflex  */
 
500
        { '�' ,   "%CB"   },    /*      Capital E, di�resis / umlaut  */
 
501
        { '�' ,   "%CC" },    /*        Capital I, grave accent  */
 
502
        { '�' ,   "%CD" },    /*        Capital I, acute accent  */
 
503
        { '�' ,   "%CE"  },    /*       Capital I, circumflex  */
 
504
        { '�' ,   "%CF"   },    /*      Capital I, di�resis / umlaut  */
 
505
        { '�' ,   "%D0"    },    /*     Capital Eth, Icelandic  */
 
506
        { '�' ,   "%D1" },    /*        Capital N, tilde  */
 
507
        { '�' ,   "%D2" },    /*        Capital O, grave accent  */
 
508
        { '�' ,   "%D3" },    /*        Capital O, acute accent  */
 
509
        { '�' ,   "%D4"  },    /*       Capital O, circumflex  */
 
510
        { '�' ,   "%D5" },    /*        Capital O, tilde  */
 
511
        { '�' ,   "%D6"   },    /*      Capital O, di�resis / umlaut  */
 
512
        { '�' ,   "%D7"  },    /*       Multiply sign  */
 
513
        { '�' ,   "%D8" },    /*        Capital O, slash  */
 
514
        { '�' ,   "%D9" },    /*        Capital U, grave accent  */
 
515
        { '�' ,   "%DA" },    /*        Capital U, acute accent  */
 
516
        { '�' ,   "%DB"  },    /*       Capital U, circumflex  */
 
517
        { '�' ,   "%DC"   },    /*      Capital U, di�resis / umlaut  */
 
518
        { '�' ,   "%DD" },    /*        Capital Y, acute accent  */
 
519
        { '�' ,   "%DE"  },    /*       Capital Thorn, Icelandic  */
 
520
        { '�' ,   "%DF"  },    /*       Small sharp s, German sz  */
 
521
        { '�' ,   "%E0" },    /*        Small a, grave accent  */
 
522
        { '�' ,   "%E1" },    /*        Small a, acute accent  */
 
523
        { '�' ,   "%E2"  },    /*       Small a, circumflex  */
 
524
        { '�' ,   "%E3" },    /*        Small a, tilde  */
 
525
        { '�' ,   "%E4"   },    /*      Small a, di�resis / umlaut  */
 
526
        { '�' ,   "%E5"  },    /*       Small a, ring  */
 
527
        { '�' ,   "%E6"  },    /*       Small ae ligature  */
 
528
        { '�' ,   "%E7" },    /*        Small c, cedilla  */
 
529
        { '�' ,   "%E8" },    /*        Small e, grave accent  */
 
530
        { '�' ,   "%E9" },    /*        Small e, acute accent  */
 
531
        { '�' ,   "%EA"  },    /*       Small e, circumflex  */
 
532
        { '�' ,   "%EB"   },    /*      Small e, di�resis / umlaut  */
 
533
        { '�' ,   "%EC" },    /*        Small i, grave accent  */
 
534
        { '�' ,   "%ED" },    /*        Small i, acute accent  */
 
535
        { '�' ,   "%EE"  },    /*       Small i, circumflex  */
 
536
        { '�' ,   "%EF"   },    /*      Small i, di�resis / umlaut  */
 
537
        { '�' ,   "%F0"    },    /*     Small eth, Icelandic  */
 
538
        { '�' ,   "%F1" },    /*        Small n, tilde  */
 
539
        { '�' ,   "%F2" },    /*        Small o, grave accent  */
 
540
        { '�' ,   "%F3" },    /*        Small o, acute accent  */
 
541
        { '�' ,   "%F4"  },    /*       Small o, circumflex  */
 
542
        { '�' ,   "%F5" },    /*        Small o, tilde  */
 
543
        { '�' ,   "%F6"   },    /*      Small o, di�resis / umlaut  */
 
544
        { '�' ,   "%F7" },    /*        Division sign  */
 
545
        { '�' ,   "%F8" },    /*        Small o, slash  */
 
546
        { '�' ,   "%F9" },    /*        Small u, grave accent  */
 
547
        { '�' ,   "%FA" },    /*        Small u, acute accent  */
 
548
        { '�' ,   "%FB"  },    /*       Small u, circumflex  */
 
549
        { '�' ,   "%FC"   },    /*      Small u, di�resis / umlaut  */
 
550
        { '�' ,   "%FD" },    /*        Small y, acute accent  */
 
551
        { '�' ,   "%FE"  },    /*       Small thorn, Icelandic  */
 
552
        { '\255', "%FF"   },    /*      Small y, di�resis / umlaut  */
 
553
    } ; 
 
554
    
 
555
struct tCharTrans Char2XML [] = 
 
556
 
 
557
    {
 
558
        { ' ' ,   ""         },    /* &#00;             Unused */ 
 
559
        { ' ' ,   ""         },    /* &#01;             Unused */
 
560
        { ' ' ,   ""         },    /* &#02;             Unused  */
 
561
        { ' ' ,   ""         },    /* &#03;             Unused  */
 
562
        { ' ' ,   ""         },    /* &#04;             Unused  */
 
563
        { ' ' ,   ""         },    /* &#05;             Unused  */
 
564
        { ' ' ,   ""         },    /* &#06;             Unused  */
 
565
        { ' ' ,   ""         },    /* &#07;             Unused  */
 
566
        { ' ' ,   ""         },    /* &#08;             Unused  */
 
567
        { ' ' ,   ""         },    /* &#09;             Horizontal tab  */
 
568
        { ' ' ,   ""         },    /* &#10;             Line feed  */
 
569
        { ' ' ,   ""         },    /* &#11;             Unused  */
 
570
        { ' ' ,   ""         },    /* &#12;             Unused  */
 
571
        { ' ' ,   ""         },    /* &#13;             Carriage Return  */
 
572
        { ' ' ,   ""         },    /* &#14;             Unused  */
 
573
        { ' ' ,   ""         },    /* &#15;             Unused  */
 
574
        { ' ' ,   ""         },    /* &#16;             Unused  */
 
575
        { ' ' ,   ""         },    /* &#17;             Unused  */
 
576
        { ' ' ,   ""         },    /* &#18;             Unused  */
 
577
        { ' ' ,   ""         },    /* &#19;             Unused  */
 
578
        { ' ' ,   ""         },    /* &#20;             Unused  */
 
579
        { ' ' ,   ""         },    /* &#21;             Unused  */
 
580
        { ' ' ,   ""         },    /* &#22;             Unused  */
 
581
        { ' ' ,   ""         },    /* &#23;             Unused  */
 
582
        { ' ' ,   ""         },    /* &#24;             Unused  */
 
583
        { ' ' ,   ""         },    /* &#25;             Unused  */
 
584
        { ' ' ,   ""         },    /* &#26;             Unused  */
 
585
        { ' ' ,   ""         },    /* &#27;             Unused  */
 
586
        { ' ' ,   ""         },    /* &#28;             Unused  */
 
587
        { ' ' ,   ""         },    /* &#29;             Unused  */
 
588
        { ' ' ,   ""         },    /* &#30;             Unused  */
 
589
        { ' ' ,   ""         },    /* &#31;             Unused  */
 
590
        { ' ' ,   ""         },    /*   &#32;           Space  */
 
591
        { '!' ,   ""         },    /*   &#33;           Exclamation mark  */
 
592
        { '"' ,   "&quot;"   },    /*   Quotation mark  */
 
593
        { '#' ,   ""         },    /*   &#35;           Number sign  */
 
594
        { '$' ,   ""         },    /*   &#36;           Dollar sign  */
 
595
        { '%' ,   ""         },    /*   &#37;           Percent sign  */
 
596
        { '&' ,   "&amp;"    },    /*   Ampersand  */
 
597
        { '\'' ,  "&apos;"         },    /*     &#39;           Apostrophe  */
 
598
        { '(' ,   ""         },    /*   &#40;           Left parenthesis  */
 
599
        { ')' ,   ""         },    /*   &#41;           Right parenthesis  */
 
600
        { '*' ,   ""         },    /*   &#42;           Asterisk  */
 
601
        { '+' ,   ""         },    /*   &#43;           Plus sign  */
 
602
        { ',' ,   ""         },    /*   &#44;           Comma  */
 
603
        { '-' ,   ""         },    /*   &#45;           Hyphen  */
 
604
        { '.' ,   ""         },    /*   &#46;           Period (fullstop)  */
 
605
        { '/' ,   ""         },    /*   &#47;           Solidus (slash)  */
 
606
        { '0' ,   ""         },    /*   &#48;           Digit 0  */
 
607
        { '1' ,   ""         },    /*   &#49;           Digit 1  */
 
608
        { '2' ,   ""         },    /*   &#50;           Digit 2  */
 
609
        { '3' ,   ""         },    /*   &#51;           Digit 3  */
 
610
        { '4' ,   ""         },    /*   &#52;           Digit 4  */
 
611
        { '5' ,   ""         },    /*   &#53;           Digit 5  */
 
612
        { '6' ,   ""         },    /*   &#54;           Digit 6  */
 
613
        { '7' ,   ""         },    /*   &#55;           Digit 7  */
 
614
        { '8' ,   ""         },    /*   &#56;           Digit 8  */
 
615
        { '9' ,   ""         },    /*   &#57;           Digit 9  */
 
616
        { ':' ,   ""         },    /*   &#58;           Colon  */
 
617
        { ';' ,   ""         },    /*   &#59;           Semicolon  */
 
618
        { '<' ,   "&lt;"     },    /*   Less than  */
 
619
        { '=' ,   ""         },    /*   &#61;           Equals sign  */
 
620
        { '>' ,   "&gt;"     },    /*   Greater than  */
 
621
        { '?' ,   ""         },    /*   &#63;           Question mark  */
 
622
        { '@' ,   ""         },    /*   &#64;           Commercial at  */
 
623
        { 'A' ,   ""         },    /*   &#65;           Capital A  */
 
624
        { 'B' ,   ""         },    /*   &#66;           Capital B  */
 
625
        { 'C' ,   ""         },    /*   &#67;           Capital C  */
 
626
        { 'D' ,   ""         },    /*   &#68;           Capital D  */
 
627
        { 'E' ,   ""         },    /*   &#69;           Capital E  */
 
628
        { 'F' ,   ""         },    /*   &#70;           Capital F  */
 
629
        { 'G' ,   ""         },    /*   &#71;           Capital G  */
 
630
        { 'H' ,   ""         },    /*   &#72;           Capital H  */
 
631
        { 'I' ,   ""         },    /*   &#73;           Capital I  */
 
632
        { 'J' ,   ""         },    /*   &#74;           Capital J  */
 
633
        { 'K' ,   ""         },    /*   &#75;           Capital K  */
 
634
        { 'L' ,   ""         },    /*   &#76;           Capital L  */
 
635
        { 'M' ,   ""         },    /*   &#77;           Capital M  */
 
636
        { 'N' ,   ""         },    /*   &#78;           Capital N  */
 
637
        { 'O' ,   ""         },    /*   &#79;           Capital O  */
 
638
        { 'P' ,   ""         },    /*   &#80;           Capital P  */
 
639
        { 'Q' ,   ""         },    /*   &#81;           Capital Q  */
 
640
        { 'R' ,   ""         },    /*   &#82;           Capital R  */
 
641
        { 'S' ,   ""         },    /*   &#83;           Capital S  */
 
642
        { 'T' ,   ""         },    /*   &#84;           Capital T  */
 
643
        { 'U' ,   ""         },    /*   &#85;           Capital U  */
 
644
        { 'V' ,   ""         },    /*   &#86;           Capital V  */
 
645
        { 'W' ,   ""         },    /*   &#87;           Capital W  */
 
646
        { 'X' ,   ""         },    /*   &#88;           Capital X  */
 
647
        { 'Y' ,   ""         },    /*   &#89;           Capital Y  */
 
648
        { 'Z' ,   ""         },    /*   &#90;           Capital Z  */
 
649
        { '[' ,   ""         },    /*   &#91;           Left square bracket  */
 
650
        { '\\' ,  ""         },    /*   &#92;           Reverse solidus (backslash)  */
 
651
        { ']' ,   ""         },    /*   &#93;           Right square bracket  */
 
652
        { '^' ,   ""         },    /*   &#94;           Caret  */
 
653
        { '_' ,   ""         },    /*   &#95;           Horizontal bar (underscore)  */
 
654
        { '`' ,   ""         },    /*   &#96;           Acute accent  */
 
655
        { 'a' ,   ""         },    /*   &#97;           Small a  */
 
656
        { 'b' ,   ""         },    /*   &#98;           Small b  */
 
657
        { 'c' ,   ""         },    /*   &#99;           Small c  */
 
658
        { 'd' ,   ""         },    /*   &#100;          Small d  */
 
659
        { 'e' ,   ""         },    /*   &#101;          Small e  */
 
660
        { 'f' ,   ""         },    /*   &#102;          Small f  */
 
661
        { 'g' ,   ""         },    /*   &#103;          Small g  */
 
662
        { 'h' ,   ""         },    /*   &#104;          Small h  */
 
663
        { 'i' ,   ""         },    /*   &#105;          Small i  */
 
664
        { 'j' ,   ""         },    /*   &#106;          Small j  */
 
665
        { 'k' ,   ""         },    /*   &#107;          Small k  */
 
666
        { 'l' ,   ""         },    /*   &#108;          Small l  */
 
667
        { 'm' ,   ""         },    /*   &#109;          Small m  */
 
668
        { 'n' ,   ""         },    /*   &#110;          Small n  */
 
669
        { 'o' ,   ""         },    /*   &#111;          Small o  */
 
670
        { 'p' ,   ""         },    /*   &#112;          Small p  */
 
671
        { 'q' ,   ""         },    /*   &#113;          Small q  */
 
672
        { 'r' ,   ""         },    /*   &#114;          Small r  */
 
673
        { 's' ,   ""         },    /*   &#115;          Small s  */
 
674
        { 't' ,   ""         },    /*   &#116;          Small t  */
 
675
        { 'u' ,   ""         },    /*   &#117;          Small u  */
 
676
        { 'v' ,   ""         },    /*   &#118;          Small v  */
 
677
        { 'w' ,   ""         },    /*   &#119;          Small w  */
 
678
        { 'x' ,   ""         },    /*   &#120;          Small x  */
 
679
        { 'y' ,   ""         },    /*   &#121;          Small y  */
 
680
        { 'z' ,   ""         },    /*   &#122;          Small z  */
 
681
        { '{' ,   ""         },    /*   &#123;          Left curly brace  */
 
682
        { '|' ,   ""         },    /*   &#124;          Vertical bar  */
 
683
        { '}' ,   ""         },    /*   &#125;          Right curly brace  */
 
684
        { '~' ,   ""         },    /*   &#126;          Tilde  */
 
685
        { '' ,   ""         },    /*   &#127;          Unused  */
 
686
        { '�' ,   ""         },    /*   &#128;          Unused */
 
687
        { ' ' ,   ""         },    /* &#129;            Unused  */
 
688
        { ' ' ,   ""         },    /* &#130;            Unused  */
 
689
        { ' ' ,   ""         },    /* &#131;            Unused  */
 
690
        { ' ' ,   ""         },    /* &#132;            Unused  */
 
691
        { ' ' ,   ""         },    /* &#133;            Unused  */
 
692
        { ' ' ,   ""         },    /* &#134;            Unused  */
 
693
        { ' ' ,   ""         },    /* &#135;            Unused  */
 
694
        { ' ' ,   ""         },    /* &#136;            Unused  */
 
695
        { ' ' ,   ""         },    /* &#137;            Unused  */
 
696
        { ' ' ,   ""         },    /* &#138;            Horizontal tab  */
 
697
        { ' ' ,   ""         },    /* &#139;            Line feed  */
 
698
        { ' ' ,   ""         },    /* &#140;            Unused  */
 
699
        { ' ' ,   ""         },    /* &#141;            Unused  */
 
700
        { ' ' ,   ""         },    /* &#142;            Carriage Return  */
 
701
        { ' ' ,   ""         },    /* &#143;            Unused  */
 
702
        { ' ' ,   ""         },    /* &#144;            Unused  */
 
703
        { ' ' ,   ""         },    /* &#145;            Unused  */
 
704
        { ' ' ,   ""         },    /* &#146;            Unused  */
 
705
        { ' ' ,   ""         },    /* &#147;            Unused  */
 
706
        { ' ' ,   ""         },    /* &#148;            Unused  */
 
707
        { ' ' ,   ""         },    /* &#149;            Unused  */
 
708
        { ' ' ,   ""         },    /* &#150;            Unused  */
 
709
        { ' ' ,   ""         },    /* &#151;            Unused  */
 
710
        { ' ' ,   ""         },    /* &#152;            Unused  */
 
711
        { ' ' ,   ""         },    /* &#153;            Unused  */
 
712
        { ' ' ,   ""         },    /* &#154;            Unused  */
 
713
        { ' ' ,   ""         },    /* &#155;            Unused  */
 
714
        { ' ' ,   ""         },    /* &#156;            Unused  */
 
715
        { ' ' ,   ""         },    /* &#157;            Unused  */
 
716
        { ' ' ,   ""         },    /* &#158;            Unused  */
 
717
        { ' ' ,   ""         },    /* &#159;            Unused  */
 
718
        { ' ' ,   ""   },    /*         Non-breaking Space  */
 
719
        { '�' ,   ""  },    /*  Inverted exclamation    */
 
720
        { '�' ,   ""   },    /*         Cent sign               */
 
721
        { '�' ,   ""  },    /*  Pound sterling  */
 
722
        { '�' ,   "" },    /*   General currency sign  */
 
723
        { '�' ,   ""    },    /*        Yen sign  */
 
724
/*        { '�' ,   "" },    / *        Broken vertical bar  */
 
725
        { '�' ,   "" },    /*   Broken vertical bar  */
 
726
        { '�' ,   ""  },    /*  Section sign  */
 
727
/*        { '�' ,   ""    },    / *     Di�resis / Umlaut  */
 
728
        { '�' ,   ""   },    /*         Di�resis / Umlaut  */
 
729
        { '�' ,   ""  },    /*  Copyright               */
 
730
        { '�' ,   ""  },    /*  Feminine ordinal  */
 
731
        { '�' ,   "" },    /*   Left angle quote, guillemot left  */
 
732
        { '�' ,   ""   },    /* Not sign  */
 
733
        { '�' ,   ""    },    /*        Soft hyphen  */
 
734
        { '�' ,   ""    },    /*        Registered trademark  */
 
735
/*        { '�' ,   ""   },    / *      Macron accent  */
 
736
        { '�' ,   ""  },    /*  Macron accent  */
 
737
        { '�' ,   ""    },    /*        Degree sign  */
 
738
        { '�' ,   "" },    /*   Plus or minus  */
 
739
        { '�' ,   ""   },    /*         Superscript two  */
 
740
        { '�' ,   ""   },    /*         Superscript three  */
 
741
        { '�' ,   ""  },    /*  Acute accent  */
 
742
        { '�' ,   ""  },    /*  Micro sign  */
 
743
        { '�' ,   ""   },    /*         Paragraph sign  */
 
744
        { '�' ,   "" },    /*   Middle dot  */
 
745
        { '�' ,   ""  },    /*  Cedilla  */
 
746
        { '�' ,   ""   },    /*         Superscript one  */
 
747
        { '�' ,   ""   },    /*         Masculine ordinal  */
 
748
        { '�' ,   ""  },    /*  Right angle quote, guillemot right  */
 
749
        { '�' ,   "" },    /*   Fraction one-fourth  */
 
750
        { '�' ,   "" },    /*   Fraction one-half  */
 
751
        { '�' ,   "" },    /*   Fraction three-fourths  */
 
752
        { '�' ,   "" },    /*   Inverted question mark  */
 
753
        { '�' ,   "" },    /*   Capital A, grave accent  */
 
754
        { '�' ,   "" },    /*   Capital A, acute accent  */
 
755
        { '�' ,   ""  },    /*  Capital A, circumflex  */
 
756
        { '�' ,   "" },    /*   Capital A, tilde  */
 
757
        { '�' ,   ""   },    /*         Capital A, di�resis / umlaut  */
 
758
        { '�' ,   ""  },    /*  Capital A, ring  */
 
759
        { '�' ,   ""  },    /*  Capital AE ligature  */
 
760
        { '�' ,   "" },    /*   Capital C, cedilla  */
 
761
        { '�' ,   "" },    /*   Capital E, grave accent  */
 
762
        { '�' ,   "" },    /*   Capital E, acute accent  */
 
763
        { '�' ,   ""  },    /*  Capital E, circumflex  */
 
764
        { '�' ,   ""   },    /*         Capital E, di�resis / umlaut  */
 
765
        { '�' ,   "" },    /*   Capital I, grave accent  */
 
766
        { '�' ,   "" },    /*   Capital I, acute accent  */
 
767
        { '�' ,   ""  },    /*  Capital I, circumflex  */
 
768
        { '�' ,   ""   },    /*         Capital I, di�resis / umlaut  */
 
769
        { '�' ,   ""    },    /*        Capital Eth, Icelandic  */
 
770
        { '�' ,   "" },    /*   Capital N, tilde  */
 
771
        { '�' ,   "" },    /*   Capital O, grave accent  */
 
772
        { '�' ,   "" },    /*   Capital O, acute accent  */
 
773
        { '�' ,   ""  },    /*  Capital O, circumflex  */
 
774
        { '�' ,   "" },    /*   Capital O, tilde  */
 
775
        { '�' ,   ""   },    /*         Capital O, di�resis / umlaut  */
 
776
        { '�' ,   ""  },    /*  Multiply sign  */
 
777
        { '�' ,   "" },    /*   Capital O, slash  */
 
778
        { '�' ,   "" },    /*   Capital U, grave accent  */
 
779
        { '�' ,   "" },    /*   Capital U, acute accent  */
 
780
        { '�' ,   ""  },    /*  Capital U, circumflex  */
 
781
        { '�' ,   ""   },    /*         Capital U, di�resis / umlaut  */
 
782
        { '�' ,   "" },    /*   Capital Y, acute accent  */
 
783
        { '�' ,   ""  },    /*  Capital Thorn, Icelandic  */
 
784
        { '�' ,   ""  },    /*  Small sharp s, German sz  */
 
785
        { '�' ,   "" },    /*   Small a, grave accent  */
 
786
        { '�' ,   "" },    /*   Small a, acute accent  */
 
787
        { '�' ,   ""  },    /*  Small a, circumflex  */
 
788
        { '�' ,   "" },    /*   Small a, tilde  */
 
789
        { '�' ,   ""   },    /*         Small a, di�resis / umlaut  */
 
790
        { '�' ,   ""  },    /*  Small a, ring  */
 
791
        { '�' ,   ""  },    /*  Small ae ligature  */
 
792
        { '�' ,   "" },    /*   Small c, cedilla  */
 
793
        { '�' ,   "" },    /*   Small e, grave accent  */
 
794
        { '�' ,   "" },    /*   Small e, acute accent  */
 
795
        { '�' ,   ""  },    /*  Small e, circumflex  */
 
796
        { '�' ,   ""   },    /*         Small e, di�resis / umlaut  */
 
797
        { '�' ,   "" },    /*   Small i, grave accent  */
 
798
        { '�' ,   "" },    /*   Small i, acute accent  */
 
799
        { '�' ,   ""  },    /*  Small i, circumflex  */
 
800
        { '�' ,   ""   },    /*         Small i, di�resis / umlaut  */
 
801
        { '�' ,   ""    },    /*        Small eth, Icelandic  */
 
802
        { '�' ,   "" },    /*   Small n, tilde  */
 
803
        { '�' ,   "" },    /*   Small o, grave accent  */
 
804
        { '�' ,   "" },    /*   Small o, acute accent  */
 
805
        { '�' ,   ""  },    /*  Small o, circumflex  */
 
806
        { '�' ,   "" },    /*   Small o, tilde  */
 
807
        { '�' ,   ""   },    /*         Small o, di�resis / umlaut  */
 
808
        { '�' ,   "" },    /*   Division sign  */
 
809
        { '�' ,   "" },    /*   Small o, slash  */
 
810
        { '�' ,   "" },    /*   Small u, grave accent  */
 
811
        { '�' ,   "" },    /*   Small u, acute accent  */
 
812
        { '�' ,   ""  },    /*  Small u, circumflex  */
 
813
        { '�' ,   ""   },    /*         Small u, di�resis / umlaut  */
 
814
        { '�' ,   "" },    /*   Small y, acute accent  */
 
815
        { '�' ,   ""  },    /*  Small thorn, Icelandic  */
 
816
        { '\255', ""   },    /*         Small y, di�resis / umlaut  */
 
817
    } ; 
 
818
    
 
819
struct tCharTrans Html2Char [] = 
 
820
 
 
821
    {
 
822
        { '�' ,   "&AElig"  },    /*    Capital AE ligature  */
 
823
        { '�' ,   "&Aacute" },    /*    Capital A, acute accent  */
 
824
        { '�' ,   "&Acirc"  },    /*    Capital A, circumflex  */
 
825
        { '�' ,   "&Agrave" },    /*    Capital A, grave accent  */
 
826
        { '�' ,   "&Aring"  },    /*    Capital A, ring  */
 
827
        { '�' ,   "&Atilde" },    /*    Capital A, tilde  */
 
828
        { '�' ,   "&Auml"   },    /*    Capital A, di�resis / umlaut  */
 
829
        { '�' ,   "&Ccedil" },    /*    Capital C, cedilla  */
 
830
        { '�' ,   "&ETH"    },    /*    Capital Eth, Icelandic  */
 
831
        { '�' ,   "&Eacute" },    /*    Capital E, acute accent  */
 
832
        { '�' ,   "&Ecirc"  },    /*    Capital E, circumflex  */
 
833
        { '�' ,   "&Egrave" },    /*    Capital E, grave accent  */
 
834
        { '�' ,   "&Euml"   },    /*    Capital E, di�resis / umlaut  */
 
835
        { '�' ,   "&Iacute" },    /*    Capital I, acute accent  */
 
836
        { '�' ,   "&Icirc"  },    /*    Capital I, circumflex  */
 
837
        { '�' ,   "&Igrave" },    /*    Capital I, grave accent  */
 
838
        { '�' ,   "&Iuml"   },    /*    Capital I, di�resis / umlaut  */
 
839
        { '�' ,   "&Ntilde" },    /*    Capital N, tilde  */
 
840
        { '�' ,   "&Oacute" },    /*    Capital O, acute accent  */
 
841
        { '�' ,   "&Ocirc"  },    /*    Capital O, circumflex  */
 
842
        { '�' ,   "&Ograve" },    /*    Capital O, grave accent  */
 
843
        { '�' ,   "&Oslash" },    /*    Capital O, slash  */
 
844
        { '�' ,   "&Otilde" },    /*    Capital O, tilde  */
 
845
        { '�' ,   "&Ouml"   },    /*    Capital O, di�resis / umlaut  */
 
846
        { '�' ,   "&THORN"  },    /*    Capital Thorn, Icelandic  */
 
847
        { '�' ,   "&Uacute" },    /*    Capital U, acute accent  */
 
848
        { '�' ,   "&Ucirc"  },    /*    Capital U, circumflex  */
 
849
        { '�' ,   "&Ugrave" },    /*    Capital U, grave accent  */
 
850
        { '�' ,   "&Uuml"   },    /*    Capital U, di�resis / umlaut  */
 
851
        { '�' ,   "&Yacute" },    /*    Capital Y, acute accent  */
 
852
        { '�' ,   "&aacute" },    /*    Small a, acute accent  */
 
853
        { '�' ,   "&acirc"  },    /*    Small a, circumflex  */
 
854
        { '�' ,   "&acute"  },    /*    Acute accent  */
 
855
        { '�' ,   "&aelig"  },    /*    Small ae ligature  */
 
856
        { '�' ,   "&agrave" },    /*    Small a, grave accent  */
 
857
        { '&' ,   "&amp"    },    /*    Ampersand  */
 
858
        { '�' ,   "&aring"  },    /*    Small a, ring  */
 
859
        { '�' ,   "&atilde" },    /*    Small a, tilde  */
 
860
        { '�' ,   "&auml"   },    /*    Small a, di�resis / umlaut  */
 
861
        { '�' ,   "&brkbar" },    /*    Broken vertical bar  */
 
862
        { '�' ,   "&brvbar" },    /*    Broken vertical bar  */
 
863
        { '�' ,   "&ccedil" },    /*    Small c, cedilla  */
 
864
        { '�' ,   "&cedil"  },    /*    Cedilla  */
 
865
        { '�' ,   "&cent"   },    /*    Cent sign  */
 
866
        { '�' ,   "&copy"  },    /*     Copyright  */
 
867
        { '�' ,   "&curren" },    /*    General currency sign  */
 
868
        { '�' ,   "&deg"    },    /*    Degree sign  */
 
869
        { '�' ,   "&die"   },    /*     Di�resis / Umlaut  */
 
870
        { '�' ,   "&divide" },    /*    Division sign  */
 
871
        { '�' ,   "&eacute" },    /*    Small e, acute accent  */
 
872
        { '�' ,   "&ecirc"  },    /*    Small e, circumflex  */
 
873
        { '�' ,   "&egrave" },    /*    Small e, grave accent  */
 
874
        { '�' ,   "&eth"    },    /*    Small eth, Icelandic  */
 
875
        { '�' ,   "&euml"   },    /*    Small e, di�resis / umlaut  */
 
876
        { '�' ,   "&frac12" },    /*    Fraction one-half  */
 
877
        { '�' ,   "&frac14" },    /*    Fraction one-fourth  */
 
878
        { '�' ,   "&frac34" },    /*    Fraction three-fourths  */
 
879
        { '>' ,   "&gt"     },    /*    Greater than  */
 
880
        { '�' ,   "&hibar"  },    /*    Macron accent  */
 
881
        { '�' ,   "&iacute" },    /*    Small i, acute accent  */
 
882
        { '�' ,   "&icirc"  },    /*    Small i, circumflex  */
 
883
        { '�' ,   "&iexcl"  },    /*    Inverted exclamation  */
 
884
        { '�' ,   "&igrave" },    /*    Small i, grave accent  */
 
885
        { '�' ,   "&iquest" },    /*    Inverted question mark  */
 
886
        { '�' ,   "&iuml"   },    /*    Small i, di�resis / umlaut  */
 
887
        { '�' ,   "&laquo" },    /*     Left angle quote, guillemot left  */
 
888
        { '<' ,   "&lt"     },    /*    Less than  */
 
889
        { '�' ,   "&macr"   },    /*    Macron accent  */
 
890
        { '�' ,   "&micro"  },    /*    Micro sign  */
 
891
        { '�' ,   "&middot" },    /*    Middle dot  */
 
892
        { ' ' ,   "&nbsp"   },    /*    Non-breaking Space  */
 
893
        { '�' ,   "&not"   },    /*     Not sign  */
 
894
        { '�' ,   "&ntilde" },    /*    Small n, tilde  */
 
895
        { '�' ,   "&oacute" },    /*    Small o, acute accent  */
 
896
        { '�' ,   "&ocirc"  },    /*    Small o, circumflex  */
 
897
        { '�' ,   "&ograve" },    /*    Small o, grave accent  */
 
898
        { '�' ,   "&ordf"  },    /*     Feminine ordinal  */
 
899
        { '�' ,   "&ordm"   },    /*    Masculine ordinal  */
 
900
        { '�' ,   "&oslash" },    /*    Small o, slash  */
 
901
        { '�' ,   "&otilde" },    /*    Small o, tilde  */
 
902
        { '�' ,   "&ouml"   },    /*    Small o, di�resis / umlaut  */
 
903
        { '�' ,   "&para"   },    /*    Paragraph sign  */
 
904
        { '�' ,   "&plusmn" },    /*    Plus or minus  */
 
905
        { '�' ,   "&pound"  },    /*    Pound sterling  */
 
906
        { '"' ,   "&quot"   },    /*    Quotation mark  */
 
907
        { '�' ,   "&raquo"  },    /*    Right angle quote, guillemot right  */
 
908
        { '�' ,   "&reg"    },    /*    Registered trademark  */
 
909
        { '�' ,   "&sect"  },    /*     Section sign  */
 
910
        { '�' ,   "&shy"    },    /*    Soft hyphen  */
 
911
        { '�' ,   "&sup1"   },    /*    Superscript one  */
 
912
        { '�' ,   "&sup2"   },    /*    Superscript two  */
 
913
        { '�' ,   "&sup3"   },    /*    Superscript three  */
 
914
        { '�' ,   "&szlig"  },    /*    Small sharp s, German sz  */
 
915
        { '�' ,   "&thorn"  },    /*    Small thorn, Icelandic  */
 
916
        { '�' ,   "&times"  },    /*    Multiply sign  */
 
917
        { '�' ,   "&uacute" },    /*    Small u, acute accent  */
 
918
        { '�' ,   "&ucirc"  },    /*    Small u, circumflex  */
 
919
        { '�' ,   "&ugrave" },    /*    Small u, grave accent  */
 
920
        { '�' ,   "&um"    },    /*     Di�resis / Umlaut  */
 
921
        { '�' ,   "&uuml"   },    /*    Small u, di�resis / umlaut  */
 
922
        { '�' ,   "&yacute" },    /*    Small y, acute accent  */
 
923
        { '�' ,   "&yen"    },    /*    Yen sign  */
 
924
        { '\255', "&yuml"   },    /*    Small y, di�resis / umlaut  */
 
925
} ;
 
926
 
 
927
 
 
928
int sizeHtml2Char = sizeof (Html2Char) / sizeof (struct tCharTrans) ;
 
929