rio 0.3.8 → 0.3.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (223) hide show
  1. data/README +18 -12
  2. data/Rakefile +57 -87
  3. data/build_doc.rb +19 -17
  4. data/doc/ANNOUNCE +3 -32
  5. data/doc/RELEASE_NOTES +4 -5
  6. data/doc/RIOIS +215 -0
  7. data/doc/generators/template/html/rio.css +428 -0
  8. data/doc/generators/template/html/rio.rb +18 -389
  9. data/doc/generators/template/html/ugly.rb +130 -0
  10. data/doc/pkg_def.rb +66 -0
  11. data/ex/catcsv.rb +64 -0
  12. data/ex/colx.rb +8 -0
  13. data/ex/findinruby +15 -0
  14. data/ex/findruby +14 -0
  15. data/ex/passwd_report.rb +8 -0
  16. data/ex/prompt.rb +25 -0
  17. data/ex/rgb.txt.gz +0 -0
  18. data/ex/riocat +42 -0
  19. data/ex/riogunzip +31 -0
  20. data/ex/riogzip +24 -0
  21. data/ex/rioprompt.rb +10 -0
  22. data/ex/targz2zip +17 -0
  23. data/ex/tonl +10 -0
  24. data/lib/rio.rb +16 -10
  25. data/lib/rio/abstract_method.rb +3 -4
  26. data/lib/rio/argv.rb +3 -4
  27. data/lib/rio/arycopy.rb +3 -4
  28. data/lib/rio/assert.rb +3 -4
  29. data/lib/rio/base.rb +3 -4
  30. data/lib/rio/callstr.rb +3 -4
  31. data/lib/rio/const.rb +3 -4
  32. data/lib/rio/construct.rb +3 -4
  33. data/lib/rio/constructor.rb +12 -8
  34. data/lib/rio/context.rb +15 -30
  35. data/lib/rio/context/autoclose.rb +3 -4
  36. data/lib/rio/context/copying.rb +3 -4
  37. data/lib/rio/context/cxx.rb +3 -4
  38. data/lib/rio/context/dir.rb +3 -4
  39. data/lib/rio/context/gzip.rb +3 -4
  40. data/lib/rio/context/methods.rb +16 -5
  41. data/lib/rio/context/skip.rb +3 -4
  42. data/lib/rio/context/stream.rb +42 -5
  43. data/lib/rio/cp.rb +7 -7
  44. data/lib/rio/def.rb +3 -4
  45. data/lib/rio/dir.rb +3 -4
  46. data/lib/rio/doc.rb +4 -5
  47. data/lib/rio/doc/EXAMPLES.rb +299 -0
  48. data/lib/rio/doc/HOWTO.rb +3 -4
  49. data/lib/rio/doc/INTRO.rb +86 -105
  50. data/lib/rio/doc/OPTIONAL.rb +4 -5
  51. data/lib/rio/doc/SYNOPSIS.rb +7 -6
  52. data/lib/rio/entrysel.rb +21 -23
  53. data/lib/rio/exception.rb +3 -4
  54. data/lib/rio/exception/copy.rb +3 -4
  55. data/lib/rio/exception/notimplemented.rb +57 -0
  56. data/lib/rio/exception/notsupported.rb +3 -4
  57. data/lib/rio/exception/open.rb +3 -4
  58. data/lib/rio/exception/state.rb +3 -4
  59. data/lib/rio/ext.rb +47 -13
  60. data/lib/rio/ext/csv.rb +4 -5
  61. data/lib/rio/ext/if.rb +45 -0
  62. data/lib/rio/ext/mp3info.rb +80 -0
  63. data/lib/rio/ext/splitlines.rb +253 -0
  64. data/lib/rio/ext/yaml.rb +9 -5
  65. data/lib/rio/ext/yaml/doc.rb +133 -0
  66. data/lib/rio/ext/yaml/tie.rb +149 -0
  67. data/lib/rio/ext/zipfile.rb +23 -4
  68. data/lib/rio/ext/zipfile/fs.rb +116 -0
  69. data/lib/rio/ext/zipfile/rl.rb +251 -0
  70. data/lib/rio/ext/zipfile/rootdir.rb +117 -0
  71. data/lib/rio/ext/zipfile/state.rb +161 -0
  72. data/lib/rio/ext/zipfile/wrap.rb +204 -0
  73. data/lib/rio/factory.rb +235 -27
  74. data/lib/rio/file.rb +4 -4
  75. data/lib/rio/filter.rb +3 -4
  76. data/lib/rio/filter/closeoneof.rb +3 -4
  77. data/lib/rio/filter/gzip.rb +9 -4
  78. data/lib/rio/fs/base.rb +3 -4
  79. data/lib/rio/fs/impl.rb +4 -5
  80. data/lib/rio/fs/native.rb +3 -4
  81. data/lib/rio/fs/stream.rb +3 -4
  82. data/lib/rio/fs/url.rb +3 -4
  83. data/lib/rio/ftp/conncache.rb +19 -5
  84. data/lib/rio/ftp/dir.rb +3 -4
  85. data/lib/rio/ftp/fs.rb +30 -24
  86. data/lib/rio/grande.rb +27 -7
  87. data/lib/rio/handle.rb +3 -4
  88. data/lib/rio/if.rb +19 -15
  89. data/lib/rio/if/basic.rb +7 -7
  90. data/lib/rio/if/csv.rb +5 -6
  91. data/lib/rio/if/dir.rb +120 -114
  92. data/lib/rio/if/file.rb +52 -44
  93. data/lib/rio/if/fileordir.rb +217 -211
  94. data/lib/rio/if/grande.rb +674 -644
  95. data/lib/rio/if/grande_entry.rb +321 -313
  96. data/lib/rio/if/grande_stream.rb +653 -553
  97. data/lib/rio/if/internal.rb +3 -4
  98. data/lib/rio/if/path.rb +425 -426
  99. data/lib/rio/if/rubyio.rb +681 -0
  100. data/lib/rio/if/string.rb +42 -5
  101. data/lib/rio/if/temp.rb +3 -4
  102. data/lib/rio/if/test.rb +245 -238
  103. data/lib/rio/if/yaml.rb +15 -41
  104. data/lib/rio/ioh.rb +7 -5
  105. data/lib/rio/iomode.rb +19 -7
  106. data/lib/rio/ios/fail.rb +4 -5
  107. data/lib/rio/ios/generic.rb +4 -5
  108. data/lib/rio/ios/mode.rb +4 -5
  109. data/lib/rio/ios/null.rb +6 -7
  110. data/lib/rio/iowrap.rb +3 -4
  111. data/lib/rio/kernel.rb +3 -5
  112. data/lib/rio/local.rb +3 -4
  113. data/lib/rio/match.rb +3 -4
  114. data/lib/rio/matchrecord.rb +3 -4
  115. data/lib/rio/no_warn.rb +3 -4
  116. data/lib/rio/nullio.rb +3 -4
  117. data/lib/rio/open3.rb +4 -5
  118. data/lib/rio/ops/construct.rb +3 -4
  119. data/lib/rio/ops/create.rb +11 -6
  120. data/lib/rio/ops/dir.rb +19 -8
  121. data/lib/rio/ops/either.rb +6 -5
  122. data/lib/rio/ops/file.rb +3 -4
  123. data/lib/rio/ops/path.rb +14 -35
  124. data/lib/rio/ops/stream.rb +3 -4
  125. data/lib/rio/ops/stream/input.rb +4 -7
  126. data/lib/rio/ops/stream/output.rb +3 -4
  127. data/lib/rio/ops/stream/read.rb +6 -5
  128. data/lib/rio/ops/stream/write.rb +3 -4
  129. data/lib/rio/ops/symlink.rb +3 -4
  130. data/lib/rio/path.rb +22 -18
  131. data/lib/rio/path/reset.rb +4 -5
  132. data/lib/rio/piper.rb +3 -4
  133. data/lib/rio/piper/cp.rb +3 -4
  134. data/lib/rio/prompt.rb +10 -5
  135. data/lib/rio/rectype.rb +5 -5
  136. data/lib/rio/rl/base.rb +17 -71
  137. data/lib/rio/rl/builder.rb +14 -38
  138. data/lib/rio/rl/chmap.rb +66 -0
  139. data/lib/rio/rl/fs2url.rb +82 -0
  140. data/lib/rio/rl/ioi.rb +4 -4
  141. data/lib/rio/rl/path.rb +44 -122
  142. data/lib/rio/rl/pathmethods.rb +19 -8
  143. data/lib/rio/rl/uri.rb +137 -60
  144. data/lib/rio/rl/withpath.rb +295 -0
  145. data/lib/rio/scheme/aryio.rb +3 -4
  146. data/lib/rio/scheme/cmdio.rb +3 -4
  147. data/lib/rio/scheme/cmdpipe.rb +4 -4
  148. data/lib/rio/scheme/fd.rb +3 -4
  149. data/lib/rio/scheme/ftp.rb +7 -7
  150. data/lib/rio/scheme/http.rb +4 -5
  151. data/lib/rio/scheme/null.rb +3 -4
  152. data/lib/rio/scheme/path.rb +3 -4
  153. data/lib/rio/scheme/stderr.rb +3 -4
  154. data/lib/rio/scheme/stdio.rb +3 -4
  155. data/lib/rio/scheme/strio.rb +3 -4
  156. data/lib/rio/scheme/sysio.rb +3 -4
  157. data/lib/rio/scheme/tcp.rb +3 -4
  158. data/lib/rio/scheme/temp.rb +6 -6
  159. data/lib/rio/state.rb +18 -46
  160. data/lib/rio/state/error.rb +3 -4
  161. data/lib/rio/stream.rb +4 -4
  162. data/lib/rio/stream/base.rb +3 -4
  163. data/lib/rio/stream/duplex.rb +3 -4
  164. data/lib/rio/stream/open.rb +3 -8
  165. data/lib/rio/symantics.rb +3 -4
  166. data/lib/rio/tempdir.rb +2 -2
  167. data/lib/rio/to_rio.rb +3 -4
  168. data/lib/rio/to_rio/all.rb +3 -4
  169. data/lib/rio/to_rio/array.rb +4 -5
  170. data/lib/rio/to_rio/io.rb +4 -5
  171. data/lib/rio/to_rio/object.rb +4 -5
  172. data/lib/rio/to_rio/string.rb +4 -5
  173. data/lib/rio/uri/file.rb +41 -5
  174. data/lib/rio/util.rb +3 -4
  175. data/lib/rio/version.rb +4 -5
  176. data/setup.rb +368 -339
  177. data/test/bin/list_dir.rb +1 -1
  178. data/test/ftp/anon_misc.rb +13 -1
  179. data/test/ftp/anon_special.rb +6 -6
  180. data/test/ftp/anon_write.rb +10 -3
  181. data/test/ftp/ftp2ftp.rb +2 -2
  182. data/test/ftp/testdef.rb +9 -6
  183. data/test/http/all.rb +3 -0
  184. data/test/http/copy-from-http.rb +140 -0
  185. data/test/lib/temp_server.rb +44 -0
  186. data/test/runalltests.rb +3 -1
  187. data/test/runhttp.rb +12 -0
  188. data/test/runhttptests.rb +1 -1
  189. data/test/runtests.rb +41 -3
  190. data/test/tc/abs.rb +9 -5
  191. data/test/tc/all.rb +9 -4
  192. data/test/tc/base.rb +1 -1
  193. data/test/tc/base2.rb +87 -0
  194. data/test/tc/{methods.rb → clone.rb} +72 -50
  195. data/test/tc/closeoncopy.rb +13 -2
  196. data/test/tc/copy-dir-samevar.rb +91 -0
  197. data/test/tc/dir_iter.rb +0 -1
  198. data/test/tc/empty.rb +6 -2
  199. data/test/tc/expand_path.rb +36 -54
  200. data/test/tc/ext.rb +42 -18
  201. data/test/tc/gzip.rb +30 -3
  202. data/test/tc/likeio.rb +5 -1
  203. data/test/tc/line_record_row.rb +51 -0
  204. data/test/tc/noqae.rb +71 -70
  205. data/test/tc/path_parts.rb +175 -0
  206. data/test/tc/programs_util.rb +3 -3
  207. data/test/tc/rename.rb +4 -5
  208. data/test/tc/riorl.rb +9 -7
  209. data/test/tc/skip.rb +35 -6
  210. data/test/tc/skiplines.rb +34 -5
  211. data/test/tc/split.rb +8 -50
  212. data/test/tc/splitlines.rb +65 -0
  213. data/test/tc/splitpath.rb +83 -0
  214. data/test/tc/testcase.rb +1 -1
  215. data/test/tc/truncate.rb +39 -0
  216. data/test/tc/yaml.rb +9 -8
  217. metadata +261 -207
  218. data/ChangeLog +0 -1418
  219. data/VERSION +0 -1
  220. data/lib/rio/doc/MISC.rb +0 -259
  221. data/lib/rio/if/stream.rb +0 -680
  222. data/lib/rio/impl/path.rb +0 -87
  223. data/test/tc/copy-from-http.rb +0 -89
