distil 0.14.4 → 0.14.5.a

Sign up to get free protection for your applications and to get access to all the features.
Files changed (157) hide show
  1. data/VERSION +1 -1
  2. data/bin/distil +10 -0
  3. data/lib/distil/project.rb +10 -7
  4. data/lib/distil/source-file.rb +1 -1
  5. metadata +28 -164
  6. data/Buildfile +0 -33
  7. data/distil.gemspec +0 -783
  8. data/lib/distil/javascript-documentation-generator.rb +0 -49
  9. data/vendor/pdoc/LICENSE +0 -16
  10. data/vendor/pdoc/PDoc.tmbundle/Commands/Continue PDoc Comment.tmCommand +0 -39
  11. data/vendor/pdoc/PDoc.tmbundle/Macros/Collapse PDoc Blocks.tmMacro +0 -4084
  12. data/vendor/pdoc/PDoc.tmbundle/Macros/Expand PDoc Blocks.tmMacro +0 -1388
  13. data/vendor/pdoc/PDoc.tmbundle/Preferences/PDoc.tmPreferences +0 -50
  14. data/vendor/pdoc/PDoc.tmbundle/Snippets/class.tmSnippet +0 -24
  15. data/vendor/pdoc/PDoc.tmbundle/Snippets/constant.tmSnippet +0 -22
  16. data/vendor/pdoc/PDoc.tmbundle/Snippets/event.tmSnippet +0 -16
  17. data/vendor/pdoc/PDoc.tmbundle/Snippets/method.tmSnippet +0 -22
  18. data/vendor/pdoc/PDoc.tmbundle/Snippets/mixin.tmSnippet +0 -23
  19. data/vendor/pdoc/PDoc.tmbundle/Snippets/namespace.tmSnippet +0 -24
  20. data/vendor/pdoc/PDoc.tmbundle/Snippets/param.tmSnippet +0 -16
  21. data/vendor/pdoc/PDoc.tmbundle/Snippets/property.tmSnippet +0 -22
  22. data/vendor/pdoc/PDoc.tmbundle/Snippets/section.tmSnippet +0 -23
  23. data/vendor/pdoc/PDoc.tmbundle/Syntaxes/PDoc.tmLanguage +0 -33
  24. data/vendor/pdoc/PDoc.tmbundle/info.plist +0 -22
  25. data/vendor/pdoc/README.markdown +0 -34
  26. data/vendor/pdoc/Rakefile +0 -46
  27. data/vendor/pdoc/bin/pdoc +0 -58
  28. data/vendor/pdoc/lib/pdoc.rb +0 -32
  29. data/vendor/pdoc/lib/pdoc/error.rb +0 -4
  30. data/vendor/pdoc/lib/pdoc/generators.rb +0 -6
  31. data/vendor/pdoc/lib/pdoc/generators/abstract_generator.rb +0 -16
  32. data/vendor/pdoc/lib/pdoc/generators/html.rb +0 -8
  33. data/vendor/pdoc/lib/pdoc/generators/html/helpers.rb +0 -256
  34. data/vendor/pdoc/lib/pdoc/generators/html/page.rb +0 -71
  35. data/vendor/pdoc/lib/pdoc/generators/html/syntax_highlighter.rb +0 -41
  36. data/vendor/pdoc/lib/pdoc/generators/html/template.rb +0 -37
  37. data/vendor/pdoc/lib/pdoc/generators/html/website.rb +0 -194
  38. data/vendor/pdoc/lib/pdoc/generators/json.rb +0 -15
  39. data/vendor/pdoc/lib/pdoc/generators/pythonesque.rb +0 -105
  40. data/vendor/pdoc/lib/pdoc/models.rb +0 -47
  41. data/vendor/pdoc/lib/pdoc/models/argument.rb +0 -37
  42. data/vendor/pdoc/lib/pdoc/models/base.rb +0 -107
  43. data/vendor/pdoc/lib/pdoc/models/callable.rb +0 -19
  44. data/vendor/pdoc/lib/pdoc/models/class.rb +0 -28
  45. data/vendor/pdoc/lib/pdoc/models/class_method.rb +0 -18
  46. data/vendor/pdoc/lib/pdoc/models/class_property.rb +0 -9
  47. data/vendor/pdoc/lib/pdoc/models/constant.rb +0 -9
  48. data/vendor/pdoc/lib/pdoc/models/constructor.rb +0 -14
  49. data/vendor/pdoc/lib/pdoc/models/container.rb +0 -114
  50. data/vendor/pdoc/lib/pdoc/models/entity.rb +0 -54
  51. data/vendor/pdoc/lib/pdoc/models/instance_method.rb +0 -18
  52. data/vendor/pdoc/lib/pdoc/models/instance_property.rb +0 -9
  53. data/vendor/pdoc/lib/pdoc/models/mixin.rb +0 -10
  54. data/vendor/pdoc/lib/pdoc/models/namespace.rb +0 -10
  55. data/vendor/pdoc/lib/pdoc/models/root.rb +0 -27
  56. data/vendor/pdoc/lib/pdoc/models/section.rb +0 -19
  57. data/vendor/pdoc/lib/pdoc/models/signature.rb +0 -27
  58. data/vendor/pdoc/lib/pdoc/models/utility.rb +0 -11
  59. data/vendor/pdoc/lib/pdoc/parser.rb +0 -109
  60. data/vendor/pdoc/lib/pdoc/parser/argument_description_nodes.rb +0 -21
  61. data/vendor/pdoc/lib/pdoc/parser/basic_nodes.rb +0 -31
  62. data/vendor/pdoc/lib/pdoc/parser/description_nodes.rb +0 -42
  63. data/vendor/pdoc/lib/pdoc/parser/documentation_nodes.rb +0 -483
  64. data/vendor/pdoc/lib/pdoc/parser/ebnf_arguments_nodes.rb +0 -58
  65. data/vendor/pdoc/lib/pdoc/parser/ebnf_expression_nodes.rb +0 -227
  66. data/vendor/pdoc/lib/pdoc/parser/fragment.rb +0 -55
  67. data/vendor/pdoc/lib/pdoc/parser/section_content_nodes.rb +0 -19
  68. data/vendor/pdoc/lib/pdoc/parser/tags_nodes.rb +0 -14
  69. data/vendor/pdoc/lib/pdoc/parser/treetop_files/argument_description.treetop +0 -31
  70. data/vendor/pdoc/lib/pdoc/parser/treetop_files/basic.treetop +0 -41
  71. data/vendor/pdoc/lib/pdoc/parser/treetop_files/description.treetop +0 -7
  72. data/vendor/pdoc/lib/pdoc/parser/treetop_files/documentation.treetop +0 -75
  73. data/vendor/pdoc/lib/pdoc/parser/treetop_files/ebnf_arguments.treetop +0 -33
  74. data/vendor/pdoc/lib/pdoc/parser/treetop_files/ebnf_expression.treetop +0 -70
  75. data/vendor/pdoc/lib/pdoc/parser/treetop_files/ebnf_javascript.treetop +0 -54
  76. data/vendor/pdoc/lib/pdoc/parser/treetop_files/events.treetop +0 -17
  77. data/vendor/pdoc/lib/pdoc/parser/treetop_files/section_content.treetop +0 -8
  78. data/vendor/pdoc/lib/pdoc/parser/treetop_files/tags.treetop +0 -31
  79. data/vendor/pdoc/lib/pdoc/runner.rb +0 -110
  80. data/vendor/pdoc/lib/pdoc/treemaker.rb +0 -94
  81. data/vendor/pdoc/pdoc.gemspec +0 -31
  82. data/vendor/pdoc/templates/html/assets/images/pdoc/alias.png +0 -0
  83. data/vendor/pdoc/templates/html/assets/images/pdoc/class.png +0 -0
  84. data/vendor/pdoc/templates/html/assets/images/pdoc/class_deprecated.png +0 -0
  85. data/vendor/pdoc/templates/html/assets/images/pdoc/class_method.png +0 -0
  86. data/vendor/pdoc/templates/html/assets/images/pdoc/class_property.png +0 -0
  87. data/vendor/pdoc/templates/html/assets/images/pdoc/constant.png +0 -0
  88. data/vendor/pdoc/templates/html/assets/images/pdoc/constructor.png +0 -0
  89. data/vendor/pdoc/templates/html/assets/images/pdoc/deprecated.png +0 -0
  90. data/vendor/pdoc/templates/html/assets/images/pdoc/description.png +0 -0
  91. data/vendor/pdoc/templates/html/assets/images/pdoc/information.png +0 -0
  92. data/vendor/pdoc/templates/html/assets/images/pdoc/instance_method.png +0 -0
  93. data/vendor/pdoc/templates/html/assets/images/pdoc/instance_property.png +0 -0
  94. data/vendor/pdoc/templates/html/assets/images/pdoc/method.png +0 -0
  95. data/vendor/pdoc/templates/html/assets/images/pdoc/method_deprecated.png +0 -0
  96. data/vendor/pdoc/templates/html/assets/images/pdoc/mixin.png +0 -0
  97. data/vendor/pdoc/templates/html/assets/images/pdoc/namespace.png +0 -0
  98. data/vendor/pdoc/templates/html/assets/images/pdoc/property.png +0 -0
  99. data/vendor/pdoc/templates/html/assets/images/pdoc/related_to.png +0 -0
  100. data/vendor/pdoc/templates/html/assets/images/pdoc/search-background.png +0 -0
  101. data/vendor/pdoc/templates/html/assets/images/pdoc/section-background.png +0 -0
  102. data/vendor/pdoc/templates/html/assets/images/pdoc/section.png +0 -0
  103. data/vendor/pdoc/templates/html/assets/images/pdoc/selected-section-background.png +0 -0
  104. data/vendor/pdoc/templates/html/assets/images/pdoc/subclass.png +0 -0
  105. data/vendor/pdoc/templates/html/assets/images/pdoc/superclass.png +0 -0
  106. data/vendor/pdoc/templates/html/assets/images/pdoc/utility.png +0 -0
  107. data/vendor/pdoc/templates/html/assets/javascripts/pdoc/application.js +0 -478
  108. data/vendor/pdoc/templates/html/assets/javascripts/pdoc/prototype.js +0 -4874
  109. data/vendor/pdoc/templates/html/assets/javascripts/pdoc/tabs.js +0 -506
  110. data/vendor/pdoc/templates/html/assets/stylesheets/pdoc/api.css +0 -677
  111. data/vendor/pdoc/templates/html/assets/stylesheets/pdoc/pygments.css +0 -62
  112. data/vendor/pdoc/templates/html/helpers.rb +0 -35
  113. data/vendor/pdoc/templates/html/index.erb +0 -18
  114. data/vendor/pdoc/templates/html/item_index.js.erb +0 -6
  115. data/vendor/pdoc/templates/html/layout.erb +0 -67
  116. data/vendor/pdoc/templates/html/leaf.erb +0 -22
  117. data/vendor/pdoc/templates/html/node.erb +0 -30
  118. data/vendor/pdoc/templates/html/partials/class_relationships.erb +0 -19
  119. data/vendor/pdoc/templates/html/partials/classes.erb +0 -7
  120. data/vendor/pdoc/templates/html/partials/constructor.erb +0 -5
  121. data/vendor/pdoc/templates/html/partials/description.erb +0 -5
  122. data/vendor/pdoc/templates/html/partials/link_list.erb +0 -1
  123. data/vendor/pdoc/templates/html/partials/method_signatures.erb +0 -14
  124. data/vendor/pdoc/templates/html/partials/methodized_note.erb +0 -9
  125. data/vendor/pdoc/templates/html/partials/mixins.erb +0 -7
  126. data/vendor/pdoc/templates/html/partials/namespaces.erb +0 -7
  127. data/vendor/pdoc/templates/html/partials/related_utilities.erb +0 -5
  128. data/vendor/pdoc/templates/html/partials/relationships.erb +0 -11
  129. data/vendor/pdoc/templates/html/partials/short_description_list.erb +0 -7
  130. data/vendor/pdoc/templates/html/partials/title.erb +0 -22
  131. data/vendor/pdoc/templates/html/section.erb +0 -18
  132. data/vendor/pdoc/test/fixtures/ajax.js +0 -809
  133. data/vendor/pdoc/test/fixtures/prototype.js +0 -5789
  134. data/vendor/pdoc/test/fixtures/test.txt +0 -1
  135. data/vendor/pdoc/test/fixtures/text.txt +0 -13
  136. data/vendor/pdoc/test/unit/parser/argument_description_test.rb +0 -40
  137. data/vendor/pdoc/test/unit/parser/basic_test.rb +0 -55
  138. data/vendor/pdoc/test/unit/parser/description_test.rb +0 -34
  139. data/vendor/pdoc/test/unit/parser/documentation_test.rb +0 -520
  140. data/vendor/pdoc/test/unit/parser/ebnf_arguments_test.rb +0 -81
  141. data/vendor/pdoc/test/unit/parser/ebnf_expression_test.rb +0 -382
  142. data/vendor/pdoc/test/unit/parser/ebnf_javascript_test.rb +0 -37
  143. data/vendor/pdoc/test/unit/parser/events_test.rb +0 -27
  144. data/vendor/pdoc/test/unit/parser/section_content_test.rb +0 -44
  145. data/vendor/pdoc/test/unit/parser/tags_test.rb +0 -39
  146. data/vendor/pdoc/test/unit/parser/test_fragment.rb +0 -80
  147. data/vendor/pdoc/test/unit/parser_test_helper.rb +0 -62
  148. data/vendor/pdoc/test/unit/runner/basic_test.rb +0 -14
  149. data/vendor/pdoc/test/unit/templates/html_helpers_test.rb +0 -25
  150. data/vendor/pdoc/vendor/albino.rb +0 -122
  151. data/vendor/pdoc/website/html/documentation.html +0 -280
  152. data/vendor/pdoc/website/html/images/pdoc.jpg +0 -0
  153. data/vendor/pdoc/website/html/index.html +0 -84
  154. data/vendor/pdoc/website/html/stylesheets/main.css +0 -73
  155. data/vendor/pdoc/website/html/stylesheets/reset.css +0 -18
  156. data/vendor/pdoc/website/markdown/syntax.markdown +0 -226
  157. data/yuicompressor-2.4.6.zip +0 -0
