Chris@0
|
1 module CodeRay
|
Chris@0
|
2 module Styles
|
Chris@0
|
3
|
Chris@0
|
4 class Murphy < Style
|
Chris@0
|
5
|
Chris@0
|
6 register_for :murphy
|
Chris@0
|
7
|
Chris@0
|
8 code_background = '#001129'
|
Chris@0
|
9 numbers_background = code_background
|
Chris@0
|
10 border_color = 'silver'
|
Chris@0
|
11 normal_color = '#C0C0C0'
|
Chris@0
|
12
|
Chris@0
|
13 CSS_MAIN_STYLES = <<-MAIN
|
Chris@0
|
14 .CodeRay {
|
Chris@0
|
15 background-color: #{code_background};
|
Chris@0
|
16 border: 1px solid #{border_color};
|
Chris@0
|
17 font-family: 'Courier New', 'Terminal', monospace;
|
Chris@0
|
18 color: #{normal_color};
|
Chris@0
|
19 }
|
Chris@0
|
20 .CodeRay pre { margin: 0px; }
|
Chris@0
|
21
|
Chris@0
|
22 div.CodeRay { }
|
Chris@0
|
23
|
Chris@0
|
24 span.CodeRay { white-space: pre; border: 0px; padding: 2px; }
|
Chris@0
|
25
|
Chris@0
|
26 table.CodeRay { border-collapse: collapse; width: 100%; padding: 2px; }
|
Chris@0
|
27 table.CodeRay td { padding: 2px 4px; vertical-align: top; }
|
Chris@0
|
28
|
Chris@0
|
29 .CodeRay .line_numbers, .CodeRay .no {
|
Chris@0
|
30 background-color: #{numbers_background};
|
Chris@0
|
31 color: gray;
|
Chris@0
|
32 text-align: right;
|
Chris@0
|
33 }
|
Chris@0
|
34 .CodeRay .line_numbers tt { font-weight: bold; }
|
Chris@0
|
35 .CodeRay .no { padding: 0px 4px; }
|
Chris@0
|
36 .CodeRay .code { width: 100%; }
|
Chris@0
|
37
|
Chris@0
|
38 ol.CodeRay { font-size: 10pt; }
|
Chris@0
|
39 ol.CodeRay li { white-space: pre; }
|
Chris@0
|
40
|
Chris@0
|
41 .CodeRay .code pre { overflow: auto; }
|
Chris@0
|
42 MAIN
|
Chris@0
|
43
|
Chris@0
|
44 TOKEN_COLORS = <<-'TOKENS'
|
Chris@0
|
45 .af { color:#00C; }
|
Chris@0
|
46 .an { color:#007; }
|
Chris@0
|
47 .av { color:#700; }
|
Chris@0
|
48 .aw { color:#C00; }
|
Chris@0
|
49 .bi { color:#509; font-weight:bold; }
|
Chris@0
|
50 .c { color:#555; background-color: black; }
|
Chris@0
|
51
|
Chris@0
|
52 .ch { color:#88F; }
|
Chris@0
|
53 .ch .k { color:#04D; }
|
Chris@0
|
54 .ch .dl { color:#039; }
|
Chris@0
|
55
|
Chris@0
|
56 .cl { color:#e9e; font-weight:bold; }
|
Chris@0
|
57 .co { color:#5ED; font-weight:bold; }
|
Chris@0
|
58 .cr { color:#0A0; }
|
Chris@0
|
59 .cv { color:#ccf; }
|
Chris@0
|
60 .df { color:#099; font-weight:bold; }
|
Chris@0
|
61 .di { color:#088; font-weight:bold; }
|
Chris@0
|
62 .dl { color:black; }
|
Chris@0
|
63 .do { color:#970; }
|
Chris@0
|
64 .ds { color:#D42; font-weight:bold; }
|
Chris@0
|
65 .e { color:#666; font-weight:bold; }
|
Chris@0
|
66 .er { color:#F00; background-color:#FAA; }
|
Chris@0
|
67 .ex { color:#F00; font-weight:bold; }
|
Chris@0
|
68 .fl { color:#60E; font-weight:bold; }
|
Chris@0
|
69 .fu { color:#5ed; font-weight:bold; }
|
Chris@0
|
70 .gv { color:#f84; }
|
Chris@0
|
71 .hx { color:#058; font-weight:bold; }
|
Chris@0
|
72 .i { color:#66f; font-weight:bold; }
|
Chris@0
|
73 .ic { color:#B44; font-weight:bold; }
|
Chris@0
|
74 .il { }
|
Chris@0
|
75 .in { color:#B2B; font-weight:bold; }
|
Chris@0
|
76 .iv { color:#aaf; }
|
Chris@0
|
77 .la { color:#970; font-weight:bold; }
|
Chris@0
|
78 .lv { color:#963; }
|
Chris@0
|
79 .oc { color:#40E; font-weight:bold; }
|
Chris@0
|
80 .of { color:#000; font-weight:bold; }
|
Chris@0
|
81 .op { }
|
Chris@0
|
82 .pc { color:#08f; font-weight:bold; }
|
Chris@0
|
83 .pd { color:#369; font-weight:bold; }
|
Chris@0
|
84 .pp { color:#579; }
|
Chris@0
|
85 .pt { color:#66f; font-weight:bold; }
|
Chris@0
|
86 .r { color:#5de; font-weight:bold; }
|
Chris@0
|
87 .r, .kw { color:#5de; font-weight:bold }
|
Chris@0
|
88
|
Chris@0
|
89 .ke { color: #808; }
|
Chris@0
|
90
|
Chris@0
|
91 .rx { background-color:#221133; }
|
Chris@0
|
92 .rx .k { color:#f8f; }
|
Chris@0
|
93 .rx .dl { color:#f0f; }
|
Chris@0
|
94 .rx .mod { color:#f0b; }
|
Chris@0
|
95 .rx .fu { color:#404; font-weight: bold; }
|
Chris@0
|
96
|
Chris@0
|
97 .s { background-color:#331122; }
|
Chris@0
|
98 .s .s { background-color:#ffe0e0; }
|
Chris@0
|
99 .s .s .s { background-color:#ffd0d0; }
|
Chris@0
|
100 .s .k { color:#F88; }
|
Chris@0
|
101 .s .dl { color:#f55; }
|
Chris@0
|
102
|
Chris@0
|
103 .sh { background-color:#f0fff0; }
|
Chris@0
|
104 .sh .k { color:#2B2; }
|
Chris@0
|
105 .sh .dl { color:#161; }
|
Chris@0
|
106
|
Chris@0
|
107 .sy { color:#Fc8; }
|
Chris@0
|
108 .sy .k { color:#Fc8; }
|
Chris@0
|
109 .sy .dl { color:#F84; }
|
Chris@0
|
110
|
Chris@0
|
111 .ta { color:#070; }
|
Chris@0
|
112 .tf { color:#070; font-weight:bold; }
|
Chris@0
|
113 .ts { color:#D70; font-weight:bold; }
|
Chris@0
|
114 .ty { color:#339; font-weight:bold; }
|
Chris@0
|
115 .v { color:#036; }
|
Chris@0
|
116 .xt { color:#444; }
|
Chris@0
|
117
|
Chris@0
|
118 .ins { background: #afa; }
|
Chris@0
|
119 .del { background: #faa; }
|
Chris@0
|
120 .chg { color: #aaf; background: #007; }
|
Chris@0
|
121 .head { color: #f8f; background: #505 }
|
Chris@0
|
122
|
Chris@0
|
123 .ins .ins { color: #080; font-weight:bold }
|
Chris@0
|
124 .del .del { color: #800; font-weight:bold }
|
Chris@0
|
125 .chg .chg { color: #66f; }
|
Chris@0
|
126 .head .head { color: #f4f; }
|
Chris@0
|
127 TOKENS
|
Chris@0
|
128
|
Chris@0
|
129 end
|
Chris@0
|
130
|
Chris@0
|
131 end
|
Chris@0
|
132 end
|