@@ -0,0 +1,428 @@
1
+ /*
2
+ *
3
+ * = CSS2 RDoc HTML template
4
+ *
5
+ * This is a template for RDoc that uses XHTML 1.0 Transitional and dictates a
6
+ * bit more of the appearance of the output to cascading stylesheets than the
7
+ * default. It was designed for clean inline code display, and uses DHTMl to
8
+ * toggle the visbility of each method's source with each click on the '[source]'
9
+ * link.
10
+ *
11
+ * == Authors
12
+ *
13
+ * * Michael Granger <ged@FaerieMUD.org>
14
+ *
15
+ * Copyright (c) 2002, 2003 The FaerieMUD Consortium. Some rights reserved.
16
+ *
17
+ * This work is licensed under the Creative Commons Attribution License. To view
18
+ * a copy of this license, visit http://creativecommons.org/licenses/by/1.0/ or
19
+ * send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California
20
+ * 94305, USA.
21
+ *
22
+ *
23
+ * Modified by Christopher Kleckner
24
+ * Copyright (c) 2005,2006,2007. Some rights reserved.
25
+ * Licensed under the same terms as the original.
26
+ */
27
+
28
+ body {
29
+ font-family: Verdana,Arial,Helvetica,sans-serif;
30
+ font-size: 90%;
31
+ margin: 0;
32
+ margin-left: 0px;
33
+ padding: 0;
34
+ background: white;
35
+ }
36
+
37
+ h1,h2,h3,h4 { margin: 0; color: #8b4726; background: transparent; }
38
+ h1 { font-size: 150%; }
39
+ h2 { font-size: 140%; }
40
+ h3 { font-size: 130%; }
41
+ h4 { font-size: 120%; }
42
+ h2,h3,h4 { margin-top: 1em; }
43
+
44
+ a {
45
+ background: transparent;
46
+ color: #8b4500;
47
+ text-decoration: none;
48
+ }
49
+ a:hover {
50
+ color: #ffa500;
51
+ background: #8b4500;
52
+ }
53
+
54
+ /* Override the base stylesheet's Anchor inside a table cell */
55
+ td > a {
56
+ background: transparent;
57
+ color: #099;
58
+ text-decoration: none;
59
+ }
60
+
61
+ small {
62
+ font-size: 0.7em;
63
+ }
64
+ /* and inside a section title */
65
+ .section-title > a {
66
+ background: transparent;
67
+ color: #8b4500;
68
+ text-decoration: none;
69
+ }
70
+
71
+ /* === Structural elements =================================== */
72
+
73
+ div#index {
74
+ margin: 0;
75
+ margin-left: 0px;
76
+ padding: 0;
77
+ font-size: 90%;
78
+ background: #ffdead;
79
+ }
80
+
81
+
82
+ div#index a {
83
+ margin-left: 0.7em;
84
+ }
85
+ div#index-entries a {
86
+ background: transparent;
87
+ margin-left: 0.7em;
88
+ color: #8b4500;
89
+ }
90
+ div#index-entries a:hover {
91
+ background: transparent;
92
+ margin-left: 0.7em;
93
+ /* color: #ffdead; */
94
+ color: #ffdead;
95
+ background: #8b4500;
96
+ /*background: #ffdead;*/
97
+ }
98
+ .name-list a {
99
+ margin-left: 0.7em;
100
+ background: #ffdead;
101
+ color: #8b4500;
102
+ }
103
+ .name-list a:hover {
104
+ margin-left: 0.7em;
105
+ color: #ffdead;
106
+ background: #8b4500;
107
+ }
108
+ .section-bar {
109
+ color: #555;
110
+ /* background: #8b4500; */
111
+
112
+ border-bottom: 1px solid #999;
113
+ margin-left: 0px;
114
+ }
115
+
116
+ div#index .section-bar {
117
+ margin-left: 0px;
118
+ padding-left: 0.7em;
119
+ background: #8b4500;
120
+ color: #ffdead;
121
+ font-size: small;
122
+ }
123
+
124
+
125
+ .section-title {
126
+ /*background: #8b4500; */
127
+ background: #ffdead;
128
+ color: #eee;
129
+ padding: 3px;
130
+ margin-top: 2em;
131
+ margin-left: 0px;
132
+ border: 1px solid #999;
133
+ }
134
+
135
+ div#classHeader, div#fileHeader {
136
+ width: auto;
137
+ color: white;
138
+ padding: 0.5em 1.5em 0.5em 1.5em;
139
+ margin: 0;
140
+ margin-left: 0px;
141
+ border-bottom: 3px solid #006;
142
+ }
143
+
144
+ div#classHeader a, div#fileHeader a {
145
+ background: inherit;
146
+ color: white;
147
+ }
148
+
149
+ div#classHeader td, div#fileHeader td {
150
+ background: inherit;
151
+ color: white;
152
+ }
153
+
154
+
155
+ div#fileHeader {
156
+ background: #8b4500;
157
+
158
+ }
159
+ #fileHeader h1,#fileHeader h2,#fileHeader h3,#fileHeader h4 {
160
+ margin: 0;
161
+ color: #ffdead;
162
+ }
163
+
164
+ div#classHeader {
165
+ background: #8b4500;
166
+ }
167
+ td.class-header-space-col {
168
+ width: 2em;
169
+ }
170
+
171
+
172
+ .class-mod {
173
+ font-size: 110%;
174
+ font-weight: bold;
175
+ font-family: monospace;
176
+ text-transform: lowercase;
177
+ text-align: bottom;
178
+
179
+ }
180
+ .class-name-in-header {
181
+ font-size: 150%;
182
+ font-weight: bold;
183
+ font-family: monospace;
184
+ }
185
+ .in-url {
186
+ font-size: 80%
187
+ }
188
+
189
+ div#bodyContent {
190
+ padding: 0 1.5em 0 1.5em;
191
+ }
192
+
193
+
194
+ div#description {
195
+ padding: 0.5em 1.5em;
196
+ /* background: #efefef; */
197
+ background: #ffdead;
198
+ border: 1px dotted #999;
199
+ }
200
+
201
+ div#description h1,h2,h3,h4,h5,h6 {
202
+ color: #8b4500;
203
+ background: transparent;
204
+ }
205
+
206
+ div#validator-badges {
207
+ text-align: center;
208
+ }
209
+ div#validator-badges img { border: 0; }
210
+
211
+ div#copyright {
212
+ color: #333;
213
+ background: #efefef;
214
+ font: 0.75em sans-serif;
215
+ margin-top: 5em;
216
+ margin-bottom: 0;
217
+ padding: 0.5em 2em;
218
+ }
219
+
220
+
221
+ /* === Classes =================================== */
222
+
223
+ table.header-table {
224
+ color: white;
225
+ font-size: small;
226
+ }
227
+
228
+ .type-note {
229
+ font-size: small;
230
+ color: #DEDEDE;
231
+ }
232
+
233
+ .xxsection-bar {
234
+ background: #eee;
235
+ color: #333;
236
+ padding: 3px;
237
+ }
238
+
239
+
240
+
241
+ .section-title {
242
+ background: #79a;
243
+ color: #eee;
244
+ padding: 3px;
245
+ margin-top: 2em;
246
+ margin-left: 0px;
247
+ border: 1px solid #999;
248
+ }
249
+
250
+ .top-aligned-row { vertical-align: top }
251
+ .bottom-aligned-row { vertical-align: bottom }
252
+
253
+ span.include-name {
254
+ font-size: small;
255
+ }
256
+ .include-name a {
257
+ font-weight: bold;
258
+ }
259
+ ul.includes-ul {
260
+ list-style-type: none;
261
+ padding-left: 1em;
262
+ }
263
+
264
+
265
+ /* --- Context section classes ----------------------- */
266
+
267
+ .context-row { }
268
+ .context-item-name { font-family: monospace; font-weight: bold; color: black; }
269
+ .context-item-value { font-size: small; color: #448; }
270
+ .context-item-desc { color: #333; padding-left: 2em; }
271
+
272
+ /* --- Method classes -------------------------- */
273
+ .method-detail {
274
+ background: #ffdead;
275
+ padding: 0;
276
+ margin-top: 0.5em;
277
+ margin-bottom: 1em;
278
+ border: 1px dotted #ccc;
279
+ }
280
+ .method-heading {
281
+ font-family: monospace;
282
+ font-weight: bold;
283
+ font-size: 130%;
284
+ color: #191970;
285
+ /* background: #b0c4de; */
286
+ background: #ffa07a;
287
+ border-bottom: 1px solid #666;
288
+ padding: 0.2em 0.5em 0 0.5em;
289
+ }
290
+ .method-heading a {
291
+ text-decoration: none;
292
+ }
293
+ .method-heading a:hover {
294
+ text-decoration: underline;
295
+ background: inherit;
296
+ color: inherit;
297
+ }
298
+ .method-signature { color: black; background: inherit; }
299
+ .method-name { font-weight: bold; }
300
+ .method-args { font-style: italic; }
301
+
302
+ .method-description { padding: 0 0.5em 0 0.5em; }
303
+ pre.method-description
304
+ {
305
+ padding: 0 0.5em 0 0.5em;
306
+ color: #ee2222;
307
+ }
308
+
309
+ #description pre
310
+ {
311
+ padding: 0.2em 0 0.2em 0;
312
+ margin: 0.3em 0 0.3em 0;
313
+ background: #fff8dc;
314
+ /* background: #ffffff; */
315
+ border-left: 3px solid #8b6508;
316
+ border-bottom: 1px solid #8b6508;
317
+ border-top: 1px solid #8b6508;
318
+ }
319
+
320
+ .method-description pre
321
+ {
322
+ padding: 0.2em 0 0.2em 0;
323
+ margin: 0.3em 0 0.3em 0;
324
+ background: #fff8dc;
325
+ /* background: #ffffff; */
326
+ border-left: 3px solid #8b6508;
327
+ border-bottom: 1px solid #8b6508;
328
+ border-top: 1px solid #8b6508;
329
+ }
330
+
331
+
332
+ #description h1 {
333
+ color: #8b4500;
334
+ margin: 0.5em 0 0.2em 0;
335
+ /*border: 1px solid red;*/
336
+ }
337
+ #description h2 {
338
+ color: #8b4500;
339
+ margin: 0.5em 0 0.2em 0;
340
+ /*border: 1px solid red;*/
341
+ }
342
+ #description h3 {
343
+ color: #8b4500;
344
+ margin: 0.5em 0 0.2em 0;
345
+ /*border: 1px solid red;*/
346
+ }
347
+ #description h4 {
348
+ color: #8b4500;
349
+ margin: 0.5em 0 0.2em 0;
350
+ /*border: 1px solid red;*/
351
+ }
352
+ #description p {
353
+ margin: 0.5em 0 0.2em 0;
354
+ /*border: 1px solid red;*/
355
+ }
356
+ #description ul {
357
+ margin: 0.2em 0 0.5em 0;
358
+ /* border: 1px solid red; */
359
+ }
360
+ #description a {
361
+ background: #ffdead;
362
+ /* background: #eef; */
363
+ color: #8b4500;
364
+ text-decoration: none;
365
+ }
366
+ #description a:hover { text-decoration: underline; }
367
+ .method-description a {
368
+ background: #ffdead;
369
+ /* background: #eef; */
370
+ color: #8b4500;
371
+ text-decoration: none;
372
+ }
373
+ .method-description a:hover { text-decoration: underline; }
374
+
375
+ .method-description table
376
+ {
377
+ border-top: 1px solid brown;
378
+ border-bottom: 1px solid brown;
379
+ margin: 0.4em 2em 0.4em 2em;
380
+ }
381
+ .method-description li
382
+ {
383
+ padding: 0 0 0 0;
384
+ margin: 0 0 0 0;
385
+
386
+ }
387
+ .method-description p {
388
+ margin: 0.5em 0 0.2em 0;
389
+ /* border: 1px solid red; */
390
+ }
391
+ .method-description tt {
392
+ margin: 0.5em 0 0.2em 0;
393
+ font-weight: bold;
394
+ color: #000044;
395
+ }
396
+ .method-description ul {
397
+ margin: 0.2em 0 0.5em 0;
398
+ /* border: 1px solid red; */
399
+ }
400
+
401
+
402
+ /* --- Source code sections -------------------- */
403
+
404
+ a.source-toggle { font-size: 90%; }
405
+ div.method-source-code {
406
+ background: #262626;
407
+ color: #ffdead;
408
+ margin: 1em;
409
+ padding: 0.5em;
410
+ border: 1px dashed #999;
411
+ overflow: hidden;
412
+ }
413
+
414
+ div.method-source-code pre { color: #ffdead; overflow: hidden; }
415
+
416
+ /* --- Ruby keyword styles --------------------- */
417
+
418
+ .standalone-code { background: #221111; color: #ffdead; overflow: hidden; }
419
+
420
+ .ruby-constant { color: #7fffd4; background: transparent; }
421
+ .ruby-keyword { color: #00ffff; background: transparent; }
422
+ .ruby-ivar { color: #eedd82; background: transparent; }
423
+ .ruby-operator { color: #00ffee; background: transparent; }
424
+ .ruby-identifier { color: #ffdead; background: transparent; }
425
+ .ruby-node { color: #ffa07a; background: transparent; }
426
+ .ruby-comment { color: #b22222; font-weight: bold; background: transparent; }
427
+ .ruby-regexp { color: #ffa07a; background: transparent; }
428
+ .ruby-value { color: #7fffd4; background: transparent; }
@@ -20,400 +20,17 @@
20
20
  #
21
21
 
22
22
  # Modified by Christopher Kleckner
23
- # Copyright (c) 2005,2006. Some rights reserved.
23
+ # Copyright (c) 2005,2006,2007. Some rights reserved.
24
24
  # Licensed under the same terms as the original.
25
25
 
26
+ require 'doc/generators/template/html/ugly.rb'
26
27
 
27
28
  module RDoc
28
29
  module Page
29
30
 
30
31
  FONTS = "Verdana,Arial,Helvetica,sans-serif"
31
32
 
32
- STYLE = %{
33
- body {
34
- font-family: Verdana,Arial,Helvetica,sans-serif;
35
- font-size: 90%;
36
- margin: 0;
37
- margin-left: 40px;
38
- padding: 0;
39
- background: white;
40
- }
41
-
42
- h1,h2,h3,h4 { margin: 0; color: #8b4726; background: transparent; }
43
- h1 { font-size: 150%; }
44
- h2 { font-size: 140%; }
45
- h3 { font-size: 130%; }
46
- h4 { font-size: 120%; }
47
- h2,h3,h4 { margin-top: 1em; }
48
-
49
- a {
50
- background: transparent;
51
- color: #8b4500;
52
- text-decoration: none;
53
- }
54
- a:hover {
55
- color: #ffa500;
56
- background: #8b4500;
57
- }
58
-
59
- /* Override the base stylesheet's Anchor inside a table cell */
60
- td > a {
61
- background: transparent;
62
- color: #099;
63
- text-decoration: none;
64
- }
65
-
66
- small {
67
- font-size: 0.7em;
68
- }
69
- /* and inside a section title */
70
- .section-title > a {
71
- background: transparent;
72
- color: #8b4500;
73
- text-decoration: none;
74
- }
75
-
76
- /* === Structural elements =================================== */
77
-
78
- div#index {
79
- margin: 0;
80
- margin-left: -40px;
81
- padding: 0;
82
- font-size: 90%;
83
- background: #ffdead;
84
- }
85
-
86
-
87
- div#index a {
88
- margin-left: 0.7em;
89
- }
90
- div#index-entries a {
91
- background: transparent;
92
- margin-left: 0.7em;
93
- color: #8b4500;
94
- }
95
- div#index-entries a:hover {
96
- background: transparent;
97
- margin-left: 0.7em;
98
- /* color: #ffdead; */
99
- color: #ffdead;
100
- background: #8b4500;
101
- /*background: #ffdead;*/
102
- }
103
- .name-list a {
104
- margin-left: 0.7em;
105
- background: #ffdead;
106
- color: #8b4500;
107
- }
108
- .name-list a:hover {
109
- margin-left: 0.7em;
110
- color: #ffdead;
111
- background: #8b4500;
112
- }
113
- .section-bar {
114
- color: #555;
115
- /* background: #8b4500; */
116
-
117
- border-bottom: 1px solid #999;
118
- margin-left: -20px;
119
- }
120
-
121
- div#index .section-bar {
122
- margin-left: 0px;
123
- padding-left: 0.7em;
124
- background: #8b4500;
125
- color: #ffdead;
126
- font-size: small;
127
- }
128
-
129
-
130
- .section-title {
131
- /*background: #8b4500; */
132
- background: #ffdead;
133
- color: #eee;
134
- padding: 3px;
135
- margin-top: 2em;
136
- margin-left: -30px;
137
- border: 1px solid #999;
138
- }
139
-
140
- div#classHeader, div#fileHeader {
141
- width: auto;
142
- color: white;
143
- padding: 0.5em 1.5em 0.5em 1.5em;
144
- margin: 0;
145
- margin-left: -40px;
146
- border-bottom: 3px solid #006;
147
- }
148
-
149
- div#classHeader a, div#fileHeader a {
150
- background: inherit;
151
- color: white;
152
- }
153
-
154
- div#classHeader td, div#fileHeader td {
155
- background: inherit;
156
- color: white;
157
- }
158
-
159
-
160
- div#fileHeader {
161
- background: #8b4500;
162
-
163
- }
164
- #fileHeader h1,#fileHeader h2,#fileHeader h3,#fileHeader h4 {
165
- margin: 0;
166
- color: #ffdead;
167
- }
168
-
169
- div#classHeader {
170
- background: #8b4500;
171
- }
172
- td.class-header-space-col {
173
- width: 2em;
174
- }
175
-
176
-
177
- .class-mod {
178
- font-size: 110%;
179
- font-weight: bold;
180
- font-family: monospace;
181
- text-transform: lowercase;
182
- text-align: bottom;
183
-
184
- }
185
- .class-name-in-header {
186
- font-size: 150%;
187
- font-weight: bold;
188
- font-family: monospace;
189
- }
190
- .in-url {
191
- font-size: 80%
192
- }
193
-
194
- div#bodyContent {
195
- padding: 0 1.5em 0 1.5em;
196
- }
197
-
198
-
199
- div#description {
200
- padding: 0.5em 1.5em;
201
- /* background: #efefef; */
202
- background: #ffdead;
203
- border: 1px dotted #999;
204
- }
205
-
206
- div#description h1,h2,h3,h4,h5,h6 {
207
- color: #8b4500;
208
- background: transparent;
209
- }
210
-
211
- div#validator-badges {
212
- text-align: center;
213
- }
214
- div#validator-badges img { border: 0; }
215
-
216
- div#copyright {
217
- color: #333;
218
- background: #efefef;
219
- font: 0.75em sans-serif;
220
- margin-top: 5em;
221
- margin-bottom: 0;
222
- padding: 0.5em 2em;
223
- }
224
-
225
-
226
- /* === Classes =================================== */
227
-
228
- table.header-table {
229
- color: white;
230
- font-size: small;
231
- }
232
-
233
- .type-note {
234
- font-size: small;
235
- color: #DEDEDE;
236
- }
237
-
238
- .xxsection-bar {
239
- background: #eee;
240
- color: #333;
241
- padding: 3px;
242
- }
243
-
244
-
245
-
246
- .section-title {
247
- background: #79a;
248
- color: #eee;
249
- padding: 3px;
250
- margin-top: 2em;
251
- margin-left: -30px;
252
- border: 1px solid #999;
253
- }
254
-
255
- .top-aligned-row { vertical-align: top }
256
- .bottom-aligned-row { vertical-align: bottom }
257
-
258
- /* --- Context section classes ----------------------- */
259
-
260
- .context-row { }
261
- .context-item-name { font-family: monospace; font-weight: bold; color: black; }
262
- .context-item-value { font-size: small; color: #448; }
263
- .context-item-desc { color: #333; padding-left: 2em; }
264
-
265
- /* --- Method classes -------------------------- */
266
- .method-detail {
267
- background: #ffdead;
268
- padding: 0;
269
- margin-top: 0.5em;
270
- margin-bottom: 1em;
271
- border: 1px dotted #ccc;
272
- }
273
- .method-heading {
274
- font-family: monospace;
275
- font-weight: bold;
276
- font-size: 130%;
277
- color: #191970;
278
- /* background: #b0c4de; */
279
- background: #ffa07a;
280
- border-bottom: 1px solid #666;
281
- padding: 0.2em 0.5em 0 0.5em;
282
- }
283
- .method-heading a {
284
- text-decoration: none;
285
- }
286
- .method-heading a:hover {
287
- text-decoration: underline;
288
- background: inherit;
289
- color: inherit;
290
- }
291
- .method-signature { color: black; background: inherit; }
292
- .method-name { font-weight: bold; }
293
- .method-args { font-style: italic; }
294
-
295
- .method-description { padding: 0 0.5em 0 0.5em; }
296
- pre.method-description
297
- {
298
- padding: 0 0.5em 0 0.5em;
299
- color: #ee2222;
300
-
301
- }
302
- #description pre
303
- {
304
- padding: 0.2em 0 0.2em 0;
305
- margin: 0.3em 0 0.3em 0;
306
- background: #fff8dc;
307
- border-left: 2px solid #8b6508;
308
- /* border-bottom: 1px solid #8b6508; */
309
- /* border-top: 1px solid #8b6508; */
310
- }
311
- #description h1 {
312
- color: #8b4500;
313
- margin: 0.5em 0 0.2em 0;
314
- /*border: 1px solid red;*/
315
- }
316
- #description h2 {
317
- color: #8b4500;
318
- margin: 0.5em 0 0.2em 0;
319
- /*border: 1px solid red;*/
320
- }
321
- #description h3 {
322
- color: #8b4500;
323
- margin: 0.5em 0 0.2em 0;
324
- /*border: 1px solid red;*/
325
- }
326
- #description h4 {
327
- color: #8b4500;
328
- margin: 0.5em 0 0.2em 0;
329
- /*border: 1px solid red;*/
330
- }
331
- #description p {
332
- margin: 0.5em 0 0.2em 0;
333
- /*border: 1px solid red;*/
334
- }
335
- #description ul {
336
- margin: 0.2em 0 0.5em 0;
337
- /* border: 1px solid red; */
338
- }
339
- #description a {
340
- background: #ffdead;
341
- /* background: #eef; */
342
- color: #8b4500;
343
- text-decoration: none;
344
- }
345
- #description a:hover { text-decoration: underline; }
346
- .method-description a {
347
- background: #ffdead;
348
- /* background: #eef; */
349
- color: #8b4500;
350
- text-decoration: none;
351
- }
352
- .method-description a:hover { text-decoration: underline; }
353
-
354
- .method-description pre
355
- {
356
- padding: 0.2em 0 0.2em 0;
357
- margin: 0.3em 0 0.3em 0;
358
- background: #fff8dc;
359
- border-left: 2px solid #8b6508;
360
- }
361
-
362
- .method-description table
363
- {
364
- border-top: 1px solid brown;
365
- border-bottom: 1px solid brown;
366
- margin: 0.4em 2em 0.4em 2em;
367
- }
368
- .method-description li
369
- {
370
- padding: 0 0 0 0;
371
- margin: 0 0 0 0;
372
-
373
- }
374
- .method-description p {
375
- margin: 0.5em 0 0.2em 0;
376
- /* border: 1px solid red; */
377
- }
378
- .method-description tt {
379
- margin: 0.5em 0 0.2em 0;
380
- font-weight: bold;
381
- color: navy;
382
- }
383
- .method-description ul {
384
- margin: 0.2em 0 0.5em 0;
385
- /* border: 1px solid red; */
386
- }
387
-
388
-
389
- /* --- Source code sections -------------------- */
390
-
391
- a.source-toggle { font-size: 90%; }
392
- div.method-source-code {
393
- background: #262626;
394
- color: #ffdead;
395
- margin: 1em;
396
- padding: 0.5em;
397
- border: 1px dashed #999;
398
- overflow: hidden;
399
- }
400
-
401
- div.method-source-code pre { color: #ffdead; overflow: hidden; }
402
-
403
- /* --- Ruby keyword styles --------------------- */
404
-
405
- .standalone-code { background: #221111; color: #ffdead; overflow: hidden; }
406
-
407
- .ruby-constant { color: #7fffd4; background: transparent; }
408
- .ruby-keyword { color: #00ffff; background: transparent; }
409
- .ruby-ivar { color: #eedd82; background: transparent; }
410
- .ruby-operator { color: #00ffee; background: transparent; }
411
- .ruby-identifier { color: #ffdead; background: transparent; }
412
- .ruby-node { color: #ffa07a; background: transparent; }
413
- .ruby-comment { color: #b22222; font-weight: bold; background: transparent; }
414
- .ruby-regexp { color: #ffa07a; background: transparent; }
415
- .ruby-value { color: #7fffd4; background: transparent; }
416
- }
33
+ STYLE = IO.read('doc/generators/template/html/rio.css')
417
34
 
418
35
 
419
36
  #####################################################################
@@ -483,7 +100,7 @@ CONTEXT_CONTENT = %{
483
100
  #####################################################################
484
101
  FOOTER = %{
485
102
  <div id="validator-badges">
486
- <p><small>Copyright &copy; 2005, 2006 Christopher Kleckner. <a href="http://www.gnu.org/licenses/gpl.html">All rights reserved</a>.</small></p>
103
+ <p><small>Copyright &copy; 2005,2006,2007 Christopher Kleckner. <a href="http://www.gnu.org/licenses/gpl.html">All rights reserved</a>.</small></p>
487
104
  </div>
488
105
 
489
106
  </body>
@@ -617,7 +234,6 @@ END:methods
617
234
  </div>
618
235
  ENDIF:methods
619
236
 
620
- </div>
621
237
 
622
238
 
623
239
  <!-- if includes -->
@@ -626,9 +242,13 @@ IF:includes
626
242
  <h3 class="section-bar">Included Modules</h3>
627
243
 
628
244
  <div id="includes-list">
245
+ <ul class="includes-ul">
629
246
  START:includes
630
- <span class="include-name">HREF:aref:name:</span>
247
+ <li class="include-li">
248
+ <span class="include-name">HREF:aref:name:</span>
249
+ </li>
631
250
  END:includes
251
+ </ul>
632
252
  </div>
633
253
  </div>
634
254
  ENDIF:includes
@@ -780,6 +400,7 @@ END:method_list
780
400
  </div>
781
401
  ENDIF:method_list
782
402
  END:sections
403
+ </div>
783
404
  }
784
405
  #def mlist(*args)
785
406
  #p(args)
@@ -875,6 +496,14 @@ INDEX = %{<?xml version="1.0" encoding="%charset%"?>
875
496
  <head>
876
497
  <title>%title%</title>
877
498
  <meta http-equiv="Content-Type" content="text/html; charset=%charset%" />
499
+ <meta name="Description" content="Rio is a Ruby I/O convenience class wrapping
500
+ much of the functionality
501
+ of IO, File and Dir. Rio also uses FileUtils, Tempfile, StringIO,
502
+ OpenURI, Net::FTP, Zlib, and CSV to provide similar functionality
503
+ using a simple consistent interface. In addition to forwarding the
504
+ interfaces provided by IO, File, and Dir to an appropriate object, Rio
505
+ provides a 'grande' interface that allows many common application
506
+ level I/O and file-system tasks to be expressed succinctly."/>
878
507
  </head>
879
508
  <frameset rows="20%, 80%">
880
509
  <frameset cols="25%,35%,45%">