1 |
wakaba |
1.41 |
2009-09-05 Wakaba <wakaba@suika.fam.cx> |
2 |
|
|
|
3 |
|
|
* Tokenizer.pm.src (_get_next_token): Implemented the "comment end |
4 |
wakaba |
1.42 |
space state" (HTML5 revision 3195). |
5 |
|
|
|
6 |
|
|
2009-09-05 Wakaba <wakaba@suika.fam.cx> |
7 |
|
|
|
8 |
|
|
* Tokenizer.pm.src (_get_next_token): Implemented the "comment end |
9 |
wakaba |
1.41 |
bang state" (HTML5 revision 3191). |
10 |
|
|
|
11 |
wakaba |
1.39 |
2009-08-16 Wakaba <wakaba@suika.fam.cx> |
12 |
|
|
|
13 |
wakaba |
1.40 |
* Tokenizer.pm.src: Any "<" character in attribute names become |
14 |
|
|
parse error (HTML5 revision 3354). |
15 |
|
|
|
16 |
|
|
2009-08-16 Wakaba <wakaba@suika.fam.cx> |
17 |
|
|
|
18 |
wakaba |
1.39 |
* Tokenizer.pm.src: Lowercase-fold doctype names (HTML5 revision |
19 |
|
|
2501, cf. HTML5 revision 3571). |
20 |
|
|
|
21 |
wakaba |
1.38 |
2009-07-05 Wakaba <wakaba@suika.fam.cx> |
22 |
|
|
|
23 |
|
|
* Tokenizer.pm.src: Reduced the number of parse errors on broken |
24 |
|
|
DOCTYPE (HTML5 revision 3121). |
25 |
|
|
|
26 |
wakaba |
1.36 |
2009-07-03 Wakaba <wakaba@suika.fam.cx> |
27 |
|
|
|
28 |
wakaba |
1.37 |
* Tokenizer.pm.src: Reduced a parse error (HTML5 revision 3194). |
29 |
|
|
|
30 |
|
|
2009-07-03 Wakaba <wakaba@suika.fam.cx> |
31 |
|
|
|
32 |
wakaba |
1.36 |
* Tokenizer.pm.src: "<" in unquoted attribute values is now |
33 |
|
|
treated as parse error (HTML5 revision 3206). |
34 |
|
|
|
35 |
wakaba |
1.35 |
2008-11-07 Wakaba <wakaba@suika.fam.cx> |
36 |
|
|
|
37 |
|
|
* Dumper.pm (dumptree): Support for namespace abbreviation for |
38 |
|
|
SWML namespaces. |
39 |
|
|
|
40 |
wakaba |
1.26 |
2008-10-19 Wakaba <wakaba@suika.fam.cx> |
41 |
|
|
|
42 |
wakaba |
1.34 |
* Tokenizer.pm.src: Normalize white space characters in attribute |
43 |
|
|
value literals in XML documents. Don't apply character reference |
44 |
|
|
mapping table for non-NULL non-surrogate code points. |
45 |
|
|
|
46 |
|
|
2008-10-19 Wakaba <wakaba@suika.fam.cx> |
47 |
|
|
|
48 |
wakaba |
1.33 |
* Tokenizer.pm.src: Set the "stop_processing" flag true when a |
49 |
|
|
parameter entity occurs in a standalone="no" document. |
50 |
|
|
|
51 |
|
|
2008-10-19 Wakaba <wakaba@suika.fam.cx> |
52 |
|
|
|
53 |
wakaba |
1.32 |
* Tokenizer.pm.src: Column number counting fixed. |
54 |
|
|
|
55 |
|
|
2008-10-19 Wakaba <wakaba@suika.fam.cx> |
56 |
|
|
|
57 |
wakaba |
1.31 |
* Tokenizer.pm.src: Raise a parse error for '&' that does not |
58 |
|
|
introduce a reference in XML. Support for non-ASCII entity |
59 |
|
|
reference names. |
60 |
|
|
|
61 |
|
|
2008-10-19 Wakaba <wakaba@suika.fam.cx> |
62 |
|
|
|
63 |
wakaba |
1.30 |
* Tokenizer.pm.src: Make uppercase "&#X" in XML a parse error. |
64 |
|
|
Remove the limitation of entity name length. Enable replacement |
65 |
|
|
of text-only general entities. Raise a parse error for an |
66 |
|
|
unparsed entity reference. Raise a parse error for a general |
67 |
|
|
entity reference to an undefined entity. |
68 |
|
|
|
69 |
|
|
2008-10-19 Wakaba <wakaba@suika.fam.cx> |
70 |
|
|
|
71 |
wakaba |
1.29 |
* Tokenizer.pm.src: Support for <!ELEMENT>. |
72 |
|
|
(AFTER_NOTATION_NAME_STATE): Renamed as |AFTER_MD_DEF_STATE| (i.e. |
73 |
|
|
after markup declaration definition state). |
74 |
|
|
|
75 |
|
|
2008-10-19 Wakaba <wakaba@suika.fam.cx> |
76 |
|
|
|
77 |
wakaba |
1.28 |
* Tokenizer.pm.src: Support for EntityValue. |
78 |
|
|
|
79 |
|
|
2008-10-19 Wakaba <wakaba@suika.fam.cx> |
80 |
|
|
|
81 |
wakaba |
1.27 |
* Dumper.pm: Dump text content of Entity nodes. |
82 |
|
|
|
83 |
|
|
* Tokenizer.pm.src: Support for <!ENTITY ... NDATA>. |
84 |
|
|
|
85 |
|
|
2008-10-19 Wakaba <wakaba@suika.fam.cx> |
86 |
|
|
|
87 |
wakaba |
1.26 |
* Tokenizer.pm.src (_get_next_token): Make keywords 'ENTITY', |
88 |
|
|
'ELEMENT', 'ATTLIST', and 'NOTATION' ASCII case-insensitive. |
89 |
|
|
|
90 |
wakaba |
1.24 |
2008-10-18 Wakaba <wakaba@suika.fam.cx> |
91 |
|
|
|
92 |
wakaba |
1.25 |
* Tokenizer.pm.src: Modifies PUBLIC/SYSTEM identifier tokenizer |
93 |
|
|
states such that <!ENTITY> and <!NOTATION> can be tokenized by |
94 |
|
|
those states as well. |
95 |
|
|
(BOGUS_MD_STATE): A new state; used for bogus markup declarations, |
96 |
|
|
in favor of BOGUS_COMMENT_STATE. |
97 |
|
|
|
98 |
|
|
2008-10-18 Wakaba <wakaba@suika.fam.cx> |
99 |
|
|
|
100 |
wakaba |
1.24 |
* Tokenizer.pm.src: <!ATTLIST> in the internal subset of an XML |
101 |
|
|
document, is now fully implemented. |
102 |
|
|
|
103 |
|
|
* Dumper.pm (dumptree): Output allowed tokens and default value |
104 |
|
|
always. |
105 |
|
|
|
106 |
wakaba |
1.23 |
2008-10-17 Wakaba <wakaba@suika.fam.cx> |
107 |
|
|
|
108 |
|
|
* Tokenizer.pm.src: New token types AtTLIST_TOKEN, ELEMENT_TOKEN, |
109 |
|
|
GENERAL_ENTITY_TOKEN, PARAMETER_ENTITY_TOKEN, and NOTATION_TOKEN |
110 |
|
|
are added. New intertion modes for markup declarations are added. |
111 |
|
|
|
112 |
wakaba |
1.22 |
2008-10-16 Wakaba <wakaba@suika.fam.cx> |
113 |
|
|
|
114 |
|
|
* Tokenizer.pm.src: New token type END_OF_DOCTYPE_TOKEN added. |
115 |
|
|
New states DOCTYPE_TAG_STATE and |
116 |
|
|
BOGUS_DOCTYPE_INTERNAL_SUBSET_AFTER_STATE are added. (Bogus |
117 |
|
|
string after the internal subset, which was handled by the state |
118 |
|
|
BOGUS_DOCTYPE_STATE, are now handled by the new state.) Support |
119 |
|
|
for comments, bogus comments, and processing instructions in the |
120 |
|
|
internal subset. If there is the internal subset, then emit the |
121 |
|
|
doctype token before the internal subset (with its |
122 |
|
|
$token->{has_internal_subset} flag set) and an |
123 |
|
|
END_OF_DOCTYPE_TOKEN after the internal subset. |
124 |
|
|
|
125 |
wakaba |
1.16 |
2008-10-15 Wakaba <wakaba@suika.fam.cx> |
126 |
|
|
|
127 |
wakaba |
1.21 |
* Tokenizer.pm.src: $self->{s_kwd} for non-DATA_STATE states are |
128 |
|
|
renamed as $self->{kwd} to avoid confliction. Don't raise |
129 |
|
|
case-sensitivity error for the keyword "DOCTYPE" in HTML mode. |
130 |
|
|
Support for internal subsets (internal subset itself only; no |
131 |
|
|
declaration in them is supported yet). Raise a parse error for |
132 |
|
|
non-uppercase keywords "PUBLIC" and "SYSTEM" in XML mode. Raise a |
133 |
|
|
parse error if no system identifier is specified for a DOCTYPE |
134 |
|
|
declaration with a public identifier. Don't close the DOCTYPE |
135 |
|
|
declaration by a ">" character in the system declaration in XML |
136 |
|
|
mode. |
137 |
|
|
|
138 |
|
|
2008-10-15 Wakaba <wakaba@suika.fam.cx> |
139 |
|
|
|
140 |
wakaba |
1.20 |
* Tokenizer.pm.src: Set index attribute to each attribute token, |
141 |
|
|
for ignoring namespaced duplicate attribute at the XML namespace |
142 |
|
|
parser layer. Raise a parse error if the attribute value is |
143 |
|
|
omitted, in XML mode. Raise a parse error if the attribute value |
144 |
|
|
is not quoted, in XML mode. Raise a parse error if "<" character |
145 |
|
|
is found in a quoted attribute value, in XML mode. |
146 |
|
|
|
147 |
|
|
2008-10-15 Wakaba <wakaba@suika.fam.cx> |
148 |
|
|
|
149 |
wakaba |
1.19 |
* Tokenizer.pm.src: XML tag name start character support for end |
150 |
|
|
tags. Support for the short end tag syntax of XML5. Raise a |
151 |
|
|
parse erorr for a lowercase <!doctype> in XML. |
152 |
|
|
|
153 |
|
|
2008-10-15 Wakaba <wakaba@suika.fam.cx> |
154 |
|
|
|
155 |
|
|
* Tokenizer.pm.src: XML tag name start character support for start |
156 |
wakaba |
1.18 |
tags. |
157 |
|
|
|
158 |
|
|
2008-10-15 Wakaba <wakaba@suika.fam.cx> |
159 |
|
|
|
160 |
wakaba |
1.17 |
* Tokenizer.pm.src: Support for XML processing instructions. |
161 |
|
|
|
162 |
|
|
2008-10-15 Wakaba <wakaba@suika.fam.cx> |
163 |
|
|
|
164 |
wakaba |
1.16 |
* Tokenizer.pm.src: Mark CHARACTER_TOKEN with character reference |
165 |
|
|
as such, for the support of XML parse error. |
166 |
|
|
|
167 |
wakaba |
1.8 |
2008-10-14 Wakaba <wakaba@suika.fam.cx> |
168 |
|
|
|
169 |
wakaba |
1.15 |
* Tokenizer.pm.src: Parse error if CDATA section is not closed or |
170 |
|
|
is placed outside of the root element. |
171 |
|
|
|
172 |
|
|
2008-10-14 Wakaba <wakaba@suika.fam.cx> |
173 |
|
|
|
174 |
wakaba |
1.14 |
* Tokenizer.pm.src: Raise a parse error for XML "]]>" other than |
175 |
|
|
CDATA section end. |
176 |
|
|
|
177 |
|
|
2008-10-14 Wakaba <wakaba@suika.fam.cx> |
178 |
|
|
|
179 |
wakaba |
1.13 |
* Tokenizer.pm.src: Support for case-insensitive XML attribute |
180 |
|
|
names. |
181 |
|
|
|
182 |
|
|
2008-10-14 Wakaba <wakaba@suika.fam.cx> |
183 |
|
|
|
184 |
wakaba |
1.12 |
* Dumper.pm: Typo fixed. |
185 |
|
|
|
186 |
|
|
2008-10-14 Wakaba <wakaba@suika.fam.cx> |
187 |
|
|
|
188 |
wakaba |
1.11 |
* Dumper.pm: New module. |
189 |
|
|
|
190 |
|
|
2008-10-14 Wakaba <wakaba@suika.fam.cx> |
191 |
|
|
|
192 |
wakaba |
1.10 |
* Tokenizer.pm.src: Introduced "in_xml" flag for CDATA section |
193 |
|
|
support in XML. |
194 |
|
|
|
195 |
|
|
2008-10-14 Wakaba <wakaba@suika.fam.cx> |
196 |
|
|
|
197 |
wakaba |
1.9 |
* Tokenizer.pm.src: Make *_TOKEN (token type constants) |
198 |
|
|
exportable. New token types, PI_TOKEN for XML and ABORT_TOKEN for |
199 |
|
|
document.write() or incremental parsing, are added for future |
200 |
|
|
extensions. |
201 |
|
|
|
202 |
|
|
2008-10-14 Wakaba <wakaba@suika.fam.cx> |
203 |
|
|
|
204 |
wakaba |
1.8 |
* Tokenizer.pm.src: New file. |
205 |
|
|
|
206 |
wakaba |
1.5 |
2008-05-24 Wakaba <wakaba@suika.fam.cx> |
207 |
|
|
|
208 |
wakaba |
1.7 |
* Serializer.pm (get_inner_html): Don't escape |"| in |
209 |
|
|
content (HTML5 revision 1592). |
210 |
|
|
|
211 |
|
|
2008-05-24 Wakaba <wakaba@suika.fam.cx> |
212 |
|
|
|
213 |
wakaba |
1.5 |
* Serializer.pm (get_inner_html): Append "\n" after the start |
214 |
wakaba |
1.6 |
tag of a |listing| element (HTML5 revision 1675). |
215 |
wakaba |
1.5 |
|
216 |
wakaba |
1.4 |
2008-03-02 Wakaba <wakaba@suika.fam.cx> |
217 |
|
|
|
218 |
|
|
* Serializer.pm (get_inner_html): Typo fixed. |
219 |
|
|
|
220 |
wakaba |
1.3 |
2008-03-01 Wakaba <wakaba@suika.fam.cx> |
221 |
|
|
|
222 |
|
|
* Serializer.pm (get_inner_html): Escape NBSP (HTML5 revision |
223 |
|
|
1277). |
224 |
|
|
|
225 |
wakaba |
1.2 |
2007-11-11 Wakaba <wakaba@suika.fam.cx> |
226 |
|
|
|
227 |
|
|
* Serializer.pod: New file. |
228 |
|
|
|
229 |
|
|
* Makefile: New file. |
230 |
|
|
|
231 |
|
|
2007-11-11 Wakaba <wakaba@suika.fam.cx> |
232 |
|
|
|
233 |
|
|
* Serializer.pm: New module (split from ../HTML.pm.src). |
234 |
|
|
|
235 |
|
|
2007-11-11 Wakaba <wakaba@suika.fam.cx> |
236 |
|
|
|
237 |
|
|
* ChangeLog: New file. |
238 |
|
|
|
239 |
|
|
|