sdoc 0.4.1 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 09f126dd289aad3c1e79f289d9895309baf90987
4
- data.tar.gz: 50bb0ed83c4ac2ae0041f41aabbbf633573dec8a
3
+ metadata.gz: 03c6caeefa3e802c77599a6805c6926965d0155f
4
+ data.tar.gz: 2a2840f5bb0358ee7846b6f0d18516d8f3a37878
5
5
  SHA512:
6
- metadata.gz: ad3c54ed2f52a415fb4f766d88fcebd69bf3ef457ff7bdfcd7ab960af0ec424bec276efb6151c922fa08c7912c3568f599a074735fffb8d85fa060cb0b544766
7
- data.tar.gz: 449c768107dc9bedc0ce1257d594ed3085f0613609ecda6c7bbe9a2cd6fa2c50d035e0579806f747fb34dd583c9d69b325c5fdcab8eaa8644d957a65006c182a
6
+ metadata.gz: 1ad4baba8991f43259a81adcde968a8eb33d8f951519b2a670b4d27d4927f8dda46b9ab5ded2d980f4243025b4499005984f0cbedb978e68eb6ece52b4bf58a4
7
+ data.tar.gz: eb4e49914ebd0863b919657ec319ed1f238ad261b249dbf2966c0371d5544725718f408b5184cbee32d367d2772e8c01030234da42526034d24bb496c11a15ef
@@ -1,12 +1,29 @@
1
1
  ---
2
+ before_install:
3
+ - gem install bundler
2
4
  rvm:
3
5
  - 1.8.7
4
6
  - 1.9.3
5
7
  - 2.0.0
6
8
  - 2.1.0
9
+ - 2.2.0
10
+ - 2.3.0
7
11
  - ruby-head
8
12
  - jruby-19mode
9
13
  - jruby-head
14
+ matrix:
15
+ allow_failures:
16
+ - env: rdoc=master
17
+ include:
18
+ - { rvm: 1.8.7, env: rdoc=master }
19
+ - { rvm: 1.9.3, env: rdoc=master }
20
+ - { rvm: 2.0.0, env: rdoc=master }
21
+ - { rvm: 2.1.0, env: rdoc=master }
22
+ - { rvm: 2.2.0, env: rdoc=master }
23
+ - { rvm: 2.3.0, env: rdoc=master }
24
+ - { rvm: ruby-head, env: rdoc=master }
25
+ - { rvm: jruby-19mode, env: rdoc=master }
26
+ - { rvm: jruby-head, env: rdoc=master }
10
27
  notifications:
