tobias-codex 1.0.3
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +18 -0
- data/LICENSE.txt +29 -0
- data/Manifest.txt +105 -0
- data/PostInstall.txt +5 -0
- data/README.txt +34 -0
- data/Rakefile +6 -0
- data/app_generators/codex/USAGE +5 -0
- data/app_generators/codex/codex_generator.rb +109 -0
- data/app_generators/codex/templates/Rakefile +59 -0
- data/app_generators/codex/templates/bin/build_all.rb +47 -0
- data/app_generators/codex/templates/bin/postprocess_all.rb +5 -0
- data/app_generators/codex/templates/bin/pressie.rb +10 -0
- data/app_generators/codex/templates/code/control/basic_continuation.rb +11 -0
- data/app_generators/codex/templates/code/control/cc_throw_catch.rb +59 -0
- data/app_generators/codex/templates/code/control/closure_continuation.rb +8 -0
- data/app_generators/codex/templates/code/control/closure_continuation_2.rb +12 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/CSS.html +115 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/CSharp.html +134 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/CollapseCode.html +90 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Cpp.html +190 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/CrashTest.html +108 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Delphi.html +112 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/FirstLine.html +90 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Index.html +80 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Java.html +122 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/JavaScript.html +112 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/NoControls.html +89 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/NoGutter.html +89 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/PHP.html +102 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Python.html +121 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Ruby.html +131 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/SQL.html +98 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/clipboard.swf +0 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushCSharp.js +32 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushCpp.js +73 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushCss.js +52 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushDelphi.js +34 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushJScript.js +22 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushJava.js +28 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushPhp.js +60 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushPython.js +30 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushRuby.js +28 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushSql.js +42 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushVb.js +29 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shBrushXml.js +70 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shCore.js +414 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Scripts/shCore.uncompressed.js +674 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/ShowColumns.html +89 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/SmartTabs.html +88 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Styles/SyntaxHighlighter.css +158 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Styles/TestPages.css +63 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/Templates/Test.dwt +80 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/VB.html +115 -0
- data/app_generators/codex/templates/dp.SyntaxHighlighter/XML.html +136 -0
- data/app_generators/codex/templates/html/all.html +0 -0
- data/app_generators/codex/templates/readme.txt +4 -0
- data/app_generators/codex/templates/slides/basics.slides +37 -0
- data/app_generators/codex/templates/slides/building.slides +27 -0
- data/app_generators/codex/templates/slides/example.slides +80 -0
- data/app_generators/codex/templates/slides/including_code.slides +80 -0
- data/app_generators/codex/templates/slides/including_tex.slides +31 -0
- data/app_generators/codex/templates/slides/metadata.yml +4 -0
- data/app_generators/codex/templates/slides/table_of_contents.slides +20 -0
- data/app_generators/codex/templates/ui/default/blank.gif +0 -0
- data/app_generators/codex/templates/ui/default/bodybg.gif +0 -0
- data/app_generators/codex/templates/ui/default/framing.css +23 -0
- data/app_generators/codex/templates/ui/default/iepngfix.htc +42 -0
- data/app_generators/codex/templates/ui/default/opera.css +7 -0
- data/app_generators/codex/templates/ui/default/outline.css +15 -0
- data/app_generators/codex/templates/ui/default/pretty.css +86 -0
- data/app_generators/codex/templates/ui/default/print.css +1 -0
- data/app_generators/codex/templates/ui/default/s5-core.css +9 -0
- data/app_generators/codex/templates/ui/default/slides.css +3 -0
- data/app_generators/codex/templates/ui/default/slides.js +553 -0
- data/bin/codex +17 -0
- data/codex.gemspec +30 -0
- data/config/hoe.rb +76 -0
- data/config/requirements.rb +15 -0
- data/lib/codex.rb +23 -0
- data/lib/codex/content.rb +55 -0
- data/lib/codex/pressie.rb +118 -0
- data/lib/codex/version.rb +9 -0
- data/lib/stylesheets/pressie.css +196 -0
- data/lib/stylesheets/print.css +149 -0
- data/lib/stylesheets/ruby.png +0 -0
- data/script/console +10 -0
- data/script/destroy +14 -0
- data/script/generate +14 -0
- data/setup.rb +1585 -0
- data/tasks/deployment.rake +34 -0
- data/tasks/environment.rake +7 -0
- data/tasks/website.rake +9 -0
- data/test/test_codex.rb +11 -0
- data/test/test_codex_generator.rb +78 -0
- data/test/test_generator_helper.rb +29 -0
- data/test/test_helper.rb +2 -0
- metadata +164 -0
@@ -0,0 +1,28 @@
|
|
1
|
+
dp.sh.Brushes.Java = function()
|
2
|
+
{
|
3
|
+
var keywords = 'abstract assert boolean break byte case catch char class const ' +
|
4
|
+
'continue default do double else enum extends ' +
|
5
|
+
'false final finally float for goto if implements import ' +
|
6
|
+
'instanceof int interface long native new null ' +
|
7
|
+
'package private protected public return ' +
|
8
|
+
'short static strictfp super switch synchronized this throw throws true ' +
|
9
|
+
'transient try void volatile while';
|
10
|
+
|
11
|
+
this.regexList = [
|
12
|
+
{ regex: dp.sh.RegexLib.SingleLineCComments, css: 'comment' }, // one line comments
|
13
|
+
{ regex: dp.sh.RegexLib.MultiLineCComments, css: 'comment' }, // multiline comments
|
14
|
+
{ regex: dp.sh.RegexLib.DoubleQuotedString, css: 'string' }, // strings
|
15
|
+
{ regex: dp.sh.RegexLib.SingleQuotedString, css: 'string' }, // strings
|
16
|
+
{ regex: new RegExp('\\b([\\d]+(\\.[\\d]+)?|0x[a-f0-9]+)\\b', 'gi'), css: 'number' }, // numbers
|
17
|
+
{ regex: new RegExp('(?!\\@interface\\b)\\@[\\$\\w]+\\b', 'g'), css: 'annotation' }, // annotation @anno
|
18
|
+
{ regex: new RegExp('\\@interface\\b', 'g'), css: 'keyword' }, // @interface keyword
|
19
|
+
{ regex: new RegExp(this.GetKeywords(keywords), 'gm'), css: 'keyword' } // java keyword
|
20
|
+
];
|
21
|
+
|
22
|
+
this.CssClass = 'dp-j';
|
23
|
+
this.Style = '.dp-j .annotation { color: #646464; }' +
|
24
|
+
'.dp-j .number { color: #C00000; }';
|
25
|
+
}
|
26
|
+
|
27
|
+
dp.sh.Brushes.Java.prototype = new dp.sh.Highlighter();
|
28
|
+
dp.sh.Brushes.Java.Aliases = ['java'];
|
@@ -0,0 +1,60 @@
|
|
1
|
+
dp.sh.Brushes.Php = function()
|
2
|
+
{
|
3
|
+
var funcs = 'abs acos acosh addcslashes addslashes ' +
|
4
|
+
'array_change_key_case array_chunk array_combine array_count_values array_diff '+
|
5
|
+
'array_diff_assoc array_diff_key array_diff_uassoc array_diff_ukey array_fill '+
|
6
|
+
'array_filter array_flip array_intersect array_intersect_assoc array_intersect_key '+
|
7
|
+
'array_intersect_uassoc array_intersect_ukey array_key_exists array_keys array_map '+
|
8
|
+
'array_merge array_merge_recursive array_multisort array_pad array_pop array_product '+
|
9
|
+
'array_push array_rand array_reduce array_reverse array_search array_shift '+
|
10
|
+
'array_slice array_splice array_sum array_udiff array_udiff_assoc '+
|
11
|
+
'array_udiff_uassoc array_uintersect array_uintersect_assoc '+
|
12
|
+
'array_uintersect_uassoc array_unique array_unshift array_values array_walk '+
|
13
|
+
'array_walk_recursive atan atan2 atanh base64_decode base64_encode base_convert '+
|
14
|
+
'basename bcadd bccomp bcdiv bcmod bcmul bindec bindtextdomain bzclose bzcompress '+
|
15
|
+
'bzdecompress bzerrno bzerror bzerrstr bzflush bzopen bzread bzwrite ceil chdir '+
|
16
|
+
'checkdate checkdnsrr chgrp chmod chop chown chr chroot chunk_split class_exists '+
|
17
|
+
'closedir closelog copy cos cosh count count_chars date decbin dechex decoct '+
|
18
|
+
'deg2rad delete ebcdic2ascii echo empty end ereg ereg_replace eregi eregi_replace error_log '+
|
19
|
+
'error_reporting escapeshellarg escapeshellcmd eval exec exit exp explode extension_loaded '+
|
20
|
+
'feof fflush fgetc fgetcsv fgets fgetss file_exists file_get_contents file_put_contents '+
|
21
|
+
'fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype '+
|
22
|
+
'floatval flock floor flush fmod fnmatch fopen fpassthru fprintf fputcsv fputs fread fscanf '+
|
23
|
+
'fseek fsockopen fstat ftell ftok getallheaders getcwd getdate getenv gethostbyaddr gethostbyname '+
|
24
|
+
'gethostbynamel getimagesize getlastmod getmxrr getmygid getmyinode getmypid getmyuid getopt '+
|
25
|
+
'getprotobyname getprotobynumber getrandmax getrusage getservbyname getservbyport gettext '+
|
26
|
+
'gettimeofday gettype glob gmdate gmmktime ini_alter ini_get ini_get_all ini_restore ini_set '+
|
27
|
+
'interface_exists intval ip2long is_a is_array is_bool is_callable is_dir is_double '+
|
28
|
+
'is_executable is_file is_finite is_float is_infinite is_int is_integer is_link is_long '+
|
29
|
+
'is_nan is_null is_numeric is_object is_readable is_real is_resource is_scalar is_soap_fault '+
|
30
|
+
'is_string is_subclass_of is_uploaded_file is_writable is_writeable mkdir mktime nl2br '+
|
31
|
+
'parse_ini_file parse_str parse_url passthru pathinfo readlink realpath rewind rewinddir rmdir '+
|
32
|
+
'round str_ireplace str_pad str_repeat str_replace str_rot13 str_shuffle str_split '+
|
33
|
+
'str_word_count strcasecmp strchr strcmp strcoll strcspn strftime strip_tags stripcslashes '+
|
34
|
+
'stripos stripslashes stristr strlen strnatcasecmp strnatcmp strncasecmp strncmp strpbrk '+
|
35
|
+
'strpos strptime strrchr strrev strripos strrpos strspn strstr strtok strtolower strtotime '+
|
36
|
+
'strtoupper strtr strval substr substr_compare';
|
37
|
+
|
38
|
+
var keywords = 'and or xor __FILE__ __LINE__ array as break case ' +
|
39
|
+
'cfunction class const continue declare default die do else ' +
|
40
|
+
'elseif empty enddeclare endfor endforeach endif endswitch endwhile ' +
|
41
|
+
'extends for foreach function include include_once global if ' +
|
42
|
+
'new old_function return static switch use require require_once ' +
|
43
|
+
'var while __FUNCTION__ __CLASS__ ' +
|
44
|
+
'__METHOD__ abstract interface public implements extends private protected throw';
|
45
|
+
|
46
|
+
this.regexList = [
|
47
|
+
{ regex: dp.sh.RegexLib.SingleLineCComments, css: 'comment' }, // one line comments
|
48
|
+
{ regex: dp.sh.RegexLib.MultiLineCComments, css: 'comment' }, // multiline comments
|
49
|
+
{ regex: dp.sh.RegexLib.DoubleQuotedString, css: 'string' }, // double quoted strings
|
50
|
+
{ regex: dp.sh.RegexLib.SingleQuotedString, css: 'string' }, // single quoted strings
|
51
|
+
{ regex: new RegExp('\\$\\w+', 'g'), css: 'vars' }, // variables
|
52
|
+
{ regex: new RegExp(this.GetKeywords(funcs), 'gmi'), css: 'func' }, // functions
|
53
|
+
{ regex: new RegExp(this.GetKeywords(keywords), 'gm'), css: 'keyword' } // keyword
|
54
|
+
];
|
55
|
+
|
56
|
+
this.CssClass = 'dp-c';
|
57
|
+
}
|
58
|
+
|
59
|
+
dp.sh.Brushes.Php.prototype = new dp.sh.Highlighter();
|
60
|
+
dp.sh.Brushes.Php.Aliases = ['php'];
|
@@ -0,0 +1,30 @@
|
|
1
|
+
/* Python 2.3 syntax contributed by Gheorghe Milas */
|
2
|
+
dp.sh.Brushes.Python = function()
|
3
|
+
{
|
4
|
+
var keywords = 'and assert break class continue def del elif else ' +
|
5
|
+
'except exec finally for from global if import in is ' +
|
6
|
+
'lambda not or pass print raise return try yield while';
|
7
|
+
|
8
|
+
var special = 'None True False self cls class_'
|
9
|
+
|
10
|
+
this.regexList = [
|
11
|
+
{ regex: dp.sh.RegexLib.SingleLinePerlComments, css: 'comment' },
|
12
|
+
{ regex: new RegExp("^\\s*@\\w+", 'gm'), css: 'decorator' },
|
13
|
+
{ regex: new RegExp("(['\"]{3})([^\\1])*?\\1", 'gm'), css: 'comment' },
|
14
|
+
{ regex: new RegExp('"(?!")(?:\\.|\\\\\\"|[^\\""\\n\\r])*"', 'gm'), css: 'string' },
|
15
|
+
{ regex: new RegExp("'(?!')*(?:\\.|(\\\\\\')|[^\\''\\n\\r])*'", 'gm'), css: 'string' },
|
16
|
+
{ regex: new RegExp("\\b\\d+\\.?\\w*", 'g'), css: 'number' },
|
17
|
+
{ regex: new RegExp(this.GetKeywords(keywords), 'gm'), css: 'keyword' },
|
18
|
+
{ regex: new RegExp(this.GetKeywords(special), 'gm'), css: 'special' },
|
19
|
+
];
|
20
|
+
|
21
|
+
this.CssClass = 'dp-py';
|
22
|
+
this.Style = '.dp-py .builtins { color: #ff1493; }' +
|
23
|
+
'.dp-py .magicmethods { color: #808080; }' +
|
24
|
+
'.dp-py .exceptions { color: brown; }' +
|
25
|
+
'.dp-py .types { color: brown; font-style: italic; }' +
|
26
|
+
'.dp-py .commonlibs { color: #8A2BE2; font-style: italic; }';
|
27
|
+
}
|
28
|
+
|
29
|
+
dp.sh.Brushes.Python.prototype = new dp.sh.Highlighter();
|
30
|
+
dp.sh.Brushes.Python.Aliases = ['py', 'python'];
|
@@ -0,0 +1,28 @@
|
|
1
|
+
/* Ruby 1.8.4 syntax contributed by Erik Peterson */
|
2
|
+
dp.sh.Brushes.Ruby = function()
|
3
|
+
{
|
4
|
+
var keywords = 'alias and BEGIN begin break case class def define_method defined do each else elsif ' +
|
5
|
+
'END end ensure false for if in module new next nil not or raise redo rescue retry return ' +
|
6
|
+
'self super then throw true undef unless until when while yield';
|
7
|
+
|
8
|
+
var builtins = 'Array Bignum Binding Class Continuation Dir Exception FalseClass File::Stat File Fixnum Fload ' +
|
9
|
+
'Hash Integer IO MatchData Method Module NilClass Numeric Object Proc Range Regexp String Struct::TMS Symbol ' +
|
10
|
+
'ThreadGroup Thread Time TrueClass'
|
11
|
+
|
12
|
+
this.regexList = [
|
13
|
+
{ regex: dp.sh.RegexLib.SingleLinePerlComments, css: 'comment' }, // one line comments
|
14
|
+
{ regex: dp.sh.RegexLib.DoubleQuotedString, css: 'string' }, // double quoted strings
|
15
|
+
{ regex: dp.sh.RegexLib.SingleQuotedString, css: 'string' }, // single quoted strings
|
16
|
+
{ regex: new RegExp(':[a-z][A-Za-z0-9_]*', 'g'), css: 'symbol' }, // symbols
|
17
|
+
{ regex: new RegExp('(\\$|@@|@)\\w+', 'g'), css: 'variable' }, // $global, @instance, and @@class variables
|
18
|
+
{ regex: new RegExp(this.GetKeywords(keywords), 'gm'), css: 'keyword' }, // keywords
|
19
|
+
{ regex: new RegExp(this.GetKeywords(builtins), 'gm'), css: 'builtin' } // builtins
|
20
|
+
];
|
21
|
+
|
22
|
+
this.CssClass = 'dp-rb';
|
23
|
+
this.Style = '.dp-rb .symbol { color: #a70; }' +
|
24
|
+
'.dp-rb .variable { color: #a70; font-weight: bold; }';
|
25
|
+
}
|
26
|
+
|
27
|
+
dp.sh.Brushes.Ruby.prototype = new dp.sh.Highlighter();
|
28
|
+
dp.sh.Brushes.Ruby.Aliases = ['ruby', 'rails', 'ror'];
|
@@ -0,0 +1,42 @@
|
|
1
|
+
dp.sh.Brushes.Sql = function()
|
2
|
+
{
|
3
|
+
var funcs = 'abs avg case cast coalesce convert count current_timestamp ' +
|
4
|
+
'current_user day isnull left lower month nullif replace right ' +
|
5
|
+
'session_user space substring sum system_user upper user year';
|
6
|
+
|
7
|
+
var keywords = 'absolute action add after alter as asc at authorization begin bigint ' +
|
8
|
+
'binary bit by cascade char character check checkpoint close collate ' +
|
9
|
+
'column commit committed connect connection constraint contains continue ' +
|
10
|
+
'create cube current current_date current_time cursor database date ' +
|
11
|
+
'deallocate dec decimal declare default delete desc distinct double drop ' +
|
12
|
+
'dynamic else end end-exec escape except exec execute false fetch first ' +
|
13
|
+
'float for force foreign forward free from full function global goto grant ' +
|
14
|
+
'group grouping having hour ignore index inner insensitive insert instead ' +
|
15
|
+
'int integer intersect into is isolation key last level load local max min ' +
|
16
|
+
'minute modify move name national nchar next no numeric of off on only ' +
|
17
|
+
'open option order out output partial password precision prepare primary ' +
|
18
|
+
'prior privileges procedure public read real references relative repeatable ' +
|
19
|
+
'restrict return returns revoke rollback rollup rows rule schema scroll ' +
|
20
|
+
'second section select sequence serializable set size smallint static ' +
|
21
|
+
'statistics table temp temporary then time timestamp to top transaction ' +
|
22
|
+
'translation trigger true truncate uncommitted union unique update values ' +
|
23
|
+
'varchar varying view when where with work';
|
24
|
+
|
25
|
+
var operators = 'all and any between cross in join like not null or outer some';
|
26
|
+
|
27
|
+
this.regexList = [
|
28
|
+
{ regex: new RegExp('--(.*)$', 'gm'), css: 'comment' }, // one line and multiline comments
|
29
|
+
{ regex: dp.sh.RegexLib.DoubleQuotedString, css: 'string' }, // double quoted strings
|
30
|
+
{ regex: dp.sh.RegexLib.SingleQuotedString, css: 'string' }, // single quoted strings
|
31
|
+
{ regex: new RegExp(this.GetKeywords(funcs), 'gmi'), css: 'func' }, // functions
|
32
|
+
{ regex: new RegExp(this.GetKeywords(operators), 'gmi'), css: 'op' }, // operators and such
|
33
|
+
{ regex: new RegExp(this.GetKeywords(keywords), 'gmi'), css: 'keyword' } // keyword
|
34
|
+
];
|
35
|
+
|
36
|
+
this.CssClass = 'dp-sql';
|
37
|
+
this.Style = '.dp-sql .func { color: #ff1493; }' +
|
38
|
+
'.dp-sql .op { color: #808080; }';
|
39
|
+
}
|
40
|
+
|
41
|
+
dp.sh.Brushes.Sql.prototype = new dp.sh.Highlighter();
|
42
|
+
dp.sh.Brushes.Sql.Aliases = ['sql'];
|
@@ -0,0 +1,29 @@
|
|
1
|
+
dp.sh.Brushes.Vb = function()
|
2
|
+
{
|
3
|
+
var keywords = 'AddHandler AddressOf AndAlso Alias And Ansi As Assembly Auto ' +
|
4
|
+
'Boolean ByRef Byte ByVal Call Case Catch CBool CByte CChar CDate ' +
|
5
|
+
'CDec CDbl Char CInt Class CLng CObj Const CShort CSng CStr CType ' +
|
6
|
+
'Date Decimal Declare Default Delegate Dim DirectCast Do Double Each ' +
|
7
|
+
'Else ElseIf End Enum Erase Error Event Exit False Finally For Friend ' +
|
8
|
+
'Function Get GetType GoSub GoTo Handles If Implements Imports In ' +
|
9
|
+
'Inherits Integer Interface Is Let Lib Like Long Loop Me Mod Module ' +
|
10
|
+
'MustInherit MustOverride MyBase MyClass Namespace New Next Not Nothing ' +
|
11
|
+
'NotInheritable NotOverridable Object On Option Optional Or OrElse ' +
|
12
|
+
'Overloads Overridable Overrides ParamArray Preserve Private Property ' +
|
13
|
+
'Protected Public RaiseEvent ReadOnly ReDim REM RemoveHandler Resume ' +
|
14
|
+
'Return Select Set Shadows Shared Short Single Static Step Stop String ' +
|
15
|
+
'Structure Sub SyncLock Then Throw To True Try TypeOf Unicode Until ' +
|
16
|
+
'Variant When While With WithEvents WriteOnly Xor';
|
17
|
+
|
18
|
+
this.regexList = [
|
19
|
+
{ regex: new RegExp('\'.*$', 'gm'), css: 'comment' }, // one line comments
|
20
|
+
{ regex: dp.sh.RegexLib.DoubleQuotedString, css: 'string' }, // strings
|
21
|
+
{ regex: new RegExp('^\\s*#.*', 'gm'), css: 'preprocessor' }, // preprocessor tags like #region and #endregion
|
22
|
+
{ regex: new RegExp(this.GetKeywords(keywords), 'gm'), css: 'keyword' } // c# keyword
|
23
|
+
];
|
24
|
+
|
25
|
+
this.CssClass = 'dp-vb';
|
26
|
+
}
|
27
|
+
|
28
|
+
dp.sh.Brushes.Vb.prototype = new dp.sh.Highlighter();
|
29
|
+
dp.sh.Brushes.Vb.Aliases = ['vb', 'vb.net'];
|
@@ -0,0 +1,70 @@
|
|
1
|
+
dp.sh.Brushes.Xml = function()
|
2
|
+
{
|
3
|
+
this.CssClass = 'dp-xml';
|
4
|
+
this.Style = '.dp-xml .cdata { color: #ff1493; }' +
|
5
|
+
'.dp-xml .tag, .dp-xml .tag-name { color: #069; font-weight: bold; }' +
|
6
|
+
'.dp-xml .attribute { color: red; }' +
|
7
|
+
'.dp-xml .attribute-value { color: blue; }';
|
8
|
+
}
|
9
|
+
|
10
|
+
dp.sh.Brushes.Xml.prototype = new dp.sh.Highlighter();
|
11
|
+
dp.sh.Brushes.Xml.Aliases = ['xml', 'xhtml', 'xslt', 'html', 'xhtml'];
|
12
|
+
|
13
|
+
dp.sh.Brushes.Xml.prototype.ProcessRegexList = function()
|
14
|
+
{
|
15
|
+
function push(array, value)
|
16
|
+
{
|
17
|
+
array[array.length] = value;
|
18
|
+
}
|
19
|
+
|
20
|
+
/* If only there was a way to get index of a group within a match, the whole XML
|
21
|
+
could be matched with the expression looking something like that:
|
22
|
+
|
23
|
+
(<!\[CDATA\[\s*.*\s*\]\]>)
|
24
|
+
| (<!--\s*.*\s*?-->)
|
25
|
+
| (<)*(\w+)*\s*(\w+)\s*=\s*(".*?"|'.*?'|\w+)(/*>)*
|
26
|
+
| (</?)(.*?)(/?>)
|
27
|
+
*/
|
28
|
+
var index = 0;
|
29
|
+
var match = null;
|
30
|
+
var regex = null;
|
31
|
+
|
32
|
+
// Match CDATA in the following format <![ ... [ ... ]]>
|
33
|
+
// (\<|<)\!\[[\w\s]*?\[(.|\s)*?\]\](\>|>)
|
34
|
+
this.GetMatches(new RegExp('(\<|<)\\!\\[[\\w\\s]*?\\[(.|\\s)*?\\]\\](\>|>)', 'gm'), 'cdata');
|
35
|
+
|
36
|
+
// Match comments
|
37
|
+
// (\<|<)!--\s*.*\s*?--(\>|>)
|
38
|
+
this.GetMatches(new RegExp('(\<|<)!--\\s*.*\\s*?--(\>|>)', 'gm'), 'comments');
|
39
|
+
|
40
|
+
// Match attributes and their values
|
41
|
+
// (:|\w+)\s*=\s*(".*?"|\'.*?\'|\w+)*
|
42
|
+
regex = new RegExp('([:\\w-\.]+)\\s*=\\s*(".*?"|\'.*?\'|\\w+)*|(\\w+)', 'gm'); // Thanks to Tomi Blinnikka of Yahoo! for fixing namespaces in attributes
|
43
|
+
while((match = regex.exec(this.code)) != null)
|
44
|
+
{
|
45
|
+
if(match[1] == null)
|
46
|
+
{
|
47
|
+
continue;
|
48
|
+
}
|
49
|
+
|
50
|
+
push(this.matches, new dp.sh.Match(match[1], match.index, 'attribute'));
|
51
|
+
|
52
|
+
// if xml is invalid and attribute has no property value, ignore it
|
53
|
+
if(match[2] != undefined)
|
54
|
+
{
|
55
|
+
push(this.matches, new dp.sh.Match(match[2], match.index + match[0].indexOf(match[2]), 'attribute-value'));
|
56
|
+
}
|
57
|
+
}
|
58
|
+
|
59
|
+
// Match opening and closing tag brackets
|
60
|
+
// (\<|<)/*\?*(?!\!)|/*\?*(\>|>)
|
61
|
+
this.GetMatches(new RegExp('(\<|<)/*\\?*(?!\\!)|/*\\?*(\>|>)', 'gm'), 'tag');
|
62
|
+
|
63
|
+
// Match tag names
|
64
|
+
// (\<|<)/*\?*\s*(\w+)
|
65
|
+
regex = new RegExp('(?:\<|<)/*\\?*\\s*([:\\w-\.]+)', 'gm');
|
66
|
+
while((match = regex.exec(this.code)) != null)
|
67
|
+
{
|
68
|
+
push(this.matches, new dp.sh.Match(match[1], match.index + match[0].indexOf(match[1]), 'tag-name'));
|
69
|
+
}
|
70
|
+
}
|
@@ -0,0 +1,414 @@
|
|
1
|
+
var dp={sh:{Toolbar:{},Utils:{},RegexLib:{},Brushes:{},Strings:{AboutDialog:"<html><head><title>About...</title></head><body class=\"dp-about\"><table cellspacing=\"0\"><tr><td class=\"copy\"><p class=\"title\">dp.SyntaxHighlighter</div><div class=\"para\">Version: {V}</p><p><a href=\"http://www.dreamprojections.com/syntaxhighlighter/?ref=about\" target=\"_blank\">http://www.dreamprojections.com/syntaxhighlighter</a></p>©2004-2007 Alex Gorbatchev.</td></tr><tr><td class=\"footer\"><input type=\"button\" class=\"close\" value=\"OK\" onClick=\"window.close()\"/></td></tr></table></body></html>"},ClipboardSwf:null,Version:"1.5"}};
|
2
|
+
dp.SyntaxHighlighter=dp.sh;
|
3
|
+
dp.sh.Toolbar.Commands={ExpandSource:{label:"+ expand source",check:function(_1){
|
4
|
+
return _1.collapse;
|
5
|
+
},func:function(_2,_3){
|
6
|
+
_2.parentNode.removeChild(_2);
|
7
|
+
_3.div.className=_3.div.className.replace("collapsed","");
|
8
|
+
}},ViewSource:{label:"view plain",func:function(_4,_5){
|
9
|
+
var _6=_5.originalCode.replace(/</g,"<");
|
10
|
+
var _7=window.open("","_blank","width=750, height=400, location=0, resizable=1, menubar=0, scrollbars=0");
|
11
|
+
_7.document.write("<textarea style=\"width:99%;height:99%\">"+_6+"</textarea>");
|
12
|
+
_7.document.close();
|
13
|
+
}},CopyToClipboard:{label:"copy to clipboard",check:function(){
|
14
|
+
return window.clipboardData!=null||dp.sh.ClipboardSwf!=null;
|
15
|
+
},func:function(_8,_9){
|
16
|
+
var _a=_9.originalCode;
|
17
|
+
if(window.clipboardData){
|
18
|
+
window.clipboardData.setData("text",_a);
|
19
|
+
}else{
|
20
|
+
if(dp.sh.ClipboardSwf!=null){
|
21
|
+
var _b=_9.flashCopier;
|
22
|
+
if(_b==null){
|
23
|
+
_b=document.createElement("div");
|
24
|
+
_9.flashCopier=_b;
|
25
|
+
_9.div.appendChild(_b);
|
26
|
+
}
|
27
|
+
_b.innerHTML="<embed src=\""+dp.sh.ClipboardSwf+"\" FlashVars=\"clipboard="+encodeURIComponent(_a)+"\" width=\"0\" height=\"0\" type=\"application/x-shockwave-flash\"></embed>";
|
28
|
+
}
|
29
|
+
}
|
30
|
+
alert("The code is in your clipboard now");
|
31
|
+
}},PrintSource:{label:"print",func:function(_c,_d){
|
32
|
+
var _e=document.createElement("IFRAME");
|
33
|
+
var _f=null;
|
34
|
+
_e.style.cssText="position:absolute;width:0px;height:0px;left:-500px;top:-500px;";
|
35
|
+
document.body.appendChild(_e);
|
36
|
+
_f=_e.contentWindow.document;
|
37
|
+
dp.sh.Utils.CopyStyles(_f,window.document);
|
38
|
+
_f.write("<div class=\""+_d.div.className.replace("collapsed","")+" printing\">"+_d.div.innerHTML+"</div>");
|
39
|
+
_f.close();
|
40
|
+
_e.contentWindow.focus();
|
41
|
+
_e.contentWindow.print();
|
42
|
+
alert("Printing...");
|
43
|
+
document.body.removeChild(_e);
|
44
|
+
}},About:{label:"?",func:function(_10){
|
45
|
+
var wnd=window.open("","_blank","dialog,width=300,height=150,scrollbars=0");
|
46
|
+
var doc=wnd.document;
|
47
|
+
dp.sh.Utils.CopyStyles(doc,window.document);
|
48
|
+
doc.write(dp.sh.Strings.AboutDialog.replace("{V}",dp.sh.Version));
|
49
|
+
doc.close();
|
50
|
+
wnd.focus();
|
51
|
+
}}};
|
52
|
+
dp.sh.Toolbar.Create=function(_13){
|
53
|
+
var div=document.createElement("DIV");
|
54
|
+
div.className="tools";
|
55
|
+
for(var _15 in dp.sh.Toolbar.Commands){
|
56
|
+
var cmd=dp.sh.Toolbar.Commands[_15];
|
57
|
+
if(cmd.check!=null&&!cmd.check(_13)){
|
58
|
+
continue;
|
59
|
+
}
|
60
|
+
div.innerHTML+="<a href=\"#\" onclick=\"dp.sh.Toolbar.Command('"+_15+"',this);return false;\">"+cmd.label+"</a>";
|
61
|
+
}
|
62
|
+
return div;
|
63
|
+
};
|
64
|
+
dp.sh.Toolbar.Command=function(_17,_18){
|
65
|
+
var n=_18;
|
66
|
+
while(n!=null&&n.className.indexOf("dp-highlighter")==-1){
|
67
|
+
n=n.parentNode;
|
68
|
+
}
|
69
|
+
if(n!=null){
|
70
|
+
dp.sh.Toolbar.Commands[_17].func(_18,n.highlighter);
|
71
|
+
}
|
72
|
+
};
|
73
|
+
dp.sh.Utils.CopyStyles=function(_1a,_1b){
|
74
|
+
var _1c=_1b.getElementsByTagName("link");
|
75
|
+
for(var i=0;i<_1c.length;i++){
|
76
|
+
if(_1c[i].rel.toLowerCase()=="stylesheet"){
|
77
|
+
_1a.write("<link type=\"text/css\" rel=\"stylesheet\" href=\""+_1c[i].href+"\"></link>");
|
78
|
+
}
|
79
|
+
}
|
80
|
+
};
|
81
|
+
dp.sh.RegexLib={MultiLineCComments:new RegExp("/\\*[\\s\\S]*?\\*/","gm"),SingleLineCComments:new RegExp("//.*$","gm"),SingleLinePerlComments:new RegExp("#.*$","gm"),DoubleQuotedString:new RegExp("\"(?:\\.|(\\\\\\\")|[^\\\"\"])*\"","g"),SingleQuotedString:new RegExp("'(?:\\.|(\\\\\\')|[^\\''])*'","g")};
|
82
|
+
dp.sh.Match=function(_1e,_1f,css){
|
83
|
+
this.value=_1e;
|
84
|
+
this.index=_1f;
|
85
|
+
this.length=_1e.length;
|
86
|
+
this.css=css;
|
87
|
+
};
|
88
|
+
dp.sh.Highlighter=function(){
|
89
|
+
this.noGutter=false;
|
90
|
+
this.addControls=true;
|
91
|
+
this.collapse=false;
|
92
|
+
this.tabsToSpaces=true;
|
93
|
+
this.wrapColumn=80;
|
94
|
+
this.showColumns=true;
|
95
|
+
};
|
96
|
+
dp.sh.Highlighter.SortCallback=function(m1,m2){
|
97
|
+
if(m1.index<m2.index){
|
98
|
+
return -1;
|
99
|
+
}else{
|
100
|
+
if(m1.index>m2.index){
|
101
|
+
return 1;
|
102
|
+
}else{
|
103
|
+
if(m1.length<m2.length){
|
104
|
+
return -1;
|
105
|
+
}else{
|
106
|
+
if(m1.length>m2.length){
|
107
|
+
return 1;
|
108
|
+
}
|
109
|
+
}
|
110
|
+
}
|
111
|
+
}
|
112
|
+
return 0;
|
113
|
+
};
|
114
|
+
dp.sh.Highlighter.prototype.CreateElement=function(_23){
|
115
|
+
var _24=document.createElement(_23);
|
116
|
+
_24.highlighter=this;
|
117
|
+
return _24;
|
118
|
+
};
|
119
|
+
dp.sh.Highlighter.prototype.GetMatches=function(_25,css){
|
120
|
+
var _27=0;
|
121
|
+
var _28=null;
|
122
|
+
while((_28=_25.exec(this.code))!=null){
|
123
|
+
this.matches[this.matches.length]=new dp.sh.Match(_28[0],_28.index,css);
|
124
|
+
}
|
125
|
+
};
|
126
|
+
dp.sh.Highlighter.prototype.AddBit=function(str,css){
|
127
|
+
if(str==null||str.length==0){
|
128
|
+
return;
|
129
|
+
}
|
130
|
+
var _2b=this.CreateElement("SPAN");
|
131
|
+
str=str.replace(/ /g," ");
|
132
|
+
str=str.replace(/</g,"<");
|
133
|
+
str=str.replace(/\n/gm," <br>");
|
134
|
+
if(css!=null){
|
135
|
+
if((/br/gi).test(str)){
|
136
|
+
var _2c=str.split(" <br>");
|
137
|
+
for(var i=0;i<_2c.length;i++){
|
138
|
+
_2b=this.CreateElement("SPAN");
|
139
|
+
_2b.className=css;
|
140
|
+
_2b.innerHTML=_2c[i];
|
141
|
+
this.div.appendChild(_2b);
|
142
|
+
if(i+1<_2c.length){
|
143
|
+
this.div.appendChild(this.CreateElement("BR"));
|
144
|
+
}
|
145
|
+
}
|
146
|
+
}else{
|
147
|
+
_2b.className=css;
|
148
|
+
_2b.innerHTML=str;
|
149
|
+
this.div.appendChild(_2b);
|
150
|
+
}
|
151
|
+
}else{
|
152
|
+
_2b.innerHTML=str;
|
153
|
+
this.div.appendChild(_2b);
|
154
|
+
}
|
155
|
+
};
|
156
|
+
dp.sh.Highlighter.prototype.IsInside=function(_2e){
|
157
|
+
if(_2e==null||_2e.length==0){
|
158
|
+
return false;
|
159
|
+
}
|
160
|
+
for(var i=0;i<this.matches.length;i++){
|
161
|
+
var c=this.matches[i];
|
162
|
+
if(c==null){
|
163
|
+
continue;
|
164
|
+
}
|
165
|
+
if((_2e.index>c.index)&&(_2e.index<c.index+c.length)){
|
166
|
+
return true;
|
167
|
+
}
|
168
|
+
}
|
169
|
+
return false;
|
170
|
+
};
|
171
|
+
dp.sh.Highlighter.prototype.ProcessRegexList=function(){
|
172
|
+
for(var i=0;i<this.regexList.length;i++){
|
173
|
+
this.GetMatches(this.regexList[i].regex,this.regexList[i].css);
|
174
|
+
}
|
175
|
+
};
|
176
|
+
dp.sh.Highlighter.prototype.ProcessSmartTabs=function(_32){
|
177
|
+
var _33=_32.split("\n");
|
178
|
+
var _34="";
|
179
|
+
var _35=4;
|
180
|
+
var tab="\t";
|
181
|
+
function InsertSpaces(_37,pos,_39){
|
182
|
+
var _3a=_37.substr(0,pos);
|
183
|
+
var _3b=_37.substr(pos+1,_37.length);
|
184
|
+
var _3c="";
|
185
|
+
for(var i=0;i<_39;i++){
|
186
|
+
_3c+=" ";
|
187
|
+
}
|
188
|
+
return _3a+_3c+_3b;
|
189
|
+
}
|
190
|
+
function ProcessLine(_3e,_3f){
|
191
|
+
if(_3e.indexOf(tab)==-1){
|
192
|
+
return _3e;
|
193
|
+
}
|
194
|
+
var pos=0;
|
195
|
+
while((pos=_3e.indexOf(tab))!=-1){
|
196
|
+
var _41=_3f-pos%_3f;
|
197
|
+
_3e=InsertSpaces(_3e,pos,_41);
|
198
|
+
}
|
199
|
+
return _3e;
|
200
|
+
}
|
201
|
+
for(var i=0;i<_33.length;i++){
|
202
|
+
_34+=ProcessLine(_33[i],_35)+"\n";
|
203
|
+
}
|
204
|
+
return _34;
|
205
|
+
};
|
206
|
+
dp.sh.Highlighter.prototype.SwitchToList=function(){
|
207
|
+
var _43=this.div.innerHTML.replace(/<(br)\/?>/gi,"\n");
|
208
|
+
var _44=_43.split("\n");
|
209
|
+
if(this.addControls==true){
|
210
|
+
this.bar.appendChild(dp.sh.Toolbar.Create(this));
|
211
|
+
}
|
212
|
+
if(this.showColumns){
|
213
|
+
var div=this.CreateElement("div");
|
214
|
+
var _46=this.CreateElement("div");
|
215
|
+
var _47=10;
|
216
|
+
var i=1;
|
217
|
+
while(i<=150){
|
218
|
+
if(i%_47==0){
|
219
|
+
div.innerHTML+=i;
|
220
|
+
i+=(i+"").length;
|
221
|
+
}else{
|
222
|
+
div.innerHTML+="·";
|
223
|
+
i++;
|
224
|
+
}
|
225
|
+
}
|
226
|
+
_46.className="columns";
|
227
|
+
_46.appendChild(div);
|
228
|
+
this.bar.appendChild(_46);
|
229
|
+
}
|
230
|
+
for(var i=0,lineIndex=this.firstLine;i<_44.length-1;i++,lineIndex++){
|
231
|
+
var li=this.CreateElement("LI");
|
232
|
+
var _4b=this.CreateElement("SPAN");
|
233
|
+
li.className=(i%2==0)?"alt":"";
|
234
|
+
_4b.innerHTML=_44[i]+" ";
|
235
|
+
li.appendChild(_4b);
|
236
|
+
this.ol.appendChild(li);
|
237
|
+
}
|
238
|
+
this.div.innerHTML="";
|
239
|
+
};
|
240
|
+
dp.sh.Highlighter.prototype.Highlight=function(_4c){
|
241
|
+
function Trim(str){
|
242
|
+
return str.replace(/^\s*(.*?)[\s\n]*$/g,"$1");
|
243
|
+
}
|
244
|
+
function Chop(str){
|
245
|
+
return str.replace(/\n*$/,"").replace(/^\n*/,"");
|
246
|
+
}
|
247
|
+
function Unindent(str){
|
248
|
+
var _50=str.split("\n");
|
249
|
+
var _51=new Array();
|
250
|
+
var _52=new RegExp("^\\s*","g");
|
251
|
+
var min=1000;
|
252
|
+
for(var i=0;i<_50.length&&min>0;i++){
|
253
|
+
if(Trim(_50[i]).length==0){
|
254
|
+
continue;
|
255
|
+
}
|
256
|
+
var _55=_52.exec(_50[i]);
|
257
|
+
if(_55!=null&&_55.length>0){
|
258
|
+
min=Math.min(_55[0].length,min);
|
259
|
+
}
|
260
|
+
}
|
261
|
+
if(min>0){
|
262
|
+
for(var i=0;i<_50.length;i++){
|
263
|
+
_50[i]=_50[i].substr(min);
|
264
|
+
}
|
265
|
+
}
|
266
|
+
return _50.join("\n");
|
267
|
+
}
|
268
|
+
function Copy(_57,_58,_59){
|
269
|
+
return _57.substr(_58,_59-_58);
|
270
|
+
}
|
271
|
+
var pos=0;
|
272
|
+
if(_4c==null){
|
273
|
+
_4c="";
|
274
|
+
}
|
275
|
+
this.originalCode=_4c;
|
276
|
+
this.code=Chop(Unindent(_4c));
|
277
|
+
this.div=this.CreateElement("DIV");
|
278
|
+
this.bar=this.CreateElement("DIV");
|
279
|
+
this.ol=this.CreateElement("OL");
|
280
|
+
this.matches=new Array();
|
281
|
+
this.div.className="dp-highlighter";
|
282
|
+
this.div.highlighter=this;
|
283
|
+
this.bar.className="bar";
|
284
|
+
this.ol.start=this.firstLine;
|
285
|
+
if(this.CssClass!=null){
|
286
|
+
this.ol.className=this.CssClass;
|
287
|
+
}
|
288
|
+
if(this.collapse){
|
289
|
+
this.div.className+=" collapsed";
|
290
|
+
}
|
291
|
+
if(this.noGutter){
|
292
|
+
this.div.className+=" nogutter";
|
293
|
+
}
|
294
|
+
if(this.tabsToSpaces==true){
|
295
|
+
this.code=this.ProcessSmartTabs(this.code);
|
296
|
+
}
|
297
|
+
this.ProcessRegexList();
|
298
|
+
if(this.matches.length==0){
|
299
|
+
this.AddBit(this.code,null);
|
300
|
+
this.SwitchToList();
|
301
|
+
this.div.appendChild(this.ol);
|
302
|
+
return;
|
303
|
+
}
|
304
|
+
this.matches=this.matches.sort(dp.sh.Highlighter.SortCallback);
|
305
|
+
for(var i=0;i<this.matches.length;i++){
|
306
|
+
if(this.IsInside(this.matches[i])){
|
307
|
+
this.matches[i]=null;
|
308
|
+
}
|
309
|
+
}
|
310
|
+
for(var i=0;i<this.matches.length;i++){
|
311
|
+
var _5d=this.matches[i];
|
312
|
+
if(_5d==null||_5d.length==0){
|
313
|
+
continue;
|
314
|
+
}
|
315
|
+
this.AddBit(Copy(this.code,pos,_5d.index),null);
|
316
|
+
this.AddBit(_5d.value,_5d.css);
|
317
|
+
pos=_5d.index+_5d.length;
|
318
|
+
}
|
319
|
+
this.AddBit(this.code.substr(pos),null);
|
320
|
+
this.SwitchToList();
|
321
|
+
this.div.appendChild(this.bar);
|
322
|
+
this.div.appendChild(this.ol);
|
323
|
+
};
|
324
|
+
dp.sh.Highlighter.prototype.GetKeywords=function(str){
|
325
|
+
return "\\b"+str.replace(/ /g,"\\b|\\b")+"\\b";
|
326
|
+
};
|
327
|
+
dp.sh.HighlightAll=function(_5f,_60,_61,_62,_63,_64){
|
328
|
+
function FindValue(){
|
329
|
+
var a=arguments;
|
330
|
+
for(var i=0;i<a.length;i++){
|
331
|
+
if(a[i]==null){
|
332
|
+
continue;
|
333
|
+
}
|
334
|
+
if(typeof (a[i])=="string"&&a[i]!=""){
|
335
|
+
return a[i]+"";
|
336
|
+
}
|
337
|
+
if(typeof (a[i])=="object"&&a[i].value!=""){
|
338
|
+
return a[i].value+"";
|
339
|
+
}
|
340
|
+
}
|
341
|
+
return null;
|
342
|
+
}
|
343
|
+
function IsOptionSet(_67,_68){
|
344
|
+
for(var i=0;i<_68.length;i++){
|
345
|
+
if(_68[i]==_67){
|
346
|
+
return true;
|
347
|
+
}
|
348
|
+
}
|
349
|
+
return false;
|
350
|
+
}
|
351
|
+
function GetOptionValue(_6a,_6b,_6c){
|
352
|
+
var _6d=new RegExp("^"+_6a+"\\[(\\w+)\\]$","gi");
|
353
|
+
var _6e=null;
|
354
|
+
for(var i=0;i<_6b.length;i++){
|
355
|
+
if((_6e=_6d.exec(_6b[i]))!=null){
|
356
|
+
return _6e[1];
|
357
|
+
}
|
358
|
+
}
|
359
|
+
return _6c;
|
360
|
+
}
|
361
|
+
function FindTagsByName(_70,_71,_72){
|
362
|
+
var _73=document.getElementsByTagName(_72);
|
363
|
+
for(var i=0;i<_73.length;i++){
|
364
|
+
if(_73[i].getAttribute("name")==_71){
|
365
|
+
_70.push(_73[i]);
|
366
|
+
}
|
367
|
+
}
|
368
|
+
}
|
369
|
+
var _75=[];
|
370
|
+
var _76=null;
|
371
|
+
var _77={};
|
372
|
+
var _78="innerHTML";
|
373
|
+
FindTagsByName(_75,_5f,"pre");
|
374
|
+
FindTagsByName(_75,_5f,"textarea");
|
375
|
+
if(_75.length==0){
|
376
|
+
return;
|
377
|
+
}
|
378
|
+
for(var _79 in dp.sh.Brushes){
|
379
|
+
var _7a=dp.sh.Brushes[_79].Aliases;
|
380
|
+
if(_7a==null){
|
381
|
+
continue;
|
382
|
+
}
|
383
|
+
for(var i=0;i<_7a.length;i++){
|
384
|
+
_77[_7a[i]]=_79;
|
385
|
+
}
|
386
|
+
}
|
387
|
+
for(var i=0;i<_75.length;i++){
|
388
|
+
var _7d=_75[i];
|
389
|
+
var _7e=FindValue(_7d.attributes["class"],_7d.className,_7d.attributes["language"],_7d.language);
|
390
|
+
var _7f="";
|
391
|
+
if(_7e==null){
|
392
|
+
continue;
|
393
|
+
}
|
394
|
+
_7e=_7e.split(":");
|
395
|
+
_7f=_7e[0].toLowerCase();
|
396
|
+
if(_77[_7f]==null){
|
397
|
+
continue;
|
398
|
+
}
|
399
|
+
_76=new dp.sh.Brushes[_77[_7f]]();
|
400
|
+
_7d.style.display="none";
|
401
|
+
_76.noGutter=(_60==null)?IsOptionSet("nogutter",_7e):!_60;
|
402
|
+
_76.addControls=(_61==null)?!IsOptionSet("nocontrols",_7e):_61;
|
403
|
+
_76.collapse=(_62==null)?IsOptionSet("collapse",_7e):_62;
|
404
|
+
_76.showColumns=(_64==null)?IsOptionSet("showcolumns",_7e):_64;
|
405
|
+
if(_76.Style){
|
406
|
+
document.write("<style>"+_76.Style+"</style>");
|
407
|
+
}
|
408
|
+
_76.firstLine=(_63==null)?parseInt(GetOptionValue("firstline",_7e,1)):_63;
|
409
|
+
_76.Highlight(_7d[_78]);
|
410
|
+
_76.source=_7d;
|
411
|
+
_7d.parentNode.insertBefore(_76.div,_7d);
|
412
|
+
}
|
413
|
+
};
|
414
|
+
|