source: tol/TolJava/WebTOLJavaDEMO/web/sh/scripts/shBrushXml.js

devel
Last change on this file was 9887b93, checked in by Humberto Carralero <hacarralero@…>, 15 years ago

Importing TolJava

git-svn-id: ​https://www.tol-project.org/svn/tolp/trunk@3900 be4846ae-f051-483a-831f-b64e7d08527f

  • Property mode set to 100644
File size: 2.0 KB
Line 
1/**
2 * SyntaxHighlighter
3 * http://alexgorbatchev.com/SyntaxHighlighter
4 *
5 * SyntaxHighlighter is donationware. If you are using it, please donate.
6 * http://alexgorbatchev.com/SyntaxHighlighter/donate.html
7 *
8 * @version
9 * 3.0.83 (July 02 2010)
10 *
11 * @copyright
12 * Copyright (C) 2004-2010 Alex Gorbatchev.
13 *
14 * @license
15 * Dual licensed under the MIT and GPL licenses.
16 */
17;(function()
18{
19        // CommonJS
20        typeof(require) != 'undefined' ? SyntaxHighlighter = require('shCore').SyntaxHighlighter : null;
21
22        function Brush()
23        {
24                function process(match, regexInfo)
25                {
26                        var constructor = SyntaxHighlighter.Match,
27                                code = match[0],
28                                tag = new XRegExp('(&lt;|<)[\\s\\/\\?]*(?<name>[:\\w-\\.]+)', 'xg').exec(code),
29                                result = []
30                                ;
31               
32                        if (match.attributes != null)
33                        {
34                                var attributes,
35                                        regex = new XRegExp('(?<name> [\\w:\\-\\.]+)' +
36                                                                                '\\s*=\\s*' +
37                                                                                '(?<value> ".*?"|\'.*?\'|\\w+)',
38                                                                                'xg');
39
40                                while ((attributes = regex.exec(code)) != null)
41                                {
42                                        result.push(new constructor(attributes.name, match.index + attributes.index, 'color1'));
43                                        result.push(new constructor(attributes.value, match.index + attributes.index + attributes[0].indexOf(attributes.value), 'string'));
44                                }
45                        }
46
47                        if (tag != null)
48                                result.push(
49                                        new constructor(tag.name, match.index + tag[0].indexOf(tag.name), 'keyword')
50                                );
51
52                        return result;
53                }
54       
55                this.regexList = [
56                        { regex: new XRegExp('(\\&lt;|<)\\!\\[[\\w\\s]*?\\[(.|\\s)*?\\]\\](\\&gt;|>)', 'gm'),                   css: 'color2' },        // <![ ... [ ... ]]>
57                        { regex: SyntaxHighlighter.regexLib.xmlComments,                                                                                                css: 'comments' },      // <!-- ... -->
58                        { regex: new XRegExp('(&lt;|<)[\\s\\/\\?]*(\\w+)(?<attributes>.*?)[\\s\\/\\?]*(&gt;|>)', 'sg'), func: process }
59                ];
60        };
61
62        Brush.prototype = new SyntaxHighlighter.Highlighter();
63        Brush.aliases   = ['xml', 'xhtml', 'xslt', 'html'];
64
65        SyntaxHighlighter.brushes.Xml = Brush;
66
67        // CommonJS
68        typeof(exports) != 'undefined' ? exports.Brush = Brush : null;
69})();
Note: See TracBrowser for help on using the repository browser.