coderay 1.0.0 → 1.0.0.598.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (79) hide show
  1. data/FOLDERS +49 -0
  2. data/Rakefile +6 -5
  3. data/bin/coderay +74 -190
  4. data/bin/coderay_stylesheet +4 -0
  5. data/{README_INDEX.rdoc → lib/README} +20 -10
  6. data/lib/coderay.rb +60 -62
  7. data/lib/coderay/duo.rb +55 -2
  8. data/lib/coderay/encoder.rb +39 -52
  9. data/lib/coderay/encoders/_map.rb +7 -11
  10. data/lib/coderay/encoders/comment_filter.rb +61 -0
  11. data/lib/coderay/encoders/count.rb +26 -11
  12. data/lib/coderay/encoders/debug.rb +60 -11
  13. data/lib/coderay/encoders/div.rb +8 -9
  14. data/lib/coderay/encoders/filter.rb +52 -12
  15. data/lib/coderay/encoders/html.rb +113 -106
  16. data/lib/coderay/encoders/html/css.rb +7 -2
  17. data/lib/coderay/encoders/html/numbering.rb +27 -24
  18. data/lib/coderay/encoders/html/output.rb +58 -15
  19. data/lib/coderay/encoders/json.rb +44 -37
  20. data/lib/coderay/encoders/lines_of_code.rb +56 -9
  21. data/lib/coderay/encoders/null.rb +13 -6
  22. data/lib/coderay/encoders/page.rb +8 -8
  23. data/lib/coderay/encoders/span.rb +9 -10
  24. data/lib/coderay/encoders/statistic.rb +114 -51
  25. data/lib/coderay/encoders/terminal.rb +10 -7
  26. data/lib/coderay/encoders/text.rb +36 -17
  27. data/lib/coderay/encoders/token_kind_filter.rb +58 -1
  28. data/lib/coderay/encoders/xml.rb +11 -13
  29. data/lib/coderay/encoders/yaml.rb +14 -16
  30. data/lib/coderay/for_redcloth.rb +1 -1
  31. data/lib/coderay/helpers/file_type.rb +240 -125
  32. data/lib/coderay/helpers/gzip_simple.rb +123 -0
  33. data/lib/coderay/helpers/plugin.rb +307 -241
  34. data/lib/coderay/helpers/word_list.rb +126 -65
  35. data/lib/coderay/scanner.rb +103 -153
  36. data/lib/coderay/scanners/_map.rb +16 -18
  37. data/lib/coderay/scanners/c.rb +13 -13
  38. data/lib/coderay/scanners/cpp.rb +6 -6
  39. data/lib/coderay/scanners/css.rb +48 -47
  40. data/lib/coderay/scanners/debug.rb +55 -9
  41. data/lib/coderay/scanners/delphi.rb +4 -4
  42. data/lib/coderay/scanners/diff.rb +25 -43
  43. data/lib/coderay/scanners/groovy.rb +2 -2
  44. data/lib/coderay/scanners/html.rb +30 -107
  45. data/lib/coderay/scanners/java.rb +5 -6
  46. data/lib/coderay/scanners/java/builtin_types.rb +0 -2
  47. data/lib/coderay/scanners/java_script.rb +6 -6
  48. data/lib/coderay/scanners/json.rb +6 -7
  49. data/lib/coderay/scanners/nitro_xhtml.rb +136 -0
  50. data/lib/coderay/scanners/php.rb +12 -13
  51. data/lib/coderay/scanners/plaintext.rb +26 -0
  52. data/lib/coderay/scanners/python.rb +4 -4
  53. data/lib/coderay/scanners/{erb.rb → rhtml.rb} +11 -19
  54. data/lib/coderay/scanners/ruby.rb +208 -219
  55. data/lib/coderay/scanners/ruby/patterns.rb +85 -18
  56. data/lib/coderay/scanners/scheme.rb +136 -0
  57. data/lib/coderay/scanners/sql.rb +22 -29
  58. data/lib/coderay/scanners/yaml.rb +10 -11
  59. data/lib/coderay/styles/_map.rb +2 -2
  60. data/lib/coderay/styles/alpha.rb +104 -102
  61. data/lib/coderay/styles/cycnus.rb +143 -0
  62. data/lib/coderay/styles/murphy.rb +123 -0
  63. data/lib/coderay/token_kinds.rb +86 -87
  64. data/lib/coderay/tokens.rb +169 -26
  65. data/test/functional/basic.rb +14 -200
  66. data/test/functional/examples.rb +14 -20
  67. data/test/functional/for_redcloth.rb +8 -15
  68. data/test/functional/load_plugin_scanner.rb +11 -0
  69. data/test/functional/suite.rb +6 -9
  70. data/test/functional/vhdl.rb +126 -0
  71. data/test/functional/word_list.rb +79 -0
  72. metadata +129 -107
  73. data/lib/coderay/helpers/gzip.rb +0 -41
  74. data/lib/coderay/scanners/clojure.rb +0 -217
  75. data/lib/coderay/scanners/haml.rb +0 -168
  76. data/lib/coderay/scanners/ruby/string_state.rb +0 -71
  77. data/lib/coderay/scanners/text.rb +0 -26
  78. data/lib/coderay/tokens_proxy.rb +0 -55
  79. data/lib/coderay/version.rb +0 -3