@@ -1,280 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
2
- "http://www.w3.org/TR/html4/strict.dtd">
3
-
4
- <html lang="en">
5
- <head>
6
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
7
- <title>PDoc</title>
8
- <meta name="generator" content="TextMate http://macromates.com/">
9
- <meta name="author" content="Tobie Langel">
10
- <!-- Date: 2008-02-25 -->
11
- <link rel="stylesheet" href="/stylesheets/reset.css" type="text/css" media="screen" charset="utf-8">
12
- <link rel="stylesheet" href="/stylesheets/main.css" type="text/css" media="screen" title="no title" charset="utf-8">
13
-
14
- </head>
15
- <body>
16
- <div id="wrapper">
17
- <div id="header">
18
- <h1><a href="/"><img src="/images/pdoc.jpg" alt="PDoc" /></a></h1>
19
- </div>
20
- <div id="navigation">
21
- <ul>
22
- <li><a href="/documentation.html">documentation</a></li>
23
- <li><a href="http://github.com/tobie/pdoc/tree/master">source code</a></li>
24
- <li><a href="http://prototype.lighthouseapp.com/projects/8889-pdoc/">bug tracker</a></li>
25
- <li><a href="http://groups.google.com/group/pdoc">mailing list</a></li>
26
- </ul>
27
- </div>
28
- <div id="content">
29
- <h1 id="documentation">Documentation</h1>
30
-
31
- <h2 id="comments">Comments</h2>
32
-
33
- <p>Documentation comments start with <code>/**</code> and end with <code>**/</code>. Each new line starts with <code>*</code>. </p>
34
-
35
- <pre><code>/** ...
36
- * ...
37
- **/
38
- </code></pre>
39
-
40
- <h2 id="tags">Tags</h2>
41
-
42
- <p>The first line of a comment is reserved for tags. Tags are separated by a comma followed by whitespace (&#8220;, &#8220;). They can be either a tag name or a key / value pair separated by a colon and a space (<code>:</code>).</p>
43
-
44
- <p>Currently accepted tags are: <code>deprecated</code>, <code>section:</code>, <code>alias of:</code>, <code>related to:</code></p>
45
-
46
- <pre><code>/** deprecated, section: DOM, alias of: Element#descendantOf
47
- * Element#childOf(@element, className) -&gt; Element
48
- * ...
49
- **/
50
- </code></pre>
51
-
52
- <h2 id="ebnf">EBNF</h2>
53
-
54
- <p>The lines directly following tags are reserved for the EBNF description of the documented object. Typically, there&#8217;s only one EBNF per documented object. However, some objects might require more than one.</p>
55
-
56
- <pre><code>/**
57
- * Element#down(@element[, cssSelector][, index]) -&gt; Element | null
58
- * ...
59
- **/
60
-
61
- /**
62
- * Element#writeAttribute(@element, attribute[, value = true]) -&gt; Element
63
- * Element#writeAttribute(@element, attributes) -&gt; Element
64
- * ...
65
- **/
66
- </code></pre>
67
-
68
- <h3 id="arguments">Arguments</h3>
69
-
70
- <p>For all methods, functions, etc. parentheses around the arguments are required even if no arguments are present.
71
- The syntax for arguments is as follows:</p>
72
-
73
- <h4 id="required_arguments">required arguments</h4>
74
-
75
- <pre><code>/**
76
- * Event.stop(event) -&gt; Event
77
- * ...
78
- **/
79
- </code></pre>
80
-
81
- <h4 id="optional_arguments">optional arguments</h4>
82
-
83
- <p>Optional arguments are surrounded by squared brackets (<code>[]</code>).</p>
84
-
85
- <pre><code>/**
86
- * String#evalJSON([sanitize]) -&gt; Object | Array
87
- * ...
88
- **/
89
- </code></pre>
90
-
91
- <p>A default value may be indicated using the equal sign (<code>=</code>).</p>
92
-
93
- <pre><code>/**
94
- * String#evalJSON([sanitize = false]) -&gt; Object | Array
95
- * ...
96
- **/
97
- </code></pre>
98
-
99
- <p>Note that the argument separating comas belong <em>inside</em> the brackets.</p>
100
-
101
- <pre><code>/**
102
- * Event.findElement(event[, cssSelector]) -&gt; Element | null
103
- * ...
104
- **/
105
- </code></pre>
106
-
107
- <p>Arguments can be described below the EBNF description using the following syntax:</p>
108
-
109
- <pre><code>- argumentName (acceptedTypes...): description.
110
- </code></pre>
111
-
112
- <p>For example (notice the 4 space indent in the last line): </p>
113
-
114
- <pre><code>/**
115
- * Event.findElement(event[, cssSelector]) -&gt; Element | null
116
- * - event (Event): a native Event instance
117
- * - cssSelector (String): a optional CSS selector which uses
118
- * the same syntax found in regular CSS.
119
- **/
120
- </code></pre>
121
-
122
- <h3 id="supported_ebnf_types">Supported EBNF types</h3>
123
-
124
- <h4 id="namespace">Namespace</h4>
125
-
126
- <pre><code>/**
127
- * Ajax
128
- * ...
129
- **/
130
-
131
- /**
132
- * Prototype.Browser
133
- * ...
134
- **/
135
- </code></pre>
136
-
137
- <h4 id="classes">Classes</h4>
138
-
139
- <p>Classes require a <code>class</code> prefix:</p>
140
-
141
- <pre><code>/**
142
- * class Ajax.Base
143
- * ...
144
- **/
145
- </code></pre>
146
-
147
- <p>Sub-classes can indicate their parent just like in the Ruby syntax:</p>
148
-
149
- <pre><code>/**
150
- * class Ajax.Request &lt; Ajax.Base
151
- * ...
152
- **/
153
- </code></pre>
154
-
155
- <p>Where <code>Ajax.Base</code> is the parent class and <code>Ajax.Request</code> the subclass.</p>
156
-
157
- <p>Included mixins are indicated like so:</p>
158
-
159
- <pre><code>/**
160
- * class CustomHash
161
- * includes Enumerable, Comparable
162
- **/
163
- </code></pre>
164
-
165
- <h4 id="mixins">Mixins</h4>
166
-
167
- <p>Mixins are indicated by a <code>mixin</code> prefix:</p>
168
-
169
- <pre><code>/**
170
- * mixin Enumerable
171
- * ...
172
- **/
173
- </code></pre>
174
-
175
- <h4 id="constructors">Constructors</h4>
176
-
177
- <p>Constructors require the <code>new</code> prefix and their arguments.</p>
178
-
179
- <pre><code>/**
180
- * new Element(tagName[, attributes])
181
- * ...
182
- **/
183
-
184
- /**
185
- * new Foobar()
186
- * ...
187
- **/
188
- </code></pre>
189
-
190
- <h4 id="klass_methods">Klass Methods</h4>
191
-
192
- <p>Klass methods are identified by a dot (<code>.</code>).</p>
193
-
194
- <pre><code>/**
195
- * Array.from([iterable]) -&gt; Array
196
- * ...
197
- **/
198
- </code></pre>
199
-
200
- <h4 id="instance_methods">Instance Methods</h4>
201
-
202
- <p>Instance methods are identified by the hash symbol (<code>#</code>).</p>
203
-
204
- <pre><code>/**
205
- * Array#first() -&gt; Array element
206
- * ...
207
- **/
208
- </code></pre>
209
-
210
- <h4 id="utilities">Utilities</h4>
211
-
212
- <p>Utilities are global functions starting with a dollar-sign (<code>$</code>).</p>
213
-
214
- <pre><code>/**
215
- * $w(string) -&gt; Array
216
- * ...
217
- **/
218
- </code></pre>
219
-
220
- <h4 id="methodized_methods">Methodized Methods</h4>
221
-
222
- <p>Methodized methods are methods which are both available as a class method and an instance method, in which case the first argument becomes the instance object itself. For example, all of <code>Element</code>&#8217;s instance methods are methodized and thus also available as class methods of <code>Element</code>. Methodized methods are indicated by prefixing their first argument with the <code>@</code> symbol.</p>
223
-
224
- <pre><code>/**
225
- * Element#hide(@element) -&gt; Element
226
- * ...
227
- **/
228
- </code></pre>
229
-
230
- <h4 id="klass_properties">Klass Properties</h4>
231
-
232
- <p>Klass properties are identified by a dot (<code>.</code>).</p>
233
-
234
- <pre><code>/**
235
- * Ajax.Responders.responders -&gt; Array
236
- * ...
237
- **/
238
- </code></pre>
239
-
240
- <h4 id="instance_properties">Instance Properties</h4>
241
-
242
- <p>Instance properties are identified by the hash symbol (<code>#</code>).</p>
243
-
244
- <pre><code>/**
245
- * Ajax.Response#responseText -&gt; String
246
- * ...
247
- **/
248
- </code></pre>
249
-
250
- <h4 id="constants">Constants</h4>
251
-
252
- <p>Constant must have their value specified using the equal sign (<code>=</code>).</p>
253
-
254
- <pre><code>/**
255
- * Prototype.JSONFilter = /^\/\*-secure-([\s\S]*)\*\/\s*$/
256
- * ...
257
- **/
258
- </code></pre>
259
-
260
- <h3 id="events">Events</h3>
261
-
262
- <p>Some methods can fire native or custom events. These are indicated below the arguments descriptions:</p>
263
-
264
- <pre><code>/**
265
- * Ajax.Request#respondToReadyState(readyState) -&gt; undefined
266
- * - readyState (Number): a number from 0 to 4 corresponding to the state of the request.
267
- * fires ajax:created, ajax:completed
268
- **/
269
- </code></pre>
270
-
271
- </div>
272
- <div id="sidebar">
273
-
274
- </div>
275
- <div id="footer">
276
- <p>&copy; 2008 Tobie Langel. PDoc logo &copy; 2008 Sam Stephenson.</p>
277
- </div>
278
- </div>
279
- </body>
280
- </html>
@@ -1,84 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
2
- "http://www.w3.org/TR/html4/strict.dtd">
3
-
4
- <html lang="en">
5
- <head>
6
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
7
- <title>PDoc</title>
8
- <meta name="generator" content="TextMate http://macromates.com/">
9
- <meta name="author" content="Tobie Langel">
10
- <!-- Date: 2008-02-25 -->
11
- <link rel="stylesheet" href="/stylesheets/reset.css" type="text/css" media="screen" charset="utf-8">
12
- <link rel="stylesheet" href="/stylesheets/main.css" type="text/css" media="screen" title="no title" charset="utf-8">
13
-
14
- </head>
15
- <body>
16
- <div id="wrapper">
17
- <div id="header">
18
- <h1><a href="/"><img src="/images/pdoc.jpg" alt="PDoc" /></a></h1>
19
- </div>
20
- <div id="navigation">
21
- <ul>
22
- <li><a href="/documentation.html">documentation</a></li>
23
- <li><a href="http://github.com/tobie/pdoc/tree/master">source code</a></li>
24
- <li><a href="/doc/index.html">rdoc</a></li>
25
- <li><a href="http://prototype.lighthouseapp.com/projects/8889-pdoc/">bug tracker</a></li>
26
- <li><a href="http://groups.google.com/group/pdoc">mailing list</a></li>
27
- </ul>
28
- </div>
29
- <div id="content">
30
- <h1>PDoc</h1>
31
-
32
- <p>PDoc is an inline comment parser and JavaScript documentation generator written in Ruby. It is designed for documenting <a href="http://prototypejs.org">Prototype</a> and Prototype-based libraries.</p>
33
-
34
- <p>PDoc uses <a href="http://treetop.rubyforge.org/">Treetop</a>, a Ruby-based DSL for text parsing and interpretation, and its own ActionView-inspired, ERB-based templating system for HTML generation. Other documentation generators (e.g., DocBook XML) are planned.</p>
35
-
36
- <p>Unlike other inline-doc parsers, PDoc does not rely on the JavaScript source code at all; it only parses the comments. This approach, though slightly more verbose, is much better at generating consistent, reliable documentation, and avoids the headaches encountered when documenting highly dynamic languages.</p>
37
-
38
- <h2>Installation</h2>
39
-
40
- <p>PDoc depends on Rake, <a href="http://maruku.rubyforge.org/">Maruku</a>, and treetop, all of which can be obtained through RubyGems:</p>
41
-
42
- <pre><code>gem install rake maruku treetop
43
- </code></pre>
44
-
45
- <p>Maruku is a more solid alternative to BlueCloth and is compatible with Ruby 1.9.1.</p>
46
-
47
- <h2>Usage</h2>
48
-
49
- <p>For hints on how to run PDoc on the command line, consult the built-in Rake tasks (in <code>Rakefile</code>) and the <code>PDoc::Runner</code> class (in <code>lib/pdoc/runner.rb</code>).</p>
50
-
51
- <h2>How it works</h2>
52
-
53
- <p>The process of turning inline PDoc comments into a human-friendly document has two phases.</p>
54
-
55
- <h3>Parsing phase</h3>
56
-
57
- <p>In this phase, the source files are scanned for PDoc comments, then parsed with the Ruby files generated from the Treetop language grammar. The product of this phase is a tree full of specialized classes, all of which inherit from <code>Treetop::Runtime::SyntaxNode</code>.</p>
58
-
59
- <p>The root of the tree is an instance of <code>Documentation::Doc</code>. It comprises one or more instances of <code>Documentation::Section</code>; which in turn comprise language elements like namespaces, classes, constants, etc., all of which have class representations.</p>
60
-
61
- <h3>Rendering phase</h3>
62
-
63
- <p>Next, PDoc asks a <em>generator</em> how to translate this abstract tree into a hierarchical document. The default generator outputs organized HTML in a manner similar to <a href="http://rdoc.sourceforge.net/" title="RDoc - Document Generator for Ruby Source">RDoc</a>&#8217;s.</p>
64
-
65
- <p>The HTML generator (<code>PDoc::Generators::Html</code>) has associated <em>templates</em> (in the <code>templates</code> directory) that accept syntax nodes and echo their metadata onto the page using <a href="http://www.ruby-doc.org/stdlib/libdoc/erb/rdoc/index.html" title="erb: Ruby Standard Library Documentation">ERB</a>. Templates are modular, so it&#8217;s quite easy to apply a custom &#8220;skin&#8221; to one&#8217;s documentation pages.</p>
66
-
67
- <p>Furthermore, generators themselves are modular; PDoc can, theoretically, parse once and render to several different targets (HTML, <a href="http://www.docbook.org/" title="DocBook.org">DocBook XML</a>, CHM, PDF, even <a href="http://www.scriptdoc.org/" title="ScriptDoc.org: Dynamic Language Documentation">ScriptDoc</a>.) We hope many such generators will exist in the future.</p>
68
-
69
- <div id="twitter_div">
70
- <h2 class="twitter-title">Twitter Updates</h2>
71
- <ul id="twitter_update_list"></ul>
72
- </div>
73
- </div>
74
- <div id="sidebar">
75
-
76
- </div>
77
- <div id="footer">
78
- <p>&copy; 2008 Tobie Langel. PDoc logo &copy; 2008 Sam Stephenson.</p>
79
- </div>
80
- </div>
81
- <script type="text/javascript" src="http://twitter.com/javascripts/blogger.js"></script>
82
- <script type="text/javascript" src="http://twitter.com/statuses/user_timeline/pdoc.json?callback=twitterCallback2&count=5"></script>
83
- </body>
84
- </html>
@@ -1,73 +0,0 @@
1
- body {
2
- font-family: Helvetica, Arial, sans-serif;
3
- }
4
-
5
- #wrapper {
6
- width: 800px;
7
- margin: 30px auto;
8
- }
9
-
10
- #header {
11
- margin-bottom: 30px;
12
- }
13
-
14
- #navigation {
15
- float: left;
16
- width: 100%;
17
- line-height: normal;
18
- height: 30px;
19
- }
20
-
21
- #navigation ul li {
22
- float: left;
23
- }
24
-
25
- #navigation ul li.selected {
26
- }
27
-
28
- #navigation ul li a {
29
- color: #666;
30
- margin-right: 10px;
31
- text-decoration: none;
32
- border-bottom: 1px solid #999;
33
- }
34
-
35
- #navigation ul li a:hover {
36
- color: #000;
37
- border-bottom: 1px solid #333;
38
- text-decoration: none;
39
- }
40
-
41
- #content h1,
42
- #content h4,
43
- #content h3,
44
- #content h4 {
45
- font-weight: bold;
46
- margin-bottom: 15px;
47
- }
48
-
49
- #content h1 {
50
- font-size: 2em;
51
- }
52
-
53
- #content h2 {
54
- font-size: 1.6em;
55
- }
56
-
57
- #content h3 {
58
- font-size: 1.2em;
59
- }
60
-
61
- #content h4 {
62
- font-size: 1em;
63
- }
64
-
65
- #content p {
66
- margin-bottom: 1em;
67
- }
68
-
69
- #content pre {
70
- margin-bottom: 1em;
71
- padding: 1em;
72
- background-color: #eee;
73
- }
@@ -1,18 +0,0 @@
1
- /*
2
- Copyright (c) 2007, Yahoo! Inc. All rights reserved.
3
- Code licensed under the BSD License:
4
- http://developer.yahoo.net/yui/license.txt
5
- version: 2.4.1
6
- */
7
- body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
8
- table{border-collapse:collapse;border-spacing:0;}
9
- fieldset,img{border:0;}
10
- address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}
11
- li{list-style:none;}
12
- caption,th{text-align:left;}
13
- h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
14
- q:before,q:after{content:'';}
15
- abbr,acronym {border:0;font-variant:normal;}
16
- /* to preserve line-height and selector appearance */
17
- sup {vertical-align:text-top;}
18
- sub {vertical-align:text-bottom;}