Commit 4dbb1194e8ff94233388876af0ecb8a290df0631

Authored by Edmar Moretti
1 parent dc4e739c

--no commit message

Showing 1 changed file with 0 additions and 325 deletions   Show diff stats
pacotes/codemirror/mode/mapfile/#mapfile.js#
@@ -1,325 +0,0 @@ @@ -1,325 +0,0 @@
1 -CodeMirror.defineMode("xml", function(config, parserConfig) {  
2 - var indentUnit = config.indentUnit;  
3 - var Kludges = parserConfig.mapfileMode ? {  
4 - autoSelfClosers: {'area': true, 'base': true, 'br': true, 'col': true, 'command': true,  
5 - 'embed': true, 'frame': true, 'hr': true, 'img': true, 'input': true,  
6 - 'keygen': true, 'link': true, 'meta': true, 'param': true, 'source': true,  
7 - 'track': true, 'wbr': true},  
8 - implicitlyClosed: {'dd': true, 'li': true, 'optgroup': true, 'option': true, 'p': true,  
9 - 'rp': true, 'rt': true, 'tbody': true, 'td': true, 'tfoot': true,  
10 - 'th': true, 'tr': true},  
11 - contextGrabbers: {  
12 - 'dd': {'dd': true, 'dt': true},  
13 - 'dt': {'dd': true, 'dt': true},  
14 - 'li': {'li': true},  
15 - 'option': {'option': true, 'optgroup': true},  
16 - 'optgroup': {'optgroup': true},  
17 - 'p': {'address': true, 'article': true, 'aside': true, 'blockquote': true, 'dir': true,  
18 - 'div': true, 'dl': true, 'fieldset': true, 'footer': true, 'form': true,  
19 - 'h1': true, 'h2': true, 'h3': true, 'h4': true, 'h5': true, 'h6': true,  
20 - 'header': true, 'hgroup': true, 'hr': true, 'menu': true, 'nav': true, 'ol': true,  
21 - 'p': true, 'pre': true, 'section': true, 'table': true, 'ul': true},  
22 - 'rp': {'rp': true, 'rt': true},  
23 - 'rt': {'rp': true, 'rt': true},  
24 - 'tbody': {'tbody': true, 'tfoot': true},  
25 - 'td': {'td': true, 'th': true},  
26 - 'tfoot': {'tbody': true},  
27 - 'th': {'td': true, 'th': true},  
28 - 'thead': {'tbody': true, 'tfoot': true},  
29 - 'tr': {'tr': true}  
30 - },  
31 - doNotIndent: {"pre": true},  
32 - allowUnquoted: true,  
33 - allowMissing: false  
34 - } : {  
35 - autoSelfClosers: {},  
36 - implicitlyClosed: {},  
37 - contextGrabbers: {},  
38 - doNotIndent: {},  
39 - allowUnquoted: false,  
40 - allowMissing: false  
41 - };  
42 - var alignCDATA = parserConfig.alignCDATA;  
43 -  
44 - // Return variables for tokenizers  
45 - var tagName, type;  
46 -  
47 - function inText(stream, state) {  
48 - function chain(parser) {  
49 - state.tokenize = parser;  
50 - return parser(stream, state);  
51 - }  
52 -  
53 - var ch = stream.next();  
54 - if (ch == "<") {  
55 - if (stream.eat("!")) {  
56 - if (stream.eat("[")) {  
57 - if (stream.match("CDATA[")) return chain(inBlock("atom", "]]>"));  
58 - else return null;  
59 - }  
60 - else if (stream.match("--")) return chain(inBlock("comment", "-->"));  
61 - else if (stream.match("DOCTYPE", true, true)) {  
62 - stream.eatWhile(/[\w\._\-]/);  
63 - return chain(doctype(1));  
64 - }  
65 - else return null;  
66 - }  
67 - else if (stream.eat("?")) {  
68 - stream.eatWhile(/[\w\._\-]/);  
69 - state.tokenize = inBlock("meta", "?>");  
70 - return "meta";  
71 - }  
72 - else {  
73 - type = stream.eat("/") ? "closeTag" : "openTag";  
74 - stream.eatSpace();  
75 - tagName = "";  
76 - var c;  
77 - while ((c = stream.eat(/[^\s\u00a0=<>\"\'\/?]/))) tagName += c;  
78 - state.tokenize = inTag;  
79 - return "tag";  
80 - }  
81 - }  
82 - else if (ch == "&") {  
83 - var ok;  
84 - if (stream.eat("#")) {  
85 - if (stream.eat("x")) {  
86 - ok = stream.eatWhile(/[a-fA-F\d]/) && stream.eat(";");  
87 - } else {  
88 - ok = stream.eatWhile(/[\d]/) && stream.eat(";");  
89 - }  
90 - } else {  
91 - ok = stream.eatWhile(/[\w\.\-:]/) && stream.eat(";");  
92 - }  
93 - return ok ? "atom" : "error";  
94 - }  
95 - else {  
96 - stream.eatWhile(/[^&<]/);  
97 - return null;  
98 - }  
99 - }  
100 -  
101 - function inTag(stream, state) {  
102 - var ch = stream.next();  
103 - if (ch == ">" || (ch == "/" && stream.eat(">"))) {  
104 - state.tokenize = inText;  
105 - type = ch == ">" ? "endTag" : "selfcloseTag";  
106 - return "tag";  
107 - }  
108 - else if (ch == "=") {  
109 - type = "equals";  
110 - return null;  
111 - }  
112 - else if (/[\'\"]/.test(ch)) {  
113 - state.tokenize = inAttribute(ch);  
114 - return state.tokenize(stream, state);  
115 - }  
116 - else {  
117 - stream.eatWhile(/[^\s\u00a0=<>\"\'\/?]/);  
118 - return "word";  
119 - }  
120 - }  
121 -  
122 - function inAttribute(quote) {  
123 - return function(stream, state) {  
124 - while (!stream.eol()) {  
125 - if (stream.next() == quote) {  
126 - state.tokenize = inTag;  
127 - break;  
128 - }  
129 - }  
130 - return "string";  
131 - };  
132 - }  
133 -  
134 - function inBlock(style, terminator) {  
135 - return function(stream, state) {  
136 - while (!stream.eol()) {  
137 - if (stream.match(terminator)) {  
138 - state.tokenize = inText;  
139 - break;  
140 - }  
141 - stream.next();  
142 - }  
143 - return style;  
144 - };  
145 - }  
146 - function doctype(depth) {  
147 - return function(stream, state) {  
148 - var ch;  
149 - while ((ch = stream.next()) != null) {  
150 - if (ch == "<") {  
151 - state.tokenize = doctype(depth + 1);  
152 - return state.tokenize(stream, state);  
153 - } else if (ch == ">") {  
154 - if (depth == 1) {  
155 - state.tokenize = inText;  
156 - break;  
157 - } else {  
158 - state.tokenize = doctype(depth - 1);  
159 - return state.tokenize(stream, state);  
160 - }  
161 - }  
162 - }  
163 - return "meta";  
164 - };  
165 - }  
166 -  
167 - var curState, setStyle;  
168 - function pass() {  
169 - for (var i = arguments.length - 1; i >= 0; i--) curState.cc.push(arguments[i]);  
170 - }  
171 - function cont() {  
172 - pass.apply(null, arguments);  
173 - return true;  
174 - }  
175 -  
176 - function pushContext(tagName, startOfLine) {  
177 - var noIndent = Kludges.doNotIndent.hasOwnProperty(tagName) || (curState.context && curState.context.noIndent);  
178 - curState.context = {  
179 - prev: curState.context,  
180 - tagName: tagName,  
181 - indent: curState.indented,  
182 - startOfLine: startOfLine,  
183 - noIndent: noIndent  
184 - };  
185 - }  
186 - function popContext() {  
187 - if (curState.context) curState.context = curState.context.prev;  
188 - }  
189 -  
190 - function element(type) {  
191 - if (type == "openTag") {  
192 - curState.tagName = tagName;  
193 - return cont(attributes, endtag(curState.startOfLine));  
194 - } else if (type == "closeTag") {  
195 - var err = false;  
196 - if (curState.context) {  
197 - if (curState.context.tagName != tagName) {  
198 - if (Kludges.implicitlyClosed.hasOwnProperty(curState.context.tagName.toLowerCase())) {  
199 - popContext();  
200 - }  
201 - err = !curState.context || curState.context.tagName != tagName;  
202 - }  
203 - } else {  
204 - err = true;  
205 - }  
206 - if (err) setStyle = "error";  
207 - return cont(endclosetag(err));  
208 - }  
209 - return cont();  
210 - }  
211 - function endtag(startOfLine) {  
212 - return function(type) {  
213 - if (type == "selfcloseTag" ||  
214 - (type == "endTag" && Kludges.autoSelfClosers.hasOwnProperty(curState.tagName.toLowerCase()))) {  
215 - maybePopContext(curState.tagName.toLowerCase());  
216 - return cont();  
217 - }  
218 - if (type == "endTag") {  
219 - maybePopContext(curState.tagName.toLowerCase());  
220 - pushContext(curState.tagName, startOfLine);  
221 - return cont();  
222 - }  
223 - return cont();  
224 - };  
225 - }  
226 - function endclosetag(err) {  
227 - return function(type) {  
228 - if (err) setStyle = "error";  
229 - if (type == "endTag") { popContext(); return cont(); }  
230 - setStyle = "error";  
231 - return cont(arguments.callee);  
232 - }  
233 - }  
234 - function maybePopContext(nextTagName) {  
235 - var parentTagName;  
236 - while (true) {  
237 - if (!curState.context) {  
238 - return;  
239 - }  
240 - parentTagName = curState.context.tagName.toLowerCase();  
241 - if (!Kludges.contextGrabbers.hasOwnProperty(parentTagName) ||  
242 - !Kludges.contextGrabbers[parentTagName].hasOwnProperty(nextTagName)) {  
243 - return;  
244 - }  
245 - popContext();  
246 - }  
247 - }  
248 -  
249 - function attributes(type) {  
250 - if (type == "word") {setStyle = "attribute"; return cont(attribute, attributes);}  
251 - if (type == "endTag" || type == "selfcloseTag") return pass();  
252 - setStyle = "error";  
253 - return cont(attributes);  
254 - }  
255 - function attribute(type) {  
256 - if (type == "equals") return cont(attvalue, attributes);  
257 - if (!Kludges.allowMissing) setStyle = "error";  
258 - return (type == "endTag" || type == "selfcloseTag") ? pass() : cont();  
259 - }  
260 - function attvalue(type) {  
261 - if (type == "string") return cont(attvaluemaybe);  
262 - if (type == "word" && Kludges.allowUnquoted) {setStyle = "string"; return cont();}  
263 - setStyle = "error";  
264 - return (type == "endTag" || type == "selfCloseTag") ? pass() : cont();  
265 - }  
266 - function attvaluemaybe(type) {  
267 - if (type == "string") return cont(attvaluemaybe);  
268 - else return pass();  
269 - }  
270 -  
271 - return {  
272 - startState: function() {  
273 - return {tokenize: inText, cc: [], indented: 0, startOfLine: true, tagName: null, context: null};  
274 - },  
275 -  
276 - token: function(stream, state) {  
277 - if (stream.sol()) {  
278 - state.startOfLine = true;  
279 - state.indented = stream.indentation();  
280 - }  
281 - if (stream.eatSpace()) return null;  
282 -  
283 - setStyle = type = tagName = null;  
284 - var style = state.tokenize(stream, state);  
285 - state.type = type;  
286 - if ((style || type) && style != "comment") {  
287 - curState = state;  
288 - while (true) {  
289 - var comb = state.cc.pop() || element;  
290 - if (comb(type || style)) break;  
291 - }  
292 - }  
293 - state.startOfLine = false;  
294 - return setStyle || style;  
295 - },  
296 -  
297 - indent: function(state, textAfter, fullLine) {  
298 - var context = state.context;  
299 - if ((state.tokenize != inTag && state.tokenize != inText) ||  
300 - context && context.noIndent)  
301 - return fullLine ? fullLine.match(/^(\s*)/)[0].length : 0;  
302 - if (alignCDATA && /<!\[CDATA\[/.test(textAfter)) return 0;  
303 - if (context && /^<\//.test(textAfter))  
304 - context = context.prev;  
305 - while (context && !context.startOfLine)  
306 - context = context.prev;  
307 - if (context) return context.indent + indentUnit;  
308 - else return 0;  
309 - },  
310 -  
311 - compareStates: function(a, b) {  
312 - if (a.indented != b.indented || a.tokenize != b.tokenize) return false;  
313 - for (var ca = a.context, cb = b.context; ; ca = ca.prev, cb = cb.prev) {  
314 - if (!ca || !cb) return ca == cb;  
315 - if (ca.tagName != cb.tagName) return false;  
316 - }  
317 - },  
318 -  
319 - electricChars: "/"  
320 - };  
321 -});  
322 -  
323 -CodeMirror.defineMIME("application/xml", "xml");  
324 -if (!CodeMirror.mimeModes.hasOwnProperty("text/html"))  
325 - CodeMirror.defineMIME("text/html", {name: "xml", htmlMode: true});