11
- recipients:
12
- - zachary@zacharyscott.net
28
+ email:
29
+ - mail@zzak.io
@@ -0,0 +1,40 @@
1
+ 0.4.2
2
+ =====
3
+
4
+ [Compare v0.4.1...v0.4.2](https://github.com/voloko/sdoc/compare/v0.4.1...v0.4.2)
5
+
6
+ 0.4.1
7
+ =====
8
+
9
+ [Compare v0.4.0...v0.4.1](https://github.com/voloko/sdoc/compare/v0.4.0...v0.4.1)
10
+
11
+ Breaking Changes
12
+ ----------------
13
+
14
+ None.
15
+
16
+ Enhancements
17
+ ------------
18
+
19
+ - 65e46cb2 Unordered lists inside ordered ones render ordered
20
+ - SDoc::VERSION
21
+ - 2fe1a7b8 Move version to separate file, remove require_relative from gemspec
22
+ - 97e1eda8 Push ./lib to $LOAD_PATH for require SDoc::VERSION
23
+ - ad0a7e1e Initialize SDoc namespace in main file
24
+
25
+ Bug Fixes
26
+ ---------
27
+
28
+ - 926ff732 Remove redundany < 5.0 from rdoc dependency specification
29
+ - db99e402 Remove code tags styling under pre elements
30
+ - a1d7e211 Follow up of #68
31
+ - bffc93ef Relax JSON dependency to ~> 1.7, >= 1.7.7
32
+ - 404dceb9 GH-72: Extra `<p>` tags appear in results snippet
33
+
34
+ 0.4.0
35
+ =====
36
+
37
+ [Compare v0.3.20...v0.4.0](https://github.com/voloko/sdoc/compare/v0.3.20...v0.4.0)
38
+
39
+ No friendly log for this version yet, but PRs are welcome!
40
+
data/Gemfile CHANGED
@@ -1,3 +1,11 @@
1
1
  source "https://rubygems.org"
2
2
 
3
3
  gemspec
4
+
5
+ gem "rake", "< 11"
6
+ gem "minitest"
7
+ gem "hoe"
8
+
9
+ if ENV["rdoc"] == "master"
10
+ gem "rdoc", :github => "rdoc/rdoc"
11
+ end
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2011 Vladimir Kolesnikov
1
+ Copyright (c) 2014 Zachary Scott, Vladimir Kolesnikov, and Nathan Broadbent
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
@@ -107,4 +107,4 @@ version 2 (see the file GPL), or the conditions below:
107
107
  6. THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
108
108
  IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
109
109
  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
110
- PURPOSE.
110
+ PURPOSE.
data/README.md CHANGED
@@ -2,30 +2,32 @@
2
2
 
3
3
  [![Build Status](https://travis-ci.org/zzak/sdoc.png?branch=master)](https://travis-ci.org/zzak/sdoc)
4
4
 
5
- **Powering http://api.rubyonrails.org/ and http://railsapi.com/**
5
+ **Powering http://api.rubyonrails.org/**
6
6
 
7
7
  ### What is sdoc?
8
8
 
9
- RDoc generator to build searchable HTML documentation for Ruby code.
9
+ SDoc is an HTML template built on top of the RDoc documentation generator for Ruby code.
10
+
11
+ Provided are two command-line tools you get when you installing the gem:
10
12
 
11
13
  * `sdoc` - command line tool to run rdoc with `generator=shtml` (searchable HTML)
12
14
  * `sdoc-merge` - command line tool to merge multiple sdoc folders into a single documentation site
13
15
 
14
-
15
16
  ### Getting Started
16
17
 
17
18
  ```bash
18
- # Install the gem
19
- gem install sdoc
19
+ # Install the gem
20
+ gem install sdoc
20
21
 
21
- # Generate documentation for 'projectdir'
22
- sdoc projectdir
22
+ # Generate documentation for 'projectdir'
23
+ sdoc projectdir
23
24
  ```
24
25
 
25
26
  ### sdoc
26
27
 
27
- `sdoc` is simply a wrapper for the `rdoc` command line tool. See `sdoc --help`
28
- for more details. `--fmt` is set to `shtml` by default. The default template `-T` is `shtml`, but you can also use the `direct` template.
28
+ `sdoc` is simply a wrapper for the `rdoc` command line tool. See `sdoc --help` for more details.
29
+
30
+ When using the `sdoc` command, `--fmt` is set to `shtml` by default. The default template (or `-T` option) is set to `shtml`, but you can also use the `direct` template when generating documentation.
29
31
 
30
32
  Example:
31
33
 
@@ -35,12 +37,14 @@ sdoc -o doc/rails -T direct rails
35
37
 
36
38
  ### sdoc-merge
37
39
 
38
- <pre>
40
+ `sdoc-merge` is useful tool for combining multiple projects documentation into one HTML website. See `sdoc-merge --help` for more details.
41
+
42
+ ```
39
43
  Usage: sdoc-merge [options] directories
40
44
  -n, --names [NAMES] Names of merged repositories. Comma separated
41
45
  -o, --op [DIRECTORY] Set the output directory
42
46
  -t, --title [TITLE] Set the title of merged file
43
- </pre>
47
+ ```
44
48
 
45
49
  Example:
46
50
 
@@ -50,19 +54,44 @@ sdoc-merge --title "Ruby v1.9, Rails v2.3.2.1" --op merged --names "Ruby,Rails"
50
54
 
51
55
  ### Rake Task
52
56
 
57
+ If you want, you can setup a task in your `Rakefile` for generating your project's documentation via the `rake rdoc` command.
58
+
53
59
  ```ruby
54
60
  # Rakefile
55
61
  require 'sdoc' # and use your RDoc task the same way you used it before
62
+ require 'rdoc/task' # ensure this file is also required in order to use `RDoc::Task`
56
63
 
57
- Rake::RDocTask.new do |rdoc|
58
- rdoc.rdoc_dir = 'doc/rdoc'
59
- rdoc.options << '--fmt' << 'shtml' # explictly set shtml generator
60
- rdoc.template = 'direct' # lighter template used on railsapi.com
61
- ...
64
+ RDoc::Task.new do |rdoc|
65
+ rdoc.rdoc_dir = 'doc/rdoc' # name of output directory
66
+ rdoc.generator = 'sdoc' # explictly set the sdoc generator
67
+ rdoc.template = 'rails' # template used on api.rubyonrails.org
62
68
  end
63
69
  ```
64
70
 
65
- # Who?
71
+ NOTE: If you don't set `template` the default "sdoc" template is chosen, with a lighter color scheme.
72
+
73
+ Now you can execute this command with `rake rdoc`, to compile the documentation for the current project directory.
74
+
75
+ Alternatively you can pass this command a path to the project you wish to compile: `rake rdoc path/to/project`.
76
+
77
+ ### RDoc
78
+
79
+ As mentioned before, SDoc is built on top of the RDoc project.
80
+
81
+ If you notice any bugs in the output of your documentation, it may be RDoc's fault and should be [reported upstream](https://github.com/rdoc/rdoc/issues/new).
82
+
83
+ An example of an SDoc bug would be:
84
+
85
+ * Exception is raised when merging project documentation (ala `sdoc-merge`)
86
+ * Error or warning in JavaScript or HTML found in your browser
87
+ * Generation fails with some exception (likely due to incompatibility with RDoc)
88
+
89
+ Please feel free to still report issues here for both projects, especially if you aren't sure.
90
+
91
+ As maintainer of both projects, I'll see if I can identify the root of the cause :bow: :bow: :bow:
92
+
93
+
94
+ ### Who?
66
95
 
67
96
  * Vladimir Kolesnikov ([voloko](https://github.com/voloko))
68
97
  * Nathan Broadbent ([ndbroadbent](https://github.com/ndbroadbent))
data/Rakefile CHANGED
@@ -11,3 +11,24 @@ end
11
11
 
12
12
  task :default => :test
13
13
  task :spec => :test
14
+
15
+ require 'sdoc'
16
+ require 'rdoc/task'
17
+
18
+ rails = File.expand_path "rails"
19
+
20
+ directory rails do
21
+ sh "git clone --depth=1 https://github.com/rails/rails"
22
+ end
23
+
24
+ namespace :test do
25
+ task :rails => rails
26
+
27
+ RDoc::Task.new(:rails) do |rdoc|
28
+ rdoc.rdoc_dir = 'doc/rails'
29
+ rdoc.generator = 'sdoc'
30
+ rdoc.template = 'rails'
31
+
32
+ rdoc.rdoc_files.include("rails/")
33
+ end
34
+ end
@@ -1,11 +1,11 @@
1
1
  <!DOCTYPE html
2
2
  PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
3
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
3
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
4
4
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
5
  <head>
6
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
7
7
 
8
- <title><%= @title %></title>
8
+ <title><%= @title %></title>
9
9
  </head>
10
10
  <frameset cols="300,*" frameborder="1" border="1" bordercolor="#999999" framespacing="1">
11
11
  <frame src="panel/index.html" title="Search" name="panel" />
@@ -150,19 +150,19 @@
150
150
  <div class="method">
151
151
  <div class="title method-title" id="<%= method.aref %>">
152
152
  <% if method.call_seq %>
153
- <b><%= method.call_seq.gsub(/->/, '&rarr;') %></b>
153
+ <b><%= method.call_seq.gsub(/->/, '&rarr;').gsub(/\n(.)/, '<br />\1') %></b>
154
154
  <% else %>
155
155
  <b><%= h method.name %></b><%= h method.params %>
156
156
  <% end %>
157
157
  <a href="<%= "#{rel_prefix}/#{context.path}##{method.aref}"%>" name="<%= method.aref %>" class="permalink">Link</a>
158
158
  </div>
159
-
159
+
160
160
  <% if method.comment %>
161
161
  <div class="description">
162
162
  <%= method.description.strip %>
163
163
  </div>
164
164
  <% end %>
165
-
165
+
166
166
  <% unless method.aliases.empty? %>
167
167
  <div class="aka">
168
168
  Also aliased as: <%= method.aliases.map do |aka|
@@ -180,7 +180,7 @@
180
180
  Alias for: <a href="<%= context.aref_to method.is_alias_for.path %>"><%= h method.is_alias_for.name %></a>
181
181
  </div>
182
182
  <% end %>
183
-
183
+
184
184
  <% if method.token_stream %>
185
185
  <% markup = method.sdoc_markup_code %>
186
186
  <div class="sourcecode">
@@ -197,7 +197,7 @@
197
197
  end
198
198
  %>
199
199
  <p class="source-link">
200
- Source:
200
+ Source:
201
201
  <a href="javascript:toggleSource('<%= method.aref %>_source')" id="l_<%= method.aref %>_source">show</a>
202
202
  <% if github %>
203
203
  | <a href="<%= "#{github}#L#{line}" %>" target="_blank" class="github_url">on GitHub</a>
@@ -8,16 +8,16 @@
8
8
  <%= include_template '_head.rhtml', {:rel_prefix => rel_prefix} %>
9
9
  </head>
10
10
 
11
- <body>
11
+ <body>
12
12
  <div class="banner">
13
13
  <% if ENV['HORO_PROJECT_NAME'] %>
14
14
  <span><%= ERB::Util.html_escape(ENV['HORO_PROJECT_NAME']) %> <%= ERB::Util.html_escape(ENV['HORO_PROJECT_VERSION']) %></span><br />
15
15
  <% end %>
16
16
  <h1>
17
- <span class="type"><%= klass.module? ? 'Module' : 'Class' %></span>
18
- <%= h klass.full_name %>
17
+ <span class="type"><%= klass.module? ? 'Module' : 'Class' %></span>
18
+ <%= h klass.full_name %>
19
19
  <% if klass.type == 'class' %>
20
- <span class="parent">&lt;
20
+ <span class="parent">&lt;
21
21
  <% if String === klass.superclass %>
22
22
  <%= klass.superclass %>
23
23
  <% elsif !klass.superclass.nil? %>
@@ -36,4 +36,4 @@
36
36
  <%= include_template '_context.rhtml', {:context => klass, :rel_prefix => rel_prefix} %>
37
37
  </div>
38
38
  </body>
39
- </html>
39
+ </html>
@@ -8,7 +8,7 @@
8
8
  <%= include_template '_head.rhtml', {:rel_prefix => rel_prefix} %>
9
9
  </head>
10
10
 
11
- <body>
11
+ <body>
12
12
  <div class="banner">
13
13
  <% if ENV['HORO_PROJECT_NAME'] %>
14
14
  <span><%= ERB::Util.html_escape(ENV['HORO_PROJECT_NAME']) %> <%= ERB::Util.html_escape(ENV['HORO_PROJECT_VERSION']) %></span><br />
@@ -1,6 +1,6 @@
1
1
  <!DOCTYPE html
2
2
  PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
3
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
3
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
4
4
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
5
  <head>
6
6
  <meta http-equiv="Content-Type" content="text/html; charset=<%= @options.charset %>" />
@@ -12,8 +12,8 @@
12
12
  //zoom: 1;
13
13
  }
14
14
 
15
- .panel_tree .results,
16
- .panel_results .tree
15
+ .panel_tree .results,
16
+ .panel_results .tree
17
17
  {
18
18
  display: none;
19
19
  }
@@ -68,8 +68,16 @@
68
68
  }
69
69
 
70
70
  /* Header with search box (end) */
71
-
72
-
71
+
72
+ /* Results and tree (begin) */
73
+ .panel .result ul li a,
74
+ .panel .tree ul li a
75
+ {
76
+ display: block;
77
+ text-decoration: none;
78
+ }
79
+ /* Results and tree (end) */
80
+
73
81
  /* Results (begin) */
74
82
  .panel .result
75
83
  {
@@ -97,23 +105,19 @@
97
105
 
98
106
  .panel .result ul li
99
107
  {
100
- height: 46px;
101
- -height: 50px;
102
- //display: inline;
103
- //width: 100%;
104
- //zoom: 1;
105
108
  overflow: hidden;
106
109
  padding: 4px 10px 0 10px;
107
110
  cursor: pointer;
111
+ height: 46px;
108
112
  }
109
113
 
110
- .panel .result ul li h1
114
+ .panel .result ul li a
111
115
  {
112
116
  font-size: 13px;
113
117
  font-weight: normal;
114
118
  color: #333;
115
- margin-bottom: 2px;
116
119
  white-space: nowrap;
120
+ margin-bottom: 2px;
117
121
  }
118
122
 
119
123
  .panel .result ul li p
@@ -124,7 +128,7 @@
124
128
  white-space: nowrap;
125
129
  }
126
130
 
127
- .panel .result ul li h1 i,
131
+ .panel .result ul li a i,
128
132
  .panel .result ul li p.snippet
129
133
  {
130
134
  color: #999;
@@ -140,13 +144,13 @@
140
144
  background: #3875D7;
141
145
  }
142
146
 
143
- .panel .result ul li.current h1,
147
+ .panel .result ul li.current a,
144
148
  .panel .result ul li.current p
145
149
  {
146
150
  color: #DDD;
147
151
  }
148
152
 
149
- .panel .result ul li.current h1 i,
153
+ .panel .result ul li.current a i,
150
154
  .panel .result ul li.current p.snippet
151
155
  {
152
156
  color: #AAA;
@@ -260,29 +264,25 @@
260
264
  .panel .tree ul
261
265
  {
262
266
  background: #EDF3FE url(../i/tree_bg.png);
263
- }
264
-
265
- .panel .tree li
267
+ }
268
+
269
+ .panel .tree ul li
266
270
  {
267
271
  cursor: pointer;
268
272
  overflow: hidden;
269
- //height: 23px;
270
- //display: inline;
271
- //zoom: 1;
272
- //width: 100%;
273
+ height: 23px;
274
+ line-height: 23px;
273
275
  }
274
-
275
-
276
- .panel .tree li .content
276
+
277
+
278
+ .panel .tree ul li .content
277
279
  {
278
280
  padding-left: 18px;
279
- padding-top: 5px;
280
- height: 18px;
281
281
  overflow: hidden;
282
282
  position: relative;
283
283
  }
284
-
285
- .panel .tree li .icon
284
+
285
+ .panel .tree ul li .icon
286
286
  {
287
287
  width: 10px;
288
288
  height: 9px;
@@ -293,18 +293,17 @@
293
293
  top: 8px;
294
294
  cursor: default;
295
295
  }
296
-
297
- .panel .tree li.closed .icon
296
+
297
+ .panel .tree ul li.closed .icon
298
298
  {
299
299
  background-position: 0 0;
300
300
  }
301
-
302
- .panel .tree ul li h1
301
+
302
+ .panel .tree ul li a
303
303
  {
304
304
  font-size: 13px;
305
305
  font-weight: normal;
306
306
  color: #000;
307
- margin-bottom: 2px;
308
307
  white-space: nowrap;
309
308
  }
310
309
 
@@ -315,8 +314,8 @@
315
314
  margin-bottom: 2px;
316
315
  white-space: nowrap;
317
316
  }
318
-
319
- .panel .tree ul li h1 i
317
+
318
+ .panel .tree ul li a i
320
319
  {
321
320
  color: #999;
322
321
  font-style: normal;
@@ -325,9 +324,9 @@
325
324
  .panel .tree ul li.empty
326
325
  {
327
326
  cursor: text;
328
- }
329
-
330
- .panel .tree ul li.empty h1,
327
+ }
328
+
329
+ .panel .tree ul li.empty a,
331
330
  .panel .tree ul li.empty p
332
331
  {
333
332
  color: #666;
@@ -349,7 +348,7 @@
349
348
  background-position: -10px 0;
350
349
  }
351
350
 
352
- .panel .tree ul li.current h1
351
+ .panel .tree ul li.current a
353
352
  {
354
353
  color: #FFF;
355
354
  }
@@ -359,7 +358,7 @@
359
358
  color: #CCC;
360
359
  }
361
360
 
362
- .panel .tree ul li.current.empty h1,
361
+ .panel .tree ul li.current.empty a,
363
362
  .panel .tree ul li.current.empty p
364
363
  {
365
364
  color: #999;