@@ -1,7 +1,7 @@
1
1
  module CodeRay
2
2
  module Styles
3
-
3
+
4
4
  default :alpha
5
-
5
+
6
6
  end
7
7
  end
@@ -6,135 +6,137 @@ module Styles
6
6
 
7
7
  register_for :alpha
8
8
 
9
- code_background = 'hsl(0,0%,95%)'
10
- numbers_background = 'hsl(180,65%,90%)'
9
+ code_background = '#f8f8f8'
10
+ numbers_background = '#def'
11
11
  border_color = 'silver'
12
- normal_color = 'black'
12
+ normal_color = '#000'
13
13
 
14
14
  CSS_MAIN_STYLES = <<-MAIN # :nodoc:
15
15
  .CodeRay {
16
16
  background-color: #{code_background};
17
17
  border: 1px solid #{border_color};
18
+ font-family: 'Courier New', 'Terminal', monospace;
18
19
  color: #{normal_color};
19
20
  }
20
- .CodeRay pre {
21
- margin: 0px;
22
- }
21
+ .CodeRay pre { margin: 0px; }
23
22
 
24
23
  span.CodeRay { white-space: pre; border: 0px; padding: 2px; }
25
24
 
26
25
  table.CodeRay { border-collapse: collapse; width: 100%; padding: 2px; }
27
26
  table.CodeRay td { padding: 2px 4px; vertical-align: top; }
28
27
 
