rubyosa19 0.5.4 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,696 +0,0 @@
1
- #
2
- # Note: this is the original default RDoc template slightly modified for the
3
- # RubyOSA project.
4
- #
5
- # = CSS2 RDoc HTML template
6
- #
7
- # This is a template for RDoc that uses XHTML 1.0 Transitional and dictates a
8
- # bit more of the appearance of the output to cascading stylesheets than the
9
- # default. It was designed for clean inline code display, and uses DHTMl to
10
- # toggle the visbility of each method's source with each click on the '[source]'
11
- # link.
12
- #
13
- # == Authors
14
- #
15
- # * Michael Granger <ged@FaerieMUD.org>
16
- #
17
- # Copyright (c) 2002, 2003 The FaerieMUD Consortium. Some rights reserved.
18
- #
19
- # This work is licensed under the Creative Commons Attribution License. To view
20
- # a copy of this license, visit http://creativecommons.org/licenses/by/1.0/ or
21
- # send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California
22
- # 94305, USA.
23
- #
24
-
25
- module RDoc
26
- module Page
27
-
28
- FONTS = "Verdana,Arial,Helvetica,sans-serif"
29
-
30
- STYLE = %{
31
- body {
32
- font-family: Verdana,Arial,Helvetica,sans-serif;
33
- font-size: 90%;
34
- margin: 0;
35
- margin-left: 40px;
36
- padding: 0;
37
- background: white;
38
- }
39
-
40
- h1,h2,h3,h4 { margin: 0; color: #efefef; background: transparent; }
41
- h1 { font-size: 150%; }
42
- h2,h3,h4 { margin-top: 1em; }
43
-
44
- a { background: #eef; color: #039; text-decoration: none; }
45
- a:hover { background: #039; color: #eef; }
46
-
47
- /* Override the base stylesheet's Anchor inside a table cell */
48
- td > a {
49
- background: transparent;
50
- color: #039;
51
- text-decoration: none;
52
- }
53
-
54
- /* and inside a section title */
55
- .section-title > a {
56
- background: transparent;
57
- color: #eee;
58
- text-decoration: none;
59
- }
60
-
61
- /* === Structural elements =================================== */
62
-
63
- div#index {
64
- margin: 0;
65
- margin-left: -40px;
66
- padding: 0;
67
- font-size: 90%;
68
- }
69
-
70
-
71
- div#index a {
72
- margin-left: 0.7em;
73
- }
74
-
75
- div#index .section-bar {
76
- margin-left: 0px;
77
- padding-left: 0.7em;
78
- background: #ccc;
79
- font-size: small;
80
- }
81
-
82
-
83
- div#classHeader, div#fileHeader {
84
- width: auto;
85
- color: white;
86
- padding: 0.5em 1.5em 0.5em 1.5em;
87
- margin: 0;
88
- margin-left: -40px;
89
- border-bottom: 3px solid #006;
90
- }
91
-
92
- div#classHeader a, div#fileHeader a {
93
- background: inherit;
94
- color: white;
95
- }
96
-
97
- div#classHeader td, div#fileHeader td {
98
- background: inherit;
99
- color: white;
100
- }
101
-
102
-
103
- div#fileHeader {
104
- background: #057;
105
- }
106
-
107
- div#classHeader {
108
- background: #048;
109
- }
110
-
111
-
112
- .class-name-in-header {
113
- font-size: 180%;
114
- font-weight: bold;
115
- }
116
-
117
-
118
- div#bodyContent {
119
- padding: 0 1.5em 0 1.5em;
120
- }
121
-
122
- div#description {
123
- padding: 0.5em 1.5em;
124
- background: #efefef;
125
- border: 1px dotted #999;
126
- }
127
-
128
- div#description h1,h2,h3,h4,h5,h6 {
129
- color: #125;;
130
- background: transparent;
131
- }
132
-
133
- div#validator-badges {
134
- text-align: center;
135
- }
136
- div#validator-badges img { border: 0; }
137
-
138
- div#copyright {
139
- color: #333;
140
- background: #efefef;
141
- font: 0.75em sans-serif;
142
- margin-top: 5em;
143
- margin-bottom: 0;
144
- padding: 0.5em 2em;
145
- }
146
-
147
-
148
- /* === Classes =================================== */
149
-
150
- table.header-table {
151
- color: white;
152
- font-size: small;
153
- }
154
-
155
- .type-note {
156
- font-size: small;
157
- color: #DEDEDE;
158
- }
159
-
160
- .xxsection-bar {
161
- background: #eee;
162
- color: #333;
163
- padding: 3px;
164
- }
165
-
166
- .section-bar {
167
- color: #333;
168
- border-bottom: 1px solid #999;
169
- margin-left: -20px;
170
- }
171
-
172
-
173
- .section-title {
174
- background: #79a;
175
- color: #eee;
176
- padding: 3px;
177
- margin-top: 2em;
178
- margin-left: -30px;
179
- border: 1px solid #999;
180
- }
181
-
182
- .top-aligned-row { vertical-align: top }
183
- .bottom-aligned-row { vertical-align: bottom }
184
-
185
- /* --- Context section classes ----------------------- */
186
-
187
- .context-row { }
188
- .context-item-name { font-family: monospace; font-weight: bold; color: black; }
189
- .context-item-value { font-size: small; color: #448; }
190
- .context-item-desc { color: #333; padding-left: 2em; }
191
-
192
- /* --- Method classes -------------------------- */
193
- .method-detail {
194
- background: #efefef;
195
- padding: 0;
196
- margin-top: 0.5em;
197
- margin-bottom: 1em;
198
- border: 1px dotted #ccc;
199
- }
200
- .method-heading {
201
- color: black;
202
- background: #ccc;
203
- border-bottom: 1px solid #666;
204
- padding: 0.2em 0.5em 0 0.5em;
205
- }
206
- .method-signature { color: black; background: inherit; }
207
- .method-name { font-weight: bold; }
208
- .method-args { font-style: italic; }
209
- .method-description { padding: 0 0.5em 0 0.5em; }
210
-
211
- /* --- Source code sections -------------------- */
212
-
213
- a.source-toggle { font-size: 90%; }
214
- div.method-source-code {
215
- background: #262626;
216
- color: #ffdead;
217
- margin: 1em;
218
- padding: 0.5em;
219
- border: 1px dashed #999;
220
- overflow: hidden;
221
- }
222
-
223
- div.method-source-code pre { color: #ffdead; overflow: hidden; }
224
-
225
- /* --- Ruby keyword styles --------------------- */
226
-
227
- .standalone-code { background: #221111; color: #ffdead; overflow: hidden; }
228
-
229
- .ruby-constant { color: #7fffd4; background: transparent; }
230
- .ruby-keyword { color: #00ffff; background: transparent; }
231
- .ruby-ivar { color: #eedd82; background: transparent; }
232
- .ruby-operator { color: #00ffee; background: transparent; }
233
- .ruby-identifier { color: #ffdead; background: transparent; }
234
- .ruby-node { color: #ffa07a; background: transparent; }
235
- .ruby-comment { color: #b22222; font-weight: bold; background: transparent; }
236
- .ruby-regexp { color: #ffa07a; background: transparent; }
237
- .ruby-value { color: #7fffd4; background: transparent; }
238
- }
239
-
240
-
241
- #####################################################################
242
- ### H E A D E R T E M P L A T E
243
- #####################################################################
244
-
245
- XHTML_PREAMBLE = %{<?xml version="1.0" encoding="%charset%"?>
246
- <!DOCTYPE html
247
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
248
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
249
- }
250
-
251
- HEADER = XHTML_PREAMBLE + %{
252
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
253
- <head>
254
- <title>%title%</title>
255
- <meta http-equiv="Content-Type" content="text/html; charset=%charset%" />
256
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
257
- <link rel="stylesheet" href="%style_url%" type="text/css" media="screen" />
258
- <script type="text/javascript">
259
- // <![CDATA[
260
-
261
- function popupCode( url ) {
262
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
263
- }
264
-
265
- function toggleCode( id ) {
266
- if ( document.getElementById )
267
- elem = document.getElementById( id );
268
- else if ( document.all )
269
- elem = eval( "document.all." + id );
270
- else
271
- return false;
272
-
273
- elemStyle = elem.style;
274
-
275
- if ( elemStyle.display != "block" ) {
276
- elemStyle.display = "block"
277
- } else {
278
- elemStyle.display = "none"
279
- }
280
-
281
- return true;
282
- }
283
-
284
- // Make codeblocks hidden by default
285
- document.writeln( "<style type=\\"text/css\\">div.method-source-code { display: none }</style>" )
286
-
287
- // ]]>
288
- </script>
289
-
290
- </head>
291
- <body>
292
- }
293
-
294
-
295
- #####################################################################
296
- ### C O N T E X T C O N T E N T T E M P L A T E
297
- #####################################################################
298
-
299
- CONTEXT_CONTENT = %{
300
- }
301
-
302
-
303
- #####################################################################
304
- ### F O O T E R T E M P L A T E
305
- #####################################################################
306
- FOOTER = %{
307
- <div id="validator-badges">
308
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
309
- </div>
310
-
311
- </body>
312
- </html>
313
- }
314
-
315
-
316
- #####################################################################
317
- ### F I L E P A G E H E A D E R T E M P L A T E
318
- #####################################################################
319
-
320
- FILE_PAGE = %{
321
- <div id="fileHeader">
322
- <h1>%short_name%</h1>
323
- <table class="header-table">
324
- <tr class="top-aligned-row">
325
- <td><strong>Path:</strong></td>
326
- <td>%full_path%
327
- IF:cvsurl
328
- &nbsp;(<a href="%cvsurl%"><acronym title="Concurrent Versioning System">CVS</acronym></a>)
329
- ENDIF:cvsurl
330
- </td>
331
- </tr>
332
- <tr class="top-aligned-row">
333
- <td><strong>Last Update:</strong></td>
334
- <td>%dtm_modified%</td>
335
- </tr>
336
- </table>
337
- </div>
338
- }
339
-
340
-
341
- #####################################################################
342
- ### C L A S S P A G E H E A D E R T E M P L A T E
343
- #####################################################################
344
-
345
- CLASS_PAGE = %{
346
- <div id="classHeader">
347
- <table class="header-table">
348
- <tr class="top-aligned-row">
349
- <td><strong>%classmod%</strong></td>
350
- <td class="class-name-in-header">%full_name%</td>
351
- </tr>
352
- <!--
353
- <tr class="top-aligned-row">
354
- <td><strong>In:</strong></td>
355
- <td>
356
- START:infiles
357
- IF:full_path_url
358
- <a href="%full_path_url%">
359
- ENDIF:full_path_url
360
- %full_path%
361
- IF:full_path_url
362
- </a>
363
- ENDIF:full_path_url
364
- IF:cvsurl
365
- &nbsp;(<a href="%cvsurl%"><acronym title="Concurrent Versioning System">CVS</acronym></a>)
366
- ENDIF:cvsurl
367
- <br />
368
- END:infiles
369
- </td>
370
- </tr>
371
- -->
372
-
373
- IF:parent
374
- <tr class="top-aligned-row">
375
- <td><strong>Parent:</strong></td>
376
- <td>
377
- IF:par_url
378
- <a href="%par_url%">
379
- ENDIF:par_url
380
- %parent%
381
- IF:par_url
382
- </a>
383
- ENDIF:par_url
384
- </td>
385
- </tr>
386
- ENDIF:parent
387
- </table>
388
- </div>
389
- }
390
-
391
-
392
- #####################################################################
393
- ### M E T H O D L I S T T E M P L A T E
394
- #####################################################################
395
-
396
- METHOD_LIST = %{
397
-
398
- <div id="contextContent">
399
- IF:diagram
400
- <div id="diagram">
401
- %diagram%
402
- </div>
403
- ENDIF:diagram
404
-
405
- IF:description
406
- <div id="description">
407
- %description%
408
- </div>
409
- ENDIF:description
410
-
411
- IF:requires
412
- <div id="requires-list">
413
- <h3 class="section-bar">Required files</h3>
414
-
415
- <div class="name-list">
416
- START:requires
417
- HREF:aref:name:&nbsp;&nbsp;
418
- END:requires
419
- </div>
420
- </div>
421
- ENDIF:requires
422
-
423
- IF:toc
424
- <div id="contents-list">
425
- <h3 class="section-bar">Contents</h3>
426
- <ul>
427
- START:toc
428
- <li><a href="#%href%">%secname%</a></li>
429
- END:toc
430
- </ul>
431
- ENDIF:toc
432
- </div>
433
-
434
- IF:methods
435
- <div id="method-list">
436
- <h3 class="section-bar">Methods</h3>
437
-
438
- <div class="name-list">
439
- START:methods
440
- HREF:aref:name:&nbsp;&nbsp;
441
- END:methods
442
- </div>
443
- </div>
444
- ENDIF:methods
445
-
446
- </div>
447
-
448
-
449
- <!-- if includes -->
450
- IF:includes
451
- <div id="includes">
452
- <h3 class="section-bar">Included Modules</h3>
453
-
454
- <div id="includes-list">
455
- START:includes
456
- <span class="include-name">HREF:aref:name:</span>
457
- END:includes
458
- </div>
459
- </div>
460
- ENDIF:includes
461
-
462
- START:sections
463
- <div id="section">
464
- IF:sectitle
465
- <h2 class="section-title"><a name="%secsequence%">%sectitle%</a></h2>
466
- IF:seccomment
467
- <div class="section-comment">
468
- %seccomment%
469
- </div>
470
- ENDIF:seccomment
471
- ENDIF:sectitle
472
-
473
- IF:classlist
474
- <div id="class-list">
475
- <h3 class="section-bar">Classes and Modules</h3>
476
-
477
- %classlist%
478
- </div>
479
- ENDIF:classlist
480
-
481
- IF:constants
482
- <div id="constants-list">
483
- <h3 class="section-bar">Constants</h3>
484
-
485
- <div class="name-list">
486
- <table summary="Constants">
487
- START:constants
488
- <tr class="top-aligned-row context-row">
489
- <td class="context-item-name">%name%</td>
490
- <td>=</td>
491
- <td class="context-item-value">%value%</td>
492
- IF:desc
493
- <td width="3em">&nbsp;</td>
494
- <td class="context-item-desc">%desc%</td>
495
- ENDIF:desc
496
- </tr>
497
- END:constants
498
- </table>
499
- </div>
500
- </div>
501
- ENDIF:constants
502
-
503
- IF:aliases
504
- <div id="aliases-list">
505
- <h3 class="section-bar">External Aliases</h3>
506
-
507
- <div class="name-list">
508
- <table summary="aliases">
509
- START:aliases
510
- <tr class="top-aligned-row context-row">
511
- <td class="context-item-name">%old_name%</td>
512
- <td>-&gt;</td>
513
- <td class="context-item-value">%new_name%</td>
514
- </tr>
515
- IF:desc
516
- <tr class="top-aligned-row context-row">
517
- <td>&nbsp;</td>
518
- <td colspan="2" class="context-item-desc">%desc%</td>
519
- </tr>
520
- ENDIF:desc
521
- END:aliases
522
- </table>
523
- </div>
524
- </div>
525
- ENDIF:aliases
526
-
527
-
528
- IF:attributes
529
- <div id="attribute-list">
530
- <h3 class="section-bar">Attributes</h3>
531
-
532
- <div class="name-list">
533
- <table>
534
- START:attributes
535
- <tr class="top-aligned-row context-row">
536
- <td class="context-item-name">%name%</td>
537
- IF:rw
538
- <td class="context-item-value">&nbsp;[%rw%]&nbsp;</td>
539
- ENDIF:rw
540
- IFNOT:rw
541
- <td class="context-item-value">&nbsp;&nbsp;</td>
542
- ENDIF:rw
543
- <td class="context-item-desc">%a_desc%</td>
544
- </tr>
545
- END:attributes
546
- </table>
547
- </div>
548
- </div>
549
- ENDIF:attributes
550
-
551
-
552
-
553
- <!-- if method_list -->
554
- IF:method_list
555
- <div id="methods">
556
- START:method_list
557
- IF:methods
558
- <h3 class="section-bar">%type% %category% methods</h3>
559
-
560
- START:methods
561
- <div id="method-%aref%" class="method-detail">
562
- <a name="%aref%"></a>
563
-
564
- <div class="method-heading">
565
- IF:callseq
566
- <span class="method-name">%callseq%</span>
567
- ENDIF:callseq
568
- IFNOT:callseq
569
- <span class="method-name">%name%</span><span class="method-args">%params%</span>
570
- ENDIF:callseq
571
- IF:codeurl
572
- </a>
573
- ENDIF:codeurl
574
- </div>
575
-
576
- <div class="method-description">
577
- IF:m_desc
578
- %m_desc%
579
- ENDIF:m_desc
580
- </div>
581
- </div>
582
-
583
- END:methods
584
- ENDIF:methods
585
- END:method_list
586
-
587
- </div>
588
- ENDIF:method_list
589
- END:sections
590
- }
591
-
592
-
593
- #####################################################################
594
- ### B O D Y T E M P L A T E
595
- #####################################################################
596
-
597
- BODY = HEADER + %{
598
-
599
- !INCLUDE! <!-- banner header -->
600
-
601
- <div id="bodyContent">
602
-
603
- } + METHOD_LIST + %{
604
-
605
- </div>
606
-
607
- } + FOOTER
608
-
609
-
610
-
611
- #####################################################################
612
- ### S O U R C E C O D E T E M P L A T E
613
- #####################################################################
614
-
615
- SRC_PAGE = XHTML_PREAMBLE + %{
616
- <html>
617
- <head>
618
- <title>%title%</title>
619
- <meta http-equiv="Content-Type" content="text/html; charset=%charset%" />
620
- <link rel="stylesheet" href="%style_url%" type="text/css" media="screen" />
621
- </head>
622
- <body class="standalone-code">
623
- <pre>%code%</pre>
624
- </body>
625
- </html>
626
- }
627
-
628
-
629
- #####################################################################
630
- ### I N D E X F I L E T E M P L A T E S
631
- #####################################################################
632
-
633
- FR_INDEX_BODY = %{
634
- !INCLUDE!
635
- }
636
-
637
- FILE_INDEX = XHTML_PREAMBLE + %{
638
- <!--
639
-
640
- %list_title%
641
-
642
- -->
643
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
644
- <head>
645
- <title>%list_title%</title>
646
- <meta http-equiv="Content-Type" content="text/html; charset=%charset%" />
647
- <link rel="stylesheet" href="%style_url%" type="text/css" />
648
- <base target="docwin" />
649
- </head>
650
- <body>
651
- <div id="index">
652
- <h1 class="section-bar">%list_title%</h1>
653
- <div id="index-entries">
654
- START:entries
655
- <a href="%href%">%name%</a><br />
656
- END:entries
657
- </div>
658
- </div>
659
- </body>
660
- </html>
661
- }
662
-
663
- CLASS_INDEX = FILE_INDEX
664
- METHOD_INDEX = FILE_INDEX
665
-
666
- INDEX = %{<?xml version="1.0" encoding="%charset%"?>
667
- <!DOCTYPE html
668
- PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
669
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
670
-
671
- <!--
672
-
673
- %title%
674
-
675
- -->
676
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
677
- <head>
678
- <title>%title%</title>
679
- <meta http-equiv="Content-Type" content="text/html; charset=%charset%" />
680
- </head>
681
- <frameset rows="20%, 80%">
682
- <frameset cols="50%,50%">
683
- <frame src="fr_class_index.html" name="Classes" />
684
- <frame src="fr_method_index.html" name="Methods" />
685
- </frameset>
686
- <frame src="%initial_page%" name="docwin" />
687
- </frameset>
688
- </html>
689
- }
690
-
691
-
692
-
693
- end # module Page
694
- end # class RDoc
695
-
696
- require 'rdoc/generators/template/html/one_page_html'
@@ -1,31 +0,0 @@
1
- # Print all the contacts your Address Book contains.
2
- # Thanks to Stefan Saasen.
3
-
4
- begin require 'rubygems'; rescue LoadError; end
5
- require 'rbosa'
6
-
7
- OSA.utf8_strings = true
8
-
9
- def print_person(pe)
10
- puts pe.name
11
- unless pe.emails.size < 1
12
- puts "\tE-Mail: " + pe.emails.map { |email|
13
- email.value
14
- }.join(', ')
15
- end
16
- formatted_addresses = pe.addresses.map { |a|
17
- # Some malformed addresses can't be formatted and the address book
18
- # will therefore return an application-level error, that we handle there.
19
- ('(' + a.label + ') ' + a.formatted_address rescue nil)
20
- }.compact.map { |a|
21
- "\t\t" + a.gsub(/\n/, ' ').strip.squeeze(' ')
22
- }
23
- unless formatted_addresses.size < 1
24
- puts "\tAddresses:\n" + formatted_addresses.join("\n")
25
- end
26
- end
27
-
28
- ab = OSA.app('Address Book')
29
- ab.people.each do |pe|
30
- print_person pe
31
- end