hologram 0.5.5 → 0.5.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +47 -26
- data/lib/hologram.rb +132 -45
- data/lib/hologram/version.rb +2 -2
- data/lib/template/doc_assets/_footer.html +7 -0
- data/lib/template/doc_assets/_header.html +18 -0
- data/lib/template/hologram_config.yml +21 -0
- metadata +19 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e7d3e6ddbc716b6dd6aa6014ca5a07d78a07c888
|
4
|
+
data.tar.gz: efc47c65a4ba7578a446f52d255d0c0f41e6bd42
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e05fee56543bca4255bd6f690c4e1d5aaf7fa648586d2e262adcc477f9b0581507847f7b019a3dc85369773a1733746bec00c6da74aab72d0981c2eea2fa162e
|
7
|
+
data.tar.gz: 41d73c2d4e16a03c0dfa2a14e7d5738a63584c6b5a40f459edb5c3685883746609bd08d600b72c1df117fb27ee127ddc36413b84fbe4e10fe48e3a9b8ffb9897
|
data/README.md
CHANGED
@@ -1,8 +1,11 @@
|
|
1
1
|
# Hologram
|
2
2
|
|
3
|
-
Hologram is a Ruby gem that parses comments in your CSS and helps you
|
3
|
+
Hologram is a Ruby gem that parses comments in your CSS and helps you turn them into a beautiful style guide.
|
4
4
|
|
5
|
-
There are two steps to building a great style guide:
|
5
|
+
There are two steps to building a great style guide:
|
6
|
+
|
7
|
+
1. Documenting your css and generating html examples.
|
8
|
+
2. Styling the output of step 1.
|
6
9
|
|
7
10
|
The hologram gem itself is only concerned with step 1. This means you are free to make your style guide look however you would like. If you don't feel like going through this process yourself you can take a look at the [templates](https://github.com/trulia/hologram-example/tree/master/templates) in our [example repository](https://github.com/trulia/hologram-example) and use the assets defined there instead.
|
8
11
|
|
@@ -18,13 +21,30 @@ And then execute:
|
|
18
21
|
|
19
22
|
If you don't use bundler you can run `gem install hologram`.
|
20
23
|
|
21
|
-
##
|
24
|
+
##Quick Start
|
25
|
+
|
26
|
+
```
|
27
|
+
hologram init
|
28
|
+
```
|
29
|
+
|
30
|
+
This will create a config yml file, and also create a starter
|
31
|
+
`_header.tpl` and `_footer.tpl` file for you. You can then tweak the
|
32
|
+
config values and start documenting your css.
|
33
|
+
|
34
|
+
Building the documentation is simply:
|
35
|
+
|
36
|
+
```
|
37
|
+
hologram
|
38
|
+
```
|
39
|
+
|
40
|
+
## Details
|
22
41
|
|
23
42
|
There are two things you need to do to start using hologram:
|
24
43
|
|
25
|
-
1. Create a YAML config file for your project
|
44
|
+
1. Create a YAML config file for your project.
|
45
|
+
|
46
|
+
2. Go document some code!
|
26
47
|
|
27
|
-
2. Document yourself some code
|
28
48
|
|
29
49
|
### Creating a YAML config file
|
30
50
|
|
@@ -42,19 +62,30 @@ Your config file needs to contain the following key/value pairs
|
|
42
62
|
built to
|
43
63
|
|
44
64
|
* **documentation_assets**: The path that contains supporting assets for
|
45
|
-
the documentaiton page. This typically includes html fragments
|
46
|
-
styleguide specific CSS, javascript and any
|
47
|
-
|
48
|
-
|
49
|
-
|
65
|
+
the documentaiton page. This typically includes html fragments
|
66
|
+
(header/footer, etc), styleguide specific CSS, javascript and any
|
67
|
+
images. Hologram specifically looks for two files: `_header.html` and
|
68
|
+
`_footer.html`, these are used to start and end every html page
|
69
|
+
holgoram generates. Hologram treats `_header.html` and `_footer.html`
|
70
|
+
as ERB files for each page that is generated you can access the
|
71
|
+
`title`, `file_name`, and `blocks`. `blocks` is a list of each
|
72
|
+
documenation block on the page. Each item in the list has a `title`,
|
73
|
+
`name`, `category`, and optionally a `parent`. Additionaly, filenames
|
74
|
+
that begin with underscores will not be copied into the destination
|
75
|
+
folder.
|
76
|
+
|
77
|
+
|
78
|
+
* **custom_markdown**: (optional) this is the filename of a class that
|
79
|
+
extends RedCarpet::Render::HTML class. Use this for when you need
|
50
80
|
additional classes or html tags for different parts of the page.
|
51
81
|
|
52
|
-
* **index**: (optional) this is a category that will be used as the
|
53
|
-
index.html.
|
82
|
+
* **index**: (optional) this is a category (see **Documenting your styles** section below) that will be used as the
|
83
|
+
index.html.
|
54
84
|
|
55
|
-
* **dependencies**: a **list** of relative
|
56
|
-
|
57
|
-
PUT THE CSS/JS THAT IS
|
85
|
+
* **dependencies**: a **list** of relative paths to folders containing
|
86
|
+
any dependencies your style guide has. These folders will be copied
|
87
|
+
over into the documentation output directory. PUT THE CSS/JS THAT IS
|
88
|
+
ACTUALLY BEING DOCUMENTED HERE
|
58
89
|
|
59
90
|
##### Example config file
|
60
91
|
|
@@ -76,10 +107,9 @@ PUT THE CSS/JS THAT IS ACTUALLY BEING DOCUMENTED HERE
|
|
76
107
|
- ../build
|
77
108
|
|
78
109
|
|
79
|
-
|
80
110
|
###Documenting your styles
|
81
111
|
|
82
|
-
Hologram will scan
|
112
|
+
Hologram will scan your .css|.scss|.sass|.less|.styl files within your **source** directory.
|
83
113
|
It will look for comments that match the following:
|
84
114
|
|
85
115
|
/*doc
|
@@ -115,8 +145,6 @@ but it specifically looks for the following keys:
|
|
115
145
|
* **title**: The title to display in the documents
|
116
146
|
* **category**: This is the broad category for the component, all
|
117
147
|
components in the same category will be written to the same page.
|
118
|
-
(Usually named the same as the category but with spaces replaced with
|
119
|
-
underscores and lower cased).
|
120
148
|
* **name**: This is used for grouping components, by assigning
|
121
149
|
a name a component can be referenced in another component as a parent.
|
122
150
|
* **parent**: Optional. If this is set the current component will be
|
@@ -131,13 +159,6 @@ you'll need for making your style guide look beautiful.
|
|
131
159
|
Hologram doesn't care too much about to what is in here as it is intended
|
132
160
|
to be custom for your style guide.
|
133
161
|
|
134
|
-
However, it does look for two files called header.html and footer.html.
|
135
|
-
These are html fragments that will be used when creating a new category page.
|
136
|
-
`header.html` will be copied to the beginning to the page and `footer.html`
|
137
|
-
will be copied to the bottom of the page. This gives you control of how you
|
138
|
-
will navigate your docs and lets you include any css, disclaimer text, and
|
139
|
-
whatever else you need on each page.
|
140
|
-
|
141
162
|
#####Styling Your Code Examples
|
142
163
|
|
143
164
|
Hologram uses [pygments.rb](https://github.com/tmm1/pygments.rb) gem to provide
|
data/lib/hologram.rb
CHANGED
@@ -31,11 +31,26 @@ require 'yaml'
|
|
31
31
|
require 'pygments'
|
32
32
|
require 'fileutils'
|
33
33
|
require 'pathname'
|
34
|
+
require 'erb'
|
34
35
|
|
35
36
|
require 'hologram_markdown_renderer'
|
36
37
|
|
37
38
|
module Hologram
|
38
39
|
|
40
|
+
#Helper class for binding things for ERB
|
41
|
+
class TemplateVariables
|
42
|
+
attr_accessor :title, :file_name, :blocks
|
43
|
+
|
44
|
+
def initialize(title, file_name, blocks)
|
45
|
+
@title = title
|
46
|
+
@file_name = file_name
|
47
|
+
@blocks = blocks
|
48
|
+
end
|
49
|
+
|
50
|
+
def get_binding
|
51
|
+
binding
|
52
|
+
end
|
53
|
+
end
|
39
54
|
|
40
55
|
class DocumentBlock
|
41
56
|
attr_accessor :name, :parent, :children, :title, :category, :markdown, :output_file, :config
|
@@ -53,6 +68,14 @@ module Hologram
|
|
53
68
|
@markdown = markdown
|
54
69
|
end
|
55
70
|
|
71
|
+
def get_hash
|
72
|
+
{:name => @name,
|
73
|
+
:parent => @parent,
|
74
|
+
:category => @category,
|
75
|
+
:title => @title
|
76
|
+
}
|
77
|
+
end
|
78
|
+
|
56
79
|
def is_valid?
|
57
80
|
@name && @markdown
|
58
81
|
end
|
@@ -62,27 +85,54 @@ module Hologram
|
|
62
85
|
class Builder
|
63
86
|
attr_accessor :doc_blocks, :config, :pages
|
64
87
|
|
88
|
+
INIT_TEMPLATE_PATH = File.expand_path('./template/', File.dirname(__FILE__)) + '/'
|
89
|
+
INIT_TEMPLATE_FILES = [
|
90
|
+
INIT_TEMPLATE_PATH + '/hologram_config.yml',
|
91
|
+
INIT_TEMPLATE_PATH + '/doc_assets',
|
92
|
+
]
|
93
|
+
|
65
94
|
def init(args)
|
66
95
|
@doc_blocks, @pages = {}, {}
|
67
96
|
@supported_extensions = ['.css', '.scss', '.less', '.sass', '.styl', '.js', '.md', '.markdown' ]
|
68
97
|
|
69
98
|
begin
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
99
|
+
if args[0] == 'init' then
|
100
|
+
|
101
|
+
if File.exists?("hologram_config.yml")
|
102
|
+
puts "Cowardly refusing to overwrite existing hologram_config.yml"
|
103
|
+
else
|
104
|
+
FileUtils.cp_r INIT_TEMPLATE_FILES, Dir.pwd
|
105
|
+
puts "Created the following files and directories:"
|
106
|
+
puts " hologram_config.yml"
|
107
|
+
puts " doc_assets/"
|
108
|
+
puts " doc_assets/_header.html"
|
109
|
+
puts " doc_assets/_footer.html"
|
110
|
+
end
|
111
|
+
else
|
112
|
+
begin
|
113
|
+
config_file = args[0] ? args[0] : 'hologram_config.yml'
|
114
|
+
|
115
|
+
begin
|
116
|
+
@config = YAML::load_file(config_file)
|
117
|
+
rescue
|
118
|
+
display_error "Could not load config file, try hologram init to get started"
|
119
|
+
end
|
120
|
+
|
121
|
+
validate_config
|
122
|
+
|
123
|
+
#TODO: maybe this should move into build_docs
|
124
|
+
current_path = Dir.pwd
|
125
|
+
base_path = Pathname.new(config_file)
|
126
|
+
Dir.chdir(base_path.dirname)
|
127
|
+
|
128
|
+
build_docs
|
129
|
+
|
130
|
+
Dir.chdir(current_path)
|
131
|
+
puts "Build completed. (-: ".green
|
132
|
+
rescue RuntimeError => e
|
133
|
+
display_error("#{e}")
|
134
|
+
end
|
135
|
+
end
|
86
136
|
end
|
87
137
|
end
|
88
138
|
|
@@ -92,9 +142,13 @@ module Hologram
|
|
92
142
|
# Create the output directory if it doesn't exist
|
93
143
|
FileUtils.mkdir_p(config['destination']) unless File.directory?(config['destination'])
|
94
144
|
|
95
|
-
|
96
|
-
|
145
|
+
begin
|
146
|
+
input_directory = Pathname.new(config['source']).realpath
|
147
|
+
rescue
|
148
|
+
display_error "Can not read source directory, does it exist?"
|
149
|
+
end
|
97
150
|
|
151
|
+
output_directory = Pathname.new(config['destination']).realpath
|
98
152
|
doc_assets = Pathname.new(config['documentation_assets']).realpath unless !File.directory?(config['documentation_assets'])
|
99
153
|
|
100
154
|
if doc_assets.nil?
|
@@ -107,11 +161,11 @@ module Hologram
|
|
107
161
|
|
108
162
|
# if we have an index category defined in our config copy that
|
109
163
|
# page to index.html
|
110
|
-
if config['index']
|
164
|
+
if config['index']
|
111
165
|
if @pages.has_key?(config['index'] + '.html')
|
112
166
|
@pages['index.html'] = @pages[config['index'] + '.html']
|
113
167
|
else
|
114
|
-
display_warning "Could not generate index.html, there was no content generated for the category #{config['index']}"
|
168
|
+
display_warning "Could not generate index.html, there was no content generated for the category #{config['index']}."
|
115
169
|
end
|
116
170
|
end
|
117
171
|
|
@@ -120,18 +174,23 @@ module Hologram
|
|
120
174
|
# Copy over dependencies
|
121
175
|
if config['dependencies']
|
122
176
|
config['dependencies'].each do |dir|
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
177
|
+
begin
|
178
|
+
dirpath = Pathname.new(dir).realpath
|
179
|
+
if File.directory?("#{dir}")
|
180
|
+
`rm -rf #{output_directory}/#{dirpath.basename}`
|
181
|
+
`cp -R #{dirpath} #{output_directory}/#{dirpath.basename}`
|
182
|
+
end
|
183
|
+
rescue
|
184
|
+
display_warning "Could not copy dependency: #{dir}"
|
127
185
|
end
|
128
186
|
end
|
129
187
|
end
|
130
188
|
|
131
189
|
if !doc_assets.nil?
|
132
190
|
Dir.foreach(doc_assets) do |item|
|
133
|
-
# ignore . and .. directories
|
134
|
-
|
191
|
+
# ignore . and .. directories and files that start with
|
192
|
+
# underscore
|
193
|
+
next if item == '.' or item == '..' or item.start_with?('_')
|
135
194
|
`rm -rf #{output_directory}/#{item}`
|
136
195
|
`cp -R #{doc_assets}/#{item} #{output_directory}/#{item}`
|
137
196
|
end
|
@@ -159,7 +218,7 @@ module Hologram
|
|
159
218
|
def process_files(files, directory)
|
160
219
|
files.each do |input_file|
|
161
220
|
if input_file.end_with?('md')
|
162
|
-
@pages[File.basename(input_file, '.md') + '.html'] = File.read("#{directory}/#{input_file}")
|
221
|
+
@pages[File.basename(input_file, '.md') + '.html'] = {:md => File.read("#{directory}/#{input_file}"), :blocks => []}
|
163
222
|
else
|
164
223
|
process_file("#{directory}/#{input_file}")
|
165
224
|
end
|
@@ -170,7 +229,7 @@ module Hologram
|
|
170
229
|
def process_file(file)
|
171
230
|
file_str = File.read(file)
|
172
231
|
# get any comment blocks that match the patterns:
|
173
|
-
# .sass: //doc (follow by other lines proceeded by a space)
|
232
|
+
# .sass: //doc (follow by other lines proceeded by a space)
|
174
233
|
# other types: /*doc ... */
|
175
234
|
if file.end_with?('.sass')
|
176
235
|
hologram_comments = file_str.scan(/\s*\/\/doc\s*((( [^\n]*\n)|\n)+)/)
|
@@ -217,12 +276,16 @@ module Hologram
|
|
217
276
|
end
|
218
277
|
|
219
278
|
@doc_blocks[doc_block.name] = doc_block;
|
220
|
-
doc_block.markdown = "\n\n
|
279
|
+
doc_block.markdown = "\n\n<h1 id=\"#{doc_block.name}\">#{doc_block.title}</h1>" + doc_block.markdown
|
221
280
|
else
|
222
281
|
# child file
|
223
282
|
parent_doc_block = @doc_blocks[doc_block.parent]
|
224
283
|
if parent_doc_block
|
225
|
-
|
284
|
+
if doc_block.title.nil?
|
285
|
+
doc_block.markdown = doc_block.markdown
|
286
|
+
else
|
287
|
+
doc_block.markdown = "\n\n<h1 id=\"#{doc_block.name}\">#{doc_block.title}</h1>" + doc_block.markdown
|
288
|
+
end
|
226
289
|
parent_doc_block.children[doc_block.name] = doc_block
|
227
290
|
else
|
228
291
|
@doc_blocks[doc_block.parent] = DocumentBlock.new()
|
@@ -234,8 +297,13 @@ module Hologram
|
|
234
297
|
def build_pages_from_doc_blocks(doc_blocks, output_file = nil)
|
235
298
|
doc_blocks.sort.map do |key, doc_block|
|
236
299
|
output_file = doc_block.output_file || output_file
|
237
|
-
|
238
|
-
|
300
|
+
|
301
|
+
if !@pages.has_key?(output_file)
|
302
|
+
@pages[output_file] = {:md => "", :blocks => []}
|
303
|
+
end
|
304
|
+
|
305
|
+
@pages[output_file][:blocks].push(doc_block.get_hash)
|
306
|
+
@pages[output_file][:md] << doc_block.markdown
|
239
307
|
if doc_block.children
|
240
308
|
build_pages_from_doc_blocks(doc_block.children, output_file)
|
241
309
|
end
|
@@ -247,26 +315,45 @@ module Hologram
|
|
247
315
|
# load the markdown renderer we are going to use
|
248
316
|
renderer = get_markdown_renderer
|
249
317
|
|
318
|
+
if File.exists?("#{doc_assets}/_header.html")
|
319
|
+
header_erb = ERB.new(File.read("#{doc_assets}/_header.html"))
|
320
|
+
elsif File.exists?("#{doc_assets}/header.html")
|
321
|
+
header_erb = ERB.new(File.read("#{doc_assets}/header.html"))
|
322
|
+
else
|
323
|
+
header_erb = nil
|
324
|
+
display_warning "No _header.html found in documentation assets. Without this your css/header will not be included on the generated pages."
|
325
|
+
end
|
326
|
+
|
327
|
+
if File.exists?("#{doc_assets}/_footer.html")
|
328
|
+
footer_erb = ERB.new(File.read("#{doc_assets}/_footer.html"))
|
329
|
+
elsif File.exists?("#{doc_assets}/footer.html")
|
330
|
+
footer_erb = ERB.new(File.read("#{doc_assets}/footer.html"))
|
331
|
+
else
|
332
|
+
footer_erb = nil
|
333
|
+
display_warning "No _footer.html found in documentation assets. This might be okay to ignore..."
|
334
|
+
end
|
335
|
+
|
250
336
|
#generate html from markdown
|
251
|
-
@pages.each do |file_name,
|
337
|
+
@pages.each do |file_name, page|
|
252
338
|
fh = get_fh(output_directory, file_name)
|
253
339
|
|
340
|
+
title = page[:blocks].empty? ? "" : page[:blocks][0][:category]
|
341
|
+
|
342
|
+
tpl_vars = TemplateVariables.new title, file_name, page[:blocks]
|
343
|
+
|
254
344
|
# generate doc nav html
|
255
|
-
|
256
|
-
fh.write(
|
257
|
-
else
|
258
|
-
display_warning "No header.html found in documentation assets. Without this your css/header will not be included on the generated pages."
|
345
|
+
unless header_erb.nil?
|
346
|
+
fh.write(header_erb.result(tpl_vars.get_binding))
|
259
347
|
end
|
260
348
|
|
261
349
|
# write the docs
|
262
|
-
fh.write(renderer.render(
|
350
|
+
fh.write(renderer.render(page[:md]))
|
263
351
|
|
264
352
|
# write the footer
|
265
|
-
|
266
|
-
fh.write(
|
267
|
-
else
|
268
|
-
display_warning "No footer.html found in documentation assets. This might be okay to ignore..."
|
353
|
+
unless footer_erb.nil?
|
354
|
+
fh.write(footer_erb.result(tpl_vars.get_binding))
|
269
355
|
end
|
356
|
+
|
270
357
|
fh.close()
|
271
358
|
end
|
272
359
|
end
|
@@ -293,15 +380,15 @@ module Hologram
|
|
293
380
|
|
294
381
|
def validate_config
|
295
382
|
unless @config.key?('source')
|
296
|
-
|
383
|
+
display_error "No source directory specified in the config file"
|
297
384
|
end
|
298
385
|
|
299
386
|
unless @config.key?('destination')
|
300
|
-
|
387
|
+
display_error "No destination directory specified in the config"
|
301
388
|
end
|
302
389
|
|
303
390
|
unless @config.key?('documentation_assets')
|
304
|
-
|
391
|
+
display_error "No documentation assets directory specified"
|
305
392
|
end
|
306
393
|
end
|
307
394
|
|
data/lib/hologram/version.rb
CHANGED
@@ -11,7 +11,7 @@
|
|
11
11
|
# * Neither the name of the Trulia, Inc. nor the
|
12
12
|
# names of its contributors may be used to endorse or promote products
|
13
13
|
# derived from this software without specific prior written permission.
|
14
|
-
#
|
14
|
+
#
|
15
15
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
|
16
16
|
# IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
17
17
|
# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
|
@@ -25,5 +25,5 @@
|
|
25
25
|
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
26
26
|
|
27
27
|
module Hologram
|
28
|
-
VERSION = "0.5.
|
28
|
+
VERSION = "0.5.8"
|
29
29
|
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>a brand new styleguide: <%= title %></title>
|
5
|
+
<link rel="stylesheet" href="./your_stylesheet_here.css">
|
6
|
+
</head>
|
7
|
+
<body>
|
8
|
+
|
9
|
+
<nav>
|
10
|
+
<ul>
|
11
|
+
<% for b in blocks %>
|
12
|
+
<li><a href="#<%= b[:name] %>"><%= b[:title] %></a></li>
|
13
|
+
<% end %>
|
14
|
+
</ul>
|
15
|
+
</nav>
|
16
|
+
|
17
|
+
<h1>a brand new style guide, it's super effective</h1>
|
18
|
+
<section class="content">
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# The directory containing the source files to parse recursively
|
2
|
+
source: ./sass
|
3
|
+
|
4
|
+
# The directory that hologram will build to
|
5
|
+
destination: ./docs
|
6
|
+
|
7
|
+
# The assets needed to build the docs (includes header.html,
|
8
|
+
# footer.html, etc)
|
9
|
+
# You may put doc related assets here too: images, css, etc.
|
10
|
+
documentation_assets: ./doc_assets
|
11
|
+
|
12
|
+
# Any other asset folders that need to be copied to the destination
|
13
|
+
# folder. Typically this will include the css that you are trying to
|
14
|
+
# document. May also include additional folders as needed.
|
15
|
+
dependencies:
|
16
|
+
- ./build
|
17
|
+
|
18
|
+
# Mark which category should be the index page
|
19
|
+
# Alternatively, you may have an index.md in the documenatation assets
|
20
|
+
# folder instead of specifying this configu.
|
21
|
+
index: basics
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hologram
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- JD Cantrell
|
@@ -9,76 +9,76 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-12-
|
12
|
+
date: 2013-12-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: redcarpet
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- -
|
18
|
+
- - ~>
|
19
19
|
- !ruby/object:Gem::Version
|
20
20
|
version: 2.2.2
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
|
-
- -
|
25
|
+
- - ~>
|
26
26
|
- !ruby/object:Gem::Version
|
27
27
|
version: 2.2.2
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: sass
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
|
-
- -
|
32
|
+
- - ~>
|
33
33
|
- !ruby/object:Gem::Version
|
34
34
|
version: 3.2.7
|
35
35
|
type: :runtime
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
|
-
- -
|
39
|
+
- - ~>
|
40
40
|
- !ruby/object:Gem::Version
|
41
41
|
version: 3.2.7
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
43
|
name: pygments.rb
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
|
-
- -
|
46
|
+
- - ~>
|
47
47
|
- !ruby/object:Gem::Version
|
48
48
|
version: 0.4.2
|
49
49
|
type: :runtime
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
|
-
- -
|
53
|
+
- - ~>
|
54
54
|
- !ruby/object:Gem::Version
|
55
55
|
version: 0.4.2
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
57
|
name: bundler
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
59
59
|
requirements:
|
60
|
-
- -
|
60
|
+
- - ~>
|
61
61
|
- !ruby/object:Gem::Version
|
62
62
|
version: '1.3'
|
63
63
|
type: :development
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
|
-
- -
|
67
|
+
- - ~>
|
68
68
|
- !ruby/object:Gem::Version
|
69
69
|
version: '1.3'
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
71
|
name: rake
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
|
-
- -
|
74
|
+
- - '>='
|
75
75
|
- !ruby/object:Gem::Version
|
76
76
|
version: '0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
79
|
version_requirements: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
|
-
- -
|
81
|
+
- - '>='
|
82
82
|
- !ruby/object:Gem::Version
|
83
83
|
version: '0'
|
84
84
|
description: Build doc type things
|
@@ -89,7 +89,7 @@ executables:
|
|
89
89
|
extensions: []
|
90
90
|
extra_rdoc_files: []
|
91
91
|
files:
|
92
|
-
-
|
92
|
+
- .gitignore
|
93
93
|
- Gemfile
|
94
94
|
- LICENSE.txt
|
95
95
|
- README.md
|
@@ -99,6 +99,9 @@ files:
|
|
99
99
|
- lib/hologram.rb
|
100
100
|
- lib/hologram/version.rb
|
101
101
|
- lib/hologram_markdown_renderer.rb
|
102
|
+
- lib/template/doc_assets/_footer.html
|
103
|
+
- lib/template/doc_assets/_header.html
|
104
|
+
- lib/template/hologram_config.yml
|
102
105
|
homepage: http://trulia.github.io/hologram
|
103
106
|
licenses:
|
104
107
|
- MIT
|
@@ -109,17 +112,17 @@ require_paths:
|
|
109
112
|
- lib
|
110
113
|
required_ruby_version: !ruby/object:Gem::Requirement
|
111
114
|
requirements:
|
112
|
-
- -
|
115
|
+
- - '>='
|
113
116
|
- !ruby/object:Gem::Version
|
114
117
|
version: '0'
|
115
118
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
116
119
|
requirements:
|
117
|
-
- -
|
120
|
+
- - '>='
|
118
121
|
- !ruby/object:Gem::Version
|
119
122
|
version: '0'
|
120
123
|
requirements: []
|
121
124
|
rubyforge_project:
|
122
|
-
rubygems_version: 2.0.
|
125
|
+
rubygems_version: 2.0.14
|
123
126
|
signing_key:
|
124
127
|
specification_version: 4
|
125
128
|
summary: Build document type things.
|