29
- .CodeRay .line-numbers {
28
+ .CodeRay .line_numbers, .CodeRay .no {
30
29
  background-color: #{numbers_background};
31
30
  color: gray;
32
31
  text-align: right;
33
- -webkit-user-select: none;
34
- -moz-user-select: none;
35
- user-select: none;
36
- }
37
- .CodeRay .line-numbers a {
38
- background-color: #{numbers_background} !important;
39
- color: gray !important;
40
- text-decoration: none !important;
41
32
  }
42
- .CodeRay .line-numbers a:target { color: blue !important; }
43
- .CodeRay .line-numbers .highlighted { color: red !important; }
44
- .CodeRay .line-numbers .highlighted a { color: red !important; }
45
- .CodeRay span.line-numbers { padding: 0px 4px; }
46
- .CodeRay .line { display: block; float: left; width: 100%; }
33
+ .CodeRay .line_numbers a:target, .CodeRay .no a:target { color: blue; }
34
+ .CodeRay .line_numbers .highlighted, .CodeRay .no .highlighted { color: red; }
35
+ .CodeRay .no { padding: 0px 4px; }
47
36
  .CodeRay .code { width: 100%; }
48
37
  .CodeRay .code pre { overflow: auto; }
49
38
  MAIN
50
39
 
51
40
  TOKEN_COLORS = <<-'TOKENS'
52
- .debug { color: white !important; background: blue !important; }
53
-
54
- .annotation { color:#007 }
55
- .attribute-name { color:#b48 }
56
- .attribute-value { color:#700 }
57
- .binary { color:#509 }
58
- .char .content { color:#D20 }
59
- .char .delimiter { color:#710 }
60
- .char { color:#D20 }
61
- .class { color:#B06; font-weight:bold }
62
- .class-variable { color:#369 }
63
- .color { color:#0A0 }
64
- .comment { color:#777 }
65
- .comment .char { color:#444 }
66
- .comment .delimiter { color:#444 }
67
- .complex { color:#A08 }
68
- .constant { color:#036; font-weight:bold }
69
- .decorator { color:#B0B }
70
- .definition { color:#099; font-weight:bold }
71
- .delimiter { color:black }
72
- .directive { color:#088; font-weight:bold }
73
- .doc { color:#970 }
74
- .doc-string { color:#D42; font-weight:bold }
75
- .doctype { color:#34b }
76
- .entity { color:#800; font-weight:bold }
77
- .error { color:#F00; background-color:#FAA }
78
- .escape { color:#666 }
79
- .exception { color:#C00; font-weight:bold }
80
- .float { color:#60E }
81
- .function { color:#06B; font-weight:bold }
82
- .global-variable { color:#d70 }
83
- .hex { color:#02b }
84
- .imaginary { color:#f00 }
85
- .include { color:#B44; font-weight:bold }
86
- .inline { background-color: hsla(0,0%,0%,0.07); color: black }
87
- .inline-delimiter { font-weight: bold; color: #666 }
88
- .instance-variable { color:#33B }
89
- .integer { color:#00D }
90
- .key .char { color: #60f }
91
- .key .delimiter { color: #404 }
92
- .key { color: #606 }
93
- .keyword { color:#080; font-weight:bold }
94
- .label { color:#970; font-weight:bold }
95
- .local-variable { color:#963 }
96
- .namespace { color:#707; font-weight:bold }
97
- .octal { color:#40E }
98
- .operator { }
99
- .predefined { color:#369; font-weight:bold }
100
- .predefined-constant { color:#069 }
101
- .predefined-type { color:#0a5; font-weight:bold }
102
- .preprocessor { color:#579 }
103
- .pseudo-class { color:#00C; font-weight:bold }
104
- .regexp .content { color:#808 }
105
- .regexp .delimiter { color:#404 }
106
- .regexp .modifier { color:#C2C }
107
- .regexp { background-color:hsla(300,100%,50%,0.06); }
108
- .reserved { color:#080; font-weight:bold }
109
- .shell .content { color:#2B2 }
110
- .shell .delimiter { color:#161 }
111
- .shell { background-color:hsla(120,100%,50%,0.06); }
112
- .string .char { color: #b0b }
113
- .string .content { color: #D20 }
114
- .string .delimiter { color: #710 }
115
- .string .modifier { color: #E40 }
116
- .string { background-color:hsla(0,100%,50%,0.05); }
117
- .symbol .content { color:#A60 }
118
- .symbol .delimiter { color:#630 }
119
- .symbol { color:#A60 }
120
- .tag { color:#070 }
121
- .type { color:#339; font-weight:bold }
122
- .value { color: #088; }
123
- .variable { color:#037 }
124
-
125
- .insert { background: hsla(120,100%,50%,0.12) }
126
- .delete { background: hsla(0,100%,50%,0.12) }
127
- .change { color: #bbf; background: #007; }
41
+ .debug { color:white ! important; background:blue ! important; }
42
+
43
+ .an { color:#007 }
44
+ .at { color:#f08 }
45
+ .av { color:#700 }
46
+ .bi { color:#509; font-weight:bold }
47
+ .c { color:#888; }
48
+ .c .dl { color:#444; }
49
+ .c .ch { color:#444; }
50
+
51
+ .ch { color:#04D }
52
+ .ch .k { color:#04D }
53
+ .ch .dl { color:#039 }
54
+
55
+ .cl { color:#B06; font-weight:bold }
56
+ .cm { color:#A08; font-weight:bold }
57
+ .co { color:#036; font-weight:bold }
58
+ .cr { color:#0A0 }
59
+ .cv { color:#369 }
60
+ .de { color:#B0B; }
61
+ .df { color:#099; font-weight:bold }
62
+ .di { color:#088; font-weight:bold }
63
+ .dl { color:black }
64
+ .do { color:#970 }
65
+ .dt { color:#34b }
66
+ .ds { color:#D42; font-weight:bold }
67
+ .e { color:#666; font-weight:bold }
68
+ .en { color:#800; font-weight:bold }
69
+ .er { color:#F00; background-color:#FAA }
70
+ .ex { color:#C00; font-weight:bold }
71
+ .fl { color:#60E; font-weight:bold }
72
+ .fu { color:#06B; font-weight:bold }
73
+ .gv { color:#d70; font-weight:bold }
74
+ .hx { color:#058; font-weight:bold }
75
+ .i { color:#00D; font-weight:bold }
76
+ .ic { color:#B44; font-weight:bold }
77
+
78
+ .il { background-color: hsla(0,0%,0%,0.1); color: black }
79
+ .il .idl { font-weight: bold; color: #666 }
80
+ .idl { font-weight: bold; background-color: hsla(0,0%,0%,0.1); color: #666; }
81
+
82
+ .im { color:#f00; }
83
+ .in { color:#B2B; font-weight:bold }
84
+ .iv { color:#33B }
85
+ .la { color:#970; font-weight:bold }
86
+ .lv { color:#963 }
87
+ .ns { color:#707; font-weight:bold }
88
+ .oc { color:#40E; font-weight:bold }
89
+ .op { }
90
+ .pc { color:#058; font-weight:bold }
91
+ .pd { color:#369; font-weight:bold }
92
+ .pp { color:#579; }
93
+ .ps { color:#00C; font-weight:bold }
94
+ .pt { color:#074; font-weight:bold }
95
+ .r, .kw { color:#080; font-weight:bold }
96
+
97
+ .ke { color: #808; }
98
+ .ke .dl { color: #606; }
99
+ .ke .ch { color: #80f; }
100
+ .vl { color: #088; }
101
+
102
+ .rx { background-color:hsla(300,100%,50%,0.1); }
103
+ .rx .k { color:#808 }
104
+ .rx .dl { color:#404 }
105
+ .rx .mod { color:#C2C }
106
+ .rx .fu { color:#404; font-weight: bold }
107
+
108
+ .s { background-color:hsla(0,100%,50%,0.1); }
109
+ .s .k { color: #D20; }
110
+ .s .ch { color: #b0b; }
111
+ .s .dl { color: #710; }
112
+
113
+ .sh { background-color:hsla(120,100%,50%,0.1); }
114
+ .sh .k { color:#2B2 }
115
+ .sh .dl { color:#161 }
116
+
117
+ .sy { color:#A60 }
118
+ .sy .k { color:#A60 }
119
+ .sy .dl { color:#630 }
120
+
121
+ .ta { color:#070 }
122
+ .ts { color:#D70; font-weight:bold }
123
+ .ty { color:#339; font-weight:bold }
124
+ .v { color:#036 }
125
+ .xt { color:#444 }
126
+
127
+ .ins { background: hsla(120,100%,50%,0.2) }
128
+ .del { background: hsla(0,100%,50%,0.2) }
129
+ .chg { color: #aaf; background: #007; }
128
130
  .head { color: #f8f; background: #505 }
129
131
  .head .filename { color: white; }
130
132
 
131
- .delete .eyecatcher { background-color: hsla(0,100%,50%,0.2); border: 1px solid hsla(0,100%,45%,0.5); margin: -1px; border-bottom: none; border-top-left-radius: 5px; border-top-right-radius: 5px; }
132
- .insert .eyecatcher { background-color: hsla(120,100%,50%,0.2); border: 1px solid hsla(120,100%,25%,0.5); margin: -1px; border-top: none; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; }
133
+ .ins .eye { background-color: hsla(120,100%,50%,0.2) }
134
+ .del .eye { background-color: hsla(0,100%,50%,0.2) }
133
135
 
134
- .insert .insert { color: #0c0; background:transparent; font-weight:bold }
135
- .delete .delete { color: #c00; background:transparent; font-weight:bold }
136
- .change .change { color: #88f }
137
- .head .head { color: #f4f }
136
+ .ins .ins { color: #080; background:transparent; font-weight:bold }
137
+ .del .del { color: #800; background:transparent; font-weight:bold }
138
+ .chg .chg { color: #66f; }
139
+ .head .head { color: #f4f; }
138
140
  TOKENS
139
141
 
140
142
  end
@@ -0,0 +1,143 @@
1
+ module CodeRay
2
+ module Styles
3
+
4
+ # A colorful theme that is also the default for CodeRay output.
5
+ class Cycnus < Style
6
+
7
+ register_for :cycnus
8
+
9
+ code_background = '#f8f8f8'
10
+ numbers_background = '#def'
11
+ border_color = 'silver'
12
+ normal_color = '#000'
13
+
14
+ CSS_MAIN_STYLES = <<-MAIN # :nodoc:
15
+ .CodeRay {
16
+ background-color: #{code_background};
17
+ border: 1px solid #{border_color};
18
+ font-family: 'Courier New', 'Terminal', monospace;
19
+ color: #{normal_color};
20
+ }
21
+ .CodeRay pre { margin: 0px; }
22
+
23
+ span.CodeRay { white-space: pre; border: 0px; padding: 2px; }
24
+
25
+ table.CodeRay { border-collapse: collapse; width: 100%; padding: 2px; }
26
+ table.CodeRay td { padding: 2px 4px; vertical-align: top; }
27
+
28
+ .CodeRay .line_numbers, .CodeRay .no {
29
+ background-color: #{numbers_background};
30
+ color: gray;
31
+ text-align: right;
32
+ }
33
+ .CodeRay .line_numbers .highlighted, .CodeRay .no .highlighted { color: red; }
34
+ .CodeRay .no { padding: 0px 4px; }
35
+ .CodeRay .code { width: 100%; }
36
+ .CodeRay .code pre { overflow: auto; }
37
+ MAIN
38
+
39
+ TOKEN_COLORS = <<-'TOKENS'
40
+ .debug { color:white ! important; background:blue ! important; }
41
+
42
+ .an { color:#007 }
43
+ .at { color:#f08 }
44
+ .av { color:#700 }
45
+ .bi { color:#509; font-weight:bold }
46
+ .c { color:#888; }
47
+
48
+ .ch { color:#04D }
49
+ .ch .k { color:#04D }
50
+ .ch .dl { color:#039 }
51
+
52
+ .cl { color:#B06; font-weight:bold }
53
+ .cm { color:#A08; font-weight:bold }
54
+ .co { color:#036; font-weight:bold }
55
+ .cr { color:#0A0 }
56
+ .cv { color:#369 }
57
+ .de { color:#B0B; }
58
+ .df { color:#099; font-weight:bold }
59
+ .di { color:#088; font-weight:bold }
60
+ .dl { color:black }
61
+ .do { color:#970 }
62
+ .dt { color:#34b }
63
+ .ds { color:#D42; font-weight:bold }
64
+ .e { color:#666; font-weight:bold }
65
+ .en { color:#800; font-weight:bold }
66
+ .er { color:#F00; background-color:#FAA }
67
+ .ex { color:#C00; font-weight:bold }
68
+ .fl { color:#60E; font-weight:bold }
69
+ .fu { color:#06B; font-weight:bold }
70
+ .gv { color:#d70; font-weight:bold }
71
+ .hx { color:#058; font-weight:bold }
72
+ .i { color:#00D; font-weight:bold }
73
+ .ic { color:#B44; font-weight:bold }
74
+
75
+ .il { background: #ddd; color: black }
76
+ .il .il { background: #ccc }
77
+ .il .il .il { background: #bbb }
78
+ .il .idl { background: #ddd; font-weight: bold; color: #666 }
79
+ .idl { background-color: #bbb; font-weight: bold; color: #666; }
80
+
81
+ .im { color:#f00; }
82
+ .in { color:#B2B; font-weight:bold }
83
+ .iv { color:#33B }
84
+ .la { color:#970; font-weight:bold }
85
+ .lv { color:#963 }
86
+ .ns { color:#707; font-weight:bold }
87
+ .oc { color:#40E; font-weight:bold }
88
+ .op { }
89
+ .pc { color:#058; font-weight:bold }
90
+ .pd { color:#369; font-weight:bold }
91
+ .pp { color:#579; }
92
+ .ps { color:#00C; font-weight:bold }
93
+ .pt { color:#074; font-weight:bold }
94
+ .r, .kw { color:#080; font-weight:bold }
95
+
96
+ .ke { color: #808; }
97
+ .ke .dl { color: #606; }
98
+ .ke .ch { color: #80f; }
99
+ .vl { color: #088; }
100
+
101
+ .rx { background-color:#fff0ff; color:#808 }
102
+ .rx .k { }
103
+ .rx .dl { color:#404 }
104
+ .rx .mod { color:#C2C }
105
+ .rx .fu { color:#404; font-weight: bold }
106
+
107
+ .s { background-color:#fff0f0; color: #D20; }
108
+ .s .s { background-color:#ffe0e0 }
109
+ .s .s .s { background-color:#ffd0d0 }
110
+ .s .k { }
111
+ .s .ch { color: #b0b; }
112
+ .s .dl { color: #710; }
113
+
114
+ .sh { background-color:#f0fff0; color:#2B2 }
115
+ .sh .k { }
116
+ .sh .dl { color:#161 }
117
+
118
+ .sy { color:#A60 }
119
+ .sy .k { color:#A60 }
120
+ .sy .dl { color:#630 }
121
+
122
+ .ta { color:#070 }
123
+ .ts { color:#D70; font-weight:bold }
124
+ .ty { color:#339; font-weight:bold }
125
+ .v { color:#036 }
126
+ .xt { color:#444 }
127
+
128
+ .ins { background: #afa; }
129
+ .del { background: #faa; }
130
+ .chg { color: #aaf; background: #007; }
131
+ .head { color: #f8f; background: #505 }
132
+ .head .filename { color: white; }
133
+
134
+ .ins .ins { color: #080; font-weight:bold }
135
+ .del .del { color: #800; font-weight:bold }
136
+ .chg .chg { color: #66f; }
137
+ .head .head { color: #f4f; }
138
+ TOKENS
139
+
140
+ end
141
+
142
+ end
143
+ end
@@ -0,0 +1,123 @@
1
+ module CodeRay
2
+ module Styles
3
+
4
+ # A alternative color theme.
5
+ class Murphy < Style
6
+
7
+ register_for :murphy
8
+
9
+ code_background = '#001129'
10
+ numbers_background = code_background
11
+ border_color = 'silver'
12
+ normal_color = '#C0C0C0'
13
+
14
+ CSS_MAIN_STYLES = <<-MAIN # :nodoc:
15
+ .CodeRay {
16
+ background-color: #{code_background};
17
+ border: 1px solid #{border_color};
18
+ font-family: 'Courier New', 'Terminal', monospace;
19
+ color: #{normal_color};
20
+ }
21
+ .CodeRay pre { margin: 0px; }
22
+
23
+ span.CodeRay { white-space: pre; border: 0px; padding: 2px; }
24
+
25
+ table.CodeRay { border-collapse: collapse; width: 100%; padding: 2px; }
26
+ table.CodeRay td { padding: 2px 4px; vertical-align: top; }
27
+
28
+ .CodeRay .line_numbers, .CodeRay .no {
29
+ background-color: #{numbers_background};
30
+ color: gray;
31
+ text-align: right;
32
+ }
33
+ .CodeRay .line_numbers .highlighted, .CodeRay .no .highlighted { color: red; }
34
+ .CodeRay .no { padding: 0px 4px; }
35
+ .CodeRay .code { width: 100%; }
36
+ .CodeRay .code pre { overflow: auto; }
37
+ MAIN
38
+
39
+ TOKEN_COLORS = <<-'TOKENS'
40
+ .an { color:#007; }
41
+ .av { color:#700; }
42
+ .bi { color:#509; font-weight:bold; }
43
+ .c { color:#555; background-color: black; }
44
+
45
+ .ch { color:#88F; }
46
+ .ch .k { color:#04D; }
47
+ .ch .dl { color:#039; }
48
+
49
+ .cl { color:#e9e; font-weight:bold; }
50
+ .co { color:#5ED; font-weight:bold; }
51
+ .cr { color:#0A0; }
52
+ .cv { color:#ccf; }
53
+ .df { color:#099; font-weight:bold; }
54
+ .di { color:#088; font-weight:bold; }
55
+ .dl { color:black; }
56
+ .do { color:#970; }
57
+ .ds { color:#D42; font-weight:bold; }
58
+ .e { color:#666; font-weight:bold; }
59
+ .er { color:#F00; background-color:#FAA; }
60
+ .ex { color:#F00; font-weight:bold; }
61
+ .fl { color:#60E; font-weight:bold; }
62
+ .fu { color:#5ed; font-weight:bold; }
63
+ .gv { color:#f84; }
64
+ .hx { color:#058; font-weight:bold; }
65
+ .i { color:#66f; font-weight:bold; }
66
+ .ic { color:#B44; font-weight:bold; }
67
+ .il { }
68
+ .in { color:#B2B; font-weight:bold; }
69
+ .iv { color:#aaf; }
70
+ .la { color:#970; font-weight:bold; }
71
+ .lv { color:#963; }
72
+ .oc { color:#40E; font-weight:bold; }
73
+ .op { }
74
+ .pc { color:#08f; font-weight:bold; }
75
+ .pd { color:#369; font-weight:bold; }
76
+ .pp { color:#579; }
77
+ .pt { color:#66f; font-weight:bold; }
78
+ .r { color:#5de; font-weight:bold; }
79
+ .r, .kw { color:#5de; font-weight:bold }
80
+
81
+ .ke { color: #808; }
82
+
83
+ .rx { background-color:#221133; }
84
+ .rx .k { color:#f8f; }
85
+ .rx .dl { color:#f0f; }
86
+ .rx .mod { color:#f0b; }
87
+ .rx .fu { color:#404; font-weight: bold; }
88
+
89
+ .s { background-color:#331122; }
90
+ .s .s { background-color:#ffe0e0; }
91
+ .s .s .s { background-color:#ffd0d0; }
92
+ .s .k { color:#F88; }
93
+ .s .dl { color:#f55; }
94
+
95
+ .sh { background-color:#f0fff0; }
96
+ .sh .k { color:#2B2; }
97
+ .sh .dl { color:#161; }
98
+
99
+ .sy { color:#Fc8; }
100
+ .sy .k { color:#Fc8; }
101
+ .sy .dl { color:#F84; }
102
+
103
+ .ta { color:#070; }
104
+ .ts { color:#D70; font-weight:bold; }
105
+ .ty { color:#339; font-weight:bold; }
106
+ .v { color:#036; }
107
+ .xt { color:#444; }
108
+
109
+ .ins { background: #afa; }
110
+ .del { background: #faa; }
111
+ .chg { color: #aaf; background: #007; }
112
+ .head { color: #f8f; background: #505 }
113
+
114
+ .ins .ins { color: #080; font-weight:bold }
115
+ .del .del { color: #800; font-weight:bold }
116
+ .chg .chg { color: #66f; }
117
+ .head .head { color: #f4f; }
118
+ TOKENS
119
+
120
+ end
121
+
122
+ end
123
+ end