maddoc 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +17 -0
- data/Gemfile +4 -0
- data/LICENSE +22 -0
- data/README.md +35 -0
- data/Rakefile +2 -0
- data/bin/maddoc +8 -0
- data/lib/maddoc.rb +14 -0
- data/lib/maddoc/runner.rb +101 -0
- data/lib/maddoc/version.rb +3 -0
- data/maddoc.gemspec +27 -0
- data/templates/assets/stylesheets/main.css.scss +95 -0
- data/templates/assets/stylesheets/normalize.css +375 -0
- data/templates/assets/stylesheets/pygments.css +61 -0
- data/templates/layout.slim +6 -0
- metadata +159 -0
data/.gitignore
ADDED
data/Gemfile
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2012 Aleksey V Zapparov (http://ixti.net/)
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
# MadDoc
|
2
|
+
|
3
|
+
Simple Markdown to HTML converter. In comparison to standard, built-in CLI
|
4
|
+
util it generates a nice-looking little-bit styled HTML.
|
5
|
+
|
6
|
+
|
7
|
+
## Installation
|
8
|
+
|
9
|
+
$ gem install maddoc
|
10
|
+
|
11
|
+
|
12
|
+
## Usage
|
13
|
+
|
14
|
+
maddoc my-file.md > my-file.html
|
15
|
+
|
16
|
+
MadDoc was mainly written for very own personal purposes of "sending" a
|
17
|
+
nice-looking versions of documentation files written in MarkDown for my
|
18
|
+
colleagues. Once markdown is converted in a nice looking HTML, it's not
|
19
|
+
a problem to convert it to PDF if you would like to:
|
20
|
+
|
21
|
+
for file in *.md ; do
|
22
|
+
file = $(basename $file .md)
|
23
|
+
maddoc $file.md > $file.html
|
24
|
+
wkhtmltodpf $file.html $file.pdf
|
25
|
+
rm $file.html
|
26
|
+
done
|
27
|
+
|
28
|
+
|
29
|
+
## Contributing
|
30
|
+
|
31
|
+
1. Fork it
|
32
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
33
|
+
3. Commit your changes (`git commit -am 'Added some feature'`)
|
34
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
35
|
+
5. Create new Pull Request
|
data/Rakefile
ADDED
data/bin/maddoc
ADDED
data/lib/maddoc.rb
ADDED
@@ -0,0 +1,101 @@
|
|
1
|
+
# stdlib
|
2
|
+
require 'ostruct'
|
3
|
+
require 'optparse'
|
4
|
+
|
5
|
+
|
6
|
+
# 3rd-party
|
7
|
+
require 'slim'
|
8
|
+
require 'sprockets'
|
9
|
+
require 'redcarpet'
|
10
|
+
require 'pygments'
|
11
|
+
|
12
|
+
|
13
|
+
module MadDoc
|
14
|
+
class Runner
|
15
|
+
attr_reader :title
|
16
|
+
|
17
|
+
def initialize argv
|
18
|
+
parse!(argv).tap do |options|
|
19
|
+
@title = options.title
|
20
|
+
end
|
21
|
+
|
22
|
+
@source = ARGF.read unless argv.empty? and $stdin.tty?
|
23
|
+
end
|
24
|
+
|
25
|
+
|
26
|
+
def asset pathname
|
27
|
+
environment[pathname].to_s
|
28
|
+
end
|
29
|
+
|
30
|
+
|
31
|
+
def environment
|
32
|
+
@environment ||= Sprockets::Environment.new(MadDoc.root.join('templates')).tap do |env|
|
33
|
+
env.append_path 'assets/stylesheets'
|
34
|
+
env.css_compressor = :sass
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
|
39
|
+
def body
|
40
|
+
renderer = Class.new(Redcarpet::Render::SmartyHTML) do
|
41
|
+
def block_code(code, lang)
|
42
|
+
lang = lang && lang.split.first || "text"
|
43
|
+
|
44
|
+
add_code_tags(
|
45
|
+
Pygments.highlight(code, {
|
46
|
+
:lexer => lang,
|
47
|
+
:options => { :encoding => 'utf-8' }
|
48
|
+
}),
|
49
|
+
lang
|
50
|
+
)
|
51
|
+
end
|
52
|
+
|
53
|
+
def add_code_tags(code, lang)
|
54
|
+
code = code.sub(/<pre>/,'<pre><code class="' + lang + '">')
|
55
|
+
code = code.sub(/<\/pre>/,"</code></pre>")
|
56
|
+
end
|
57
|
+
end.new({
|
58
|
+
:with_toc_data => true
|
59
|
+
})
|
60
|
+
|
61
|
+
Redcarpet::Markdown.new(renderer, {
|
62
|
+
:no_intra_emphasis => true,
|
63
|
+
:tables => true,
|
64
|
+
:fenced_code_blocks => true,
|
65
|
+
:autolink => true,
|
66
|
+
:strikethrough => true,
|
67
|
+
:lax_spacing => true
|
68
|
+
}).render(@source)
|
69
|
+
end
|
70
|
+
|
71
|
+
|
72
|
+
def parse! argv
|
73
|
+
options = OpenStruct.new({
|
74
|
+
:title => 'Untitled mad documentation'
|
75
|
+
})
|
76
|
+
|
77
|
+
OptionParser.new do |opts|
|
78
|
+
opts.on('-t', '--title [TITLE]', 'Title') do |title|
|
79
|
+
options.title = title.strip
|
80
|
+
end
|
81
|
+
end.parse! argv
|
82
|
+
|
83
|
+
options
|
84
|
+
end
|
85
|
+
|
86
|
+
|
87
|
+
def template
|
88
|
+
Slim::Template.new MadDoc.root.join('templates', 'layout.slim').to_s
|
89
|
+
end
|
90
|
+
|
91
|
+
|
92
|
+
def run!
|
93
|
+
puts template.render(self)
|
94
|
+
end
|
95
|
+
|
96
|
+
|
97
|
+
def self.run argv
|
98
|
+
new(argv).run!
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
data/maddoc.gemspec
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
require File.expand_path('../lib/maddoc/version', __FILE__)
|
3
|
+
|
4
|
+
|
5
|
+
Gem::Specification.new do |gem|
|
6
|
+
gem.name = 'maddoc'
|
7
|
+
gem.version = MadDoc::VERSION
|
8
|
+
gem.homepage = 'http://ixti.github.com/maddoc'
|
9
|
+
gem.authors = %w{Aleksey V Zapparov}
|
10
|
+
gem.email = %w{ixti@member.fsf.org}
|
11
|
+
gem.summary = 'maddoc-#{MadDoc::VERSION}'
|
12
|
+
gem.description = %q{Better markdown to HTML renderer.}
|
13
|
+
|
14
|
+
gem.add_dependency 'redcarpet', '~> 2.2'
|
15
|
+
gem.add_dependency 'slim', '~> 1.3'
|
16
|
+
gem.add_dependency 'sass', '~> 3.2'
|
17
|
+
gem.add_dependency 'sprockets', '~> 2.8'
|
18
|
+
gem.add_dependency 'pygments.rb', '~> 0.3'
|
19
|
+
|
20
|
+
gem.add_development_dependency 'rake'
|
21
|
+
|
22
|
+
gem.files = `git ls-files`.split($\)
|
23
|
+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
24
|
+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
25
|
+
|
26
|
+
gem.require_paths = ['lib']
|
27
|
+
end
|
@@ -0,0 +1,95 @@
|
|
1
|
+
//= require normalize
|
2
|
+
//= require pygments
|
3
|
+
|
4
|
+
|
5
|
+
body {
|
6
|
+
color: #222;
|
7
|
+
font: 1em/1.625 sans-serif;
|
8
|
+
margin: 50px auto;
|
9
|
+
width: 960px;
|
10
|
+
|
11
|
+
/* Stops Mobile Safari from auto-adjusting font-sizes */
|
12
|
+
-webkit-text-size-adjust: 100%;
|
13
|
+
}
|
14
|
+
|
15
|
+
|
16
|
+
h1 {
|
17
|
+
font-size: 68px;
|
18
|
+
letter-spacing: -1px;
|
19
|
+
line-height: 72px;
|
20
|
+
}
|
21
|
+
|
22
|
+
|
23
|
+
h2 {
|
24
|
+
font-size: 32px;
|
25
|
+
line-height: 38px;
|
26
|
+
}
|
27
|
+
|
28
|
+
|
29
|
+
h3 {
|
30
|
+
font-size: 26px;
|
31
|
+
line-height: 36px;
|
32
|
+
}
|
33
|
+
|
34
|
+
|
35
|
+
h4 {
|
36
|
+
font-size: 22px;
|
37
|
+
line-height: 30px;
|
38
|
+
}
|
39
|
+
|
40
|
+
|
41
|
+
h5 {
|
42
|
+
font-size: 20px;
|
43
|
+
line-height: 26px;
|
44
|
+
}
|
45
|
+
|
46
|
+
|
47
|
+
a {
|
48
|
+
color: #33c;
|
49
|
+
text-decoration: underline;
|
50
|
+
|
51
|
+
&:visited {
|
52
|
+
color: #733;
|
53
|
+
}
|
54
|
+
|
55
|
+
&:hover {
|
56
|
+
text-shadow: 0 0 2px #999;
|
57
|
+
}
|
58
|
+
}
|
59
|
+
|
60
|
+
|
61
|
+
pre {
|
62
|
+
overflow: auto;
|
63
|
+
white-space: pre;
|
64
|
+
}
|
65
|
+
|
66
|
+
|
67
|
+
pre, .highlight pre {
|
68
|
+
background-color: #fafafa;
|
69
|
+
border: 1px solid #ccc;
|
70
|
+
border-radius: 3px;
|
71
|
+
font-size: 13px;
|
72
|
+
line-height: 19px;
|
73
|
+
padding: 6px 10px;
|
74
|
+
}
|
75
|
+
|
76
|
+
|
77
|
+
::selection { background: rgb(50, 50, 50); color: rgb(200, 200, 200); }
|
78
|
+
::-moz-selection { background: rgb(50, 50, 50); color: rgb(200, 200, 200); }
|
79
|
+
img::selection { background: transparent; }
|
80
|
+
img::-moz-selection { background: transparent; }
|
81
|
+
|
82
|
+
|
83
|
+
@media only screen and (min-width: 768px) and (max-width: 991px) {
|
84
|
+
body { width: 753px; }
|
85
|
+
}
|
86
|
+
|
87
|
+
|
88
|
+
@media only screen and (min-width: 480px) and (max-width: 767px) {
|
89
|
+
body { width: 465px; }
|
90
|
+
}
|
91
|
+
|
92
|
+
|
93
|
+
@media only screen and (max-width: 479px) {
|
94
|
+
body { width: 300px; }
|
95
|
+
}
|
@@ -0,0 +1,375 @@
|
|
1
|
+
/*! normalize.css v2.0.1 | MIT License | git.io/normalize */
|
2
|
+
|
3
|
+
/* ==========================================================================
|
4
|
+
HTML5 display definitions
|
5
|
+
========================================================================== */
|
6
|
+
|
7
|
+
/*
|
8
|
+
* Corrects `block` display not defined in IE 8/9.
|
9
|
+
*/
|
10
|
+
|
11
|
+
article,
|
12
|
+
aside,
|
13
|
+
details,
|
14
|
+
figcaption,
|
15
|
+
figure,
|
16
|
+
footer,
|
17
|
+
header,
|
18
|
+
hgroup,
|
19
|
+
nav,
|
20
|
+
section,
|
21
|
+
summary {
|
22
|
+
display: block;
|
23
|
+
}
|
24
|
+
|
25
|
+
/*
|
26
|
+
* Corrects `inline-block` display not defined in IE 8/9.
|
27
|
+
*/
|
28
|
+
|
29
|
+
audio,
|
30
|
+
canvas,
|
31
|
+
video {
|
32
|
+
display: inline-block;
|
33
|
+
}
|
34
|
+
|
35
|
+
/*
|
36
|
+
* Prevents modern browsers from displaying `audio` without controls.
|
37
|
+
* Remove excess height in iOS 5 devices.
|
38
|
+
*/
|
39
|
+
|
40
|
+
audio:not([controls]) {
|
41
|
+
display: none;
|
42
|
+
height: 0;
|
43
|
+
}
|
44
|
+
|
45
|
+
/*
|
46
|
+
* Addresses styling for `hidden` attribute not present in IE 8/9.
|
47
|
+
*/
|
48
|
+
|
49
|
+
[hidden] {
|
50
|
+
display: none;
|
51
|
+
}
|
52
|
+
|
53
|
+
/* ==========================================================================
|
54
|
+
Base
|
55
|
+
========================================================================== */
|
56
|
+
|
57
|
+
/*
|
58
|
+
* 1. Sets default font family to sans-serif.
|
59
|
+
* 2. Prevents iOS text size adjust after orientation change, without disabling
|
60
|
+
* user zoom.
|
61
|
+
*/
|
62
|
+
|
63
|
+
html {
|
64
|
+
font-family: sans-serif; /* 1 */
|
65
|
+
-webkit-text-size-adjust: 100%; /* 2 */
|
66
|
+
-ms-text-size-adjust: 100%; /* 2 */
|
67
|
+
}
|
68
|
+
|
69
|
+
/*
|
70
|
+
* Removes default margin.
|
71
|
+
*/
|
72
|
+
|
73
|
+
body {
|
74
|
+
margin: 0;
|
75
|
+
}
|
76
|
+
|
77
|
+
/* ==========================================================================
|
78
|
+
Links
|
79
|
+
========================================================================== */
|
80
|
+
|
81
|
+
/*
|
82
|
+
* Addresses `outline` inconsistency between Chrome and other browsers.
|
83
|
+
*/
|
84
|
+
|
85
|
+
a:focus {
|
86
|
+
outline: thin dotted;
|
87
|
+
}
|
88
|
+
|
89
|
+
/*
|
90
|
+
* Improves readability when focused and also mouse hovered in all browsers.
|
91
|
+
*/
|
92
|
+
|
93
|
+
a:active,
|
94
|
+
a:hover {
|
95
|
+
outline: 0;
|
96
|
+
}
|
97
|
+
|
98
|
+
/* ==========================================================================
|
99
|
+
Typography
|
100
|
+
========================================================================== */
|
101
|
+
|
102
|
+
/*
|
103
|
+
* Addresses `h1` font sizes within `section` and `article` in Firefox 4+,
|
104
|
+
* Safari 5, and Chrome.
|
105
|
+
*/
|
106
|
+
|
107
|
+
h1 {
|
108
|
+
font-size: 2em;
|
109
|
+
}
|
110
|
+
|
111
|
+
/*
|
112
|
+
* Addresses styling not present in IE 8/9, Safari 5, and Chrome.
|
113
|
+
*/
|
114
|
+
|
115
|
+
abbr[title] {
|
116
|
+
border-bottom: 1px dotted;
|
117
|
+
}
|
118
|
+
|
119
|
+
/*
|
120
|
+
* Addresses style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
|
121
|
+
*/
|
122
|
+
|
123
|
+
b,
|
124
|
+
strong {
|
125
|
+
font-weight: bold;
|
126
|
+
}
|
127
|
+
|
128
|
+
/*
|
129
|
+
* Addresses styling not present in Safari 5 and Chrome.
|
130
|
+
*/
|
131
|
+
|
132
|
+
dfn {
|
133
|
+
font-style: italic;
|
134
|
+
}
|
135
|
+
|
136
|
+
/*
|
137
|
+
* Addresses styling not present in IE 8/9.
|
138
|
+
*/
|
139
|
+
|
140
|
+
mark {
|
141
|
+
background: #ff0;
|
142
|
+
color: #000;
|
143
|
+
}
|
144
|
+
|
145
|
+
|
146
|
+
/*
|
147
|
+
* Corrects font family set oddly in Safari 5 and Chrome.
|
148
|
+
*/
|
149
|
+
|
150
|
+
code,
|
151
|
+
kbd,
|
152
|
+
pre,
|
153
|
+
samp {
|
154
|
+
font-family: monospace, serif;
|
155
|
+
font-size: 1em;
|
156
|
+
}
|
157
|
+
|
158
|
+
/*
|
159
|
+
* Improves readability of pre-formatted text in all browsers.
|
160
|
+
*/
|
161
|
+
|
162
|
+
pre {
|
163
|
+
white-space: pre;
|
164
|
+
white-space: pre-wrap;
|
165
|
+
word-wrap: break-word;
|
166
|
+
}
|
167
|
+
|
168
|
+
/*
|
169
|
+
* Sets consistent quote types.
|
170
|
+
*/
|
171
|
+
|
172
|
+
q {
|
173
|
+
quotes: "\201C" "\201D" "\2018" "\2019";
|
174
|
+
}
|
175
|
+
|
176
|
+
/*
|
177
|
+
* Addresses inconsistent and variable font size in all browsers.
|
178
|
+
*/
|
179
|
+
|
180
|
+
small {
|
181
|
+
font-size: 80%;
|
182
|
+
}
|
183
|
+
|
184
|
+
/*
|
185
|
+
* Prevents `sub` and `sup` affecting `line-height` in all browsers.
|
186
|
+
*/
|
187
|
+
|
188
|
+
sub,
|
189
|
+
sup {
|
190
|
+
font-size: 75%;
|
191
|
+
line-height: 0;
|
192
|
+
position: relative;
|
193
|
+
vertical-align: baseline;
|
194
|
+
}
|
195
|
+
|
196
|
+
sup {
|
197
|
+
top: -0.5em;
|
198
|
+
}
|
199
|
+
|
200
|
+
sub {
|
201
|
+
bottom: -0.25em;
|
202
|
+
}
|
203
|
+
|
204
|
+
/* ==========================================================================
|
205
|
+
Embedded content
|
206
|
+
========================================================================== */
|
207
|
+
|
208
|
+
/*
|
209
|
+
* Removes border when inside `a` element in IE 8/9.
|
210
|
+
*/
|
211
|
+
|
212
|
+
img {
|
213
|
+
border: 0;
|
214
|
+
}
|
215
|
+
|
216
|
+
/*
|
217
|
+
* Corrects overflow displayed oddly in IE 9.
|
218
|
+
*/
|
219
|
+
|
220
|
+
svg:not(:root) {
|
221
|
+
overflow: hidden;
|
222
|
+
}
|
223
|
+
|
224
|
+
/* ==========================================================================
|
225
|
+
Figures
|
226
|
+
========================================================================== */
|
227
|
+
|
228
|
+
/*
|
229
|
+
* Addresses margin not present in IE 8/9 and Safari 5.
|
230
|
+
*/
|
231
|
+
|
232
|
+
figure {
|
233
|
+
margin: 0;
|
234
|
+
}
|
235
|
+
|
236
|
+
/* ==========================================================================
|
237
|
+
Forms
|
238
|
+
========================================================================== */
|
239
|
+
|
240
|
+
/*
|
241
|
+
* Define consistent border, margin, and padding.
|
242
|
+
*/
|
243
|
+
|
244
|
+
fieldset {
|
245
|
+
border: 1px solid #c0c0c0;
|
246
|
+
margin: 0 2px;
|
247
|
+
padding: 0.35em 0.625em 0.75em;
|
248
|
+
}
|
249
|
+
|
250
|
+
/*
|
251
|
+
* 1. Corrects color not being inherited in IE 8/9.
|
252
|
+
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
|
253
|
+
*/
|
254
|
+
|
255
|
+
legend {
|
256
|
+
border: 0; /* 1 */
|
257
|
+
padding: 0; /* 2 */
|
258
|
+
}
|
259
|
+
|
260
|
+
/*
|
261
|
+
* 1. Corrects font family not being inherited in all browsers.
|
262
|
+
* 2. Corrects font size not being inherited in all browsers.
|
263
|
+
* 3. Addresses margins set differently in Firefox 4+, Safari 5, and Chrome
|
264
|
+
*/
|
265
|
+
|
266
|
+
button,
|
267
|
+
input,
|
268
|
+
select,
|
269
|
+
textarea {
|
270
|
+
font-family: inherit; /* 1 */
|
271
|
+
font-size: 100%; /* 2 */
|
272
|
+
margin: 0; /* 3 */
|
273
|
+
}
|
274
|
+
|
275
|
+
/*
|
276
|
+
* Addresses Firefox 4+ setting `line-height` on `input` using `!important` in
|
277
|
+
* the UA stylesheet.
|
278
|
+
*/
|
279
|
+
|
280
|
+
button,
|
281
|
+
input {
|
282
|
+
line-height: normal;
|
283
|
+
}
|
284
|
+
|
285
|
+
/*
|
286
|
+
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
|
287
|
+
* and `video` controls.
|
288
|
+
* 2. Corrects inability to style clickable `input` types in iOS.
|
289
|
+
* 3. Improves usability and consistency of cursor style between image-type
|
290
|
+
* `input` and others.
|
291
|
+
*/
|
292
|
+
|
293
|
+
button,
|
294
|
+
html input[type="button"], /* 1 */
|
295
|
+
input[type="reset"],
|
296
|
+
input[type="submit"] {
|
297
|
+
-webkit-appearance: button; /* 2 */
|
298
|
+
cursor: pointer; /* 3 */
|
299
|
+
}
|
300
|
+
|
301
|
+
/*
|
302
|
+
* Re-set default cursor for disabled elements.
|
303
|
+
*/
|
304
|
+
|
305
|
+
button[disabled],
|
306
|
+
input[disabled] {
|
307
|
+
cursor: default;
|
308
|
+
}
|
309
|
+
|
310
|
+
/*
|
311
|
+
* 1. Addresses box sizing set to `content-box` in IE 8/9.
|
312
|
+
* 2. Removes excess padding in IE 8/9.
|
313
|
+
*/
|
314
|
+
|
315
|
+
input[type="checkbox"],
|
316
|
+
input[type="radio"] {
|
317
|
+
box-sizing: border-box; /* 1 */
|
318
|
+
padding: 0; /* 2 */
|
319
|
+
}
|
320
|
+
|
321
|
+
/*
|
322
|
+
* 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome.
|
323
|
+
* 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome
|
324
|
+
* (include `-moz` to future-proof).
|
325
|
+
*/
|
326
|
+
|
327
|
+
input[type="search"] {
|
328
|
+
-webkit-appearance: textfield; /* 1 */
|
329
|
+
-moz-box-sizing: content-box;
|
330
|
+
-webkit-box-sizing: content-box; /* 2 */
|
331
|
+
box-sizing: content-box;
|
332
|
+
}
|
333
|
+
|
334
|
+
/*
|
335
|
+
* Removes inner padding and search cancel button in Safari 5 and Chrome
|
336
|
+
* on OS X.
|
337
|
+
*/
|
338
|
+
|
339
|
+
input[type="search"]::-webkit-search-cancel-button,
|
340
|
+
input[type="search"]::-webkit-search-decoration {
|
341
|
+
-webkit-appearance: none;
|
342
|
+
}
|
343
|
+
|
344
|
+
/*
|
345
|
+
* Removes inner padding and border in Firefox 4+.
|
346
|
+
*/
|
347
|
+
|
348
|
+
button::-moz-focus-inner,
|
349
|
+
input::-moz-focus-inner {
|
350
|
+
border: 0;
|
351
|
+
padding: 0;
|
352
|
+
}
|
353
|
+
|
354
|
+
/*
|
355
|
+
* 1. Removes default vertical scrollbar in IE 8/9.
|
356
|
+
* 2. Improves readability and alignment in all browsers.
|
357
|
+
*/
|
358
|
+
|
359
|
+
textarea {
|
360
|
+
overflow: auto; /* 1 */
|
361
|
+
vertical-align: top; /* 2 */
|
362
|
+
}
|
363
|
+
|
364
|
+
/* ==========================================================================
|
365
|
+
Tables
|
366
|
+
========================================================================== */
|
367
|
+
|
368
|
+
/*
|
369
|
+
* Remove most spacing between table cells.
|
370
|
+
*/
|
371
|
+
|
372
|
+
table {
|
373
|
+
border-collapse: collapse;
|
374
|
+
border-spacing: 0;
|
375
|
+
}
|
@@ -0,0 +1,61 @@
|
|
1
|
+
.hll { background-color: #ffffcc }
|
2
|
+
.c { color: #999988; font-style: italic } /* Comment */
|
3
|
+
.err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
4
|
+
.k { color: #000000; font-weight: bold } /* Keyword */
|
5
|
+
.o { color: #000000; font-weight: bold } /* Operator */
|
6
|
+
.cm { color: #999988; font-style: italic } /* Comment.Multiline */
|
7
|
+
.cp { color: #999999; font-weight: bold; font-style: italic } /* Comment.Preproc */
|
8
|
+
.c1 { color: #999988; font-style: italic } /* Comment.Single */
|
9
|
+
.cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
|
10
|
+
.gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
|
11
|
+
.ge { color: #000000; font-style: italic } /* Generic.Emph */
|
12
|
+
.gr { color: #aa0000 } /* Generic.Error */
|
13
|
+
.gh { color: #999999 } /* Generic.Heading */
|
14
|
+
.gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
|
15
|
+
.go { color: #888888 } /* Generic.Output */
|
16
|
+
.gp { color: #555555 } /* Generic.Prompt */
|
17
|
+
.gs { font-weight: bold } /* Generic.Strong */
|
18
|
+
.gu { color: #aaaaaa } /* Generic.Subheading */
|
19
|
+
.gt { color: #aa0000 } /* Generic.Traceback */
|
20
|
+
.kc { color: #000000; font-weight: bold } /* Keyword.Constant */
|
21
|
+
.kd { color: #000000; font-weight: bold } /* Keyword.Declaration */
|
22
|
+
.kn { color: #000000; font-weight: bold } /* Keyword.Namespace */
|
23
|
+
.kp { color: #000000; font-weight: bold } /* Keyword.Pseudo */
|
24
|
+
.kr { color: #000000; font-weight: bold } /* Keyword.Reserved */
|
25
|
+
.kt { color: #445588; font-weight: bold } /* Keyword.Type */
|
26
|
+
.m { color: #009999 } /* Literal.Number */
|
27
|
+
.s { color: #d01040 } /* Literal.String */
|
28
|
+
.na { color: #008080 } /* Name.Attribute */
|
29
|
+
.nb { color: #0086B3 } /* Name.Builtin */
|
30
|
+
.nc { color: #445588; font-weight: bold } /* Name.Class */
|
31
|
+
.no { color: #008080 } /* Name.Constant */
|
32
|
+
.nd { color: #3c5d5d; font-weight: bold } /* Name.Decorator */
|
33
|
+
.ni { color: #800080 } /* Name.Entity */
|
34
|
+
.ne { color: #990000; font-weight: bold } /* Name.Exception */
|
35
|
+
.nf { color: #990000; font-weight: bold } /* Name.Function */
|
36
|
+
.nl { color: #990000; font-weight: bold } /* Name.Label */
|
37
|
+
.nn { color: #555555 } /* Name.Namespace */
|
38
|
+
.nt { color: #000080 } /* Name.Tag */
|
39
|
+
.nv { color: #008080 } /* Name.Variable */
|
40
|
+
.ow { color: #000000; font-weight: bold } /* Operator.Word */
|
41
|
+
.w { color: #bbbbbb } /* Text.Whitespace */
|
42
|
+
.mf { color: #009999 } /* Literal.Number.Float */
|
43
|
+
.mh { color: #009999 } /* Literal.Number.Hex */
|
44
|
+
.mi { color: #009999 } /* Literal.Number.Integer */
|
45
|
+
.mo { color: #009999 } /* Literal.Number.Oct */
|
46
|
+
.sb { color: #d01040 } /* Literal.String.Backtick */
|
47
|
+
.sc { color: #d01040 } /* Literal.String.Char */
|
48
|
+
.sd { color: #d01040 } /* Literal.String.Doc */
|
49
|
+
.s2 { color: #d01040 } /* Literal.String.Double */
|
50
|
+
.se { color: #d01040 } /* Literal.String.Escape */
|
51
|
+
.sh { color: #d01040 } /* Literal.String.Heredoc */
|
52
|
+
.si { color: #d01040 } /* Literal.String.Interpol */
|
53
|
+
.sx { color: #d01040 } /* Literal.String.Other */
|
54
|
+
.sr { color: #009926 } /* Literal.String.Regex */
|
55
|
+
.s1 { color: #d01040 } /* Literal.String.Single */
|
56
|
+
.ss { color: #990073 } /* Literal.String.Symbol */
|
57
|
+
.bp { color: #999999 } /* Name.Builtin.Pseudo */
|
58
|
+
.vc { color: #008080 } /* Name.Variable.Class */
|
59
|
+
.vg { color: #008080 } /* Name.Variable.Global */
|
60
|
+
.vi { color: #008080 } /* Name.Variable.Instance */
|
61
|
+
.il { color: #009999 } /* Literal.Number.Integer.Long */
|
metadata
ADDED
@@ -0,0 +1,159 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: maddoc
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Aleksey
|
9
|
+
- V
|
10
|
+
- Zapparov
|
11
|
+
autorequire:
|
12
|
+
bindir: bin
|
13
|
+
cert_chain: []
|
14
|
+
date: 2012-11-24 00:00:00.000000000 Z
|
15
|
+
dependencies:
|
16
|
+
- !ruby/object:Gem::Dependency
|
17
|
+
name: redcarpet
|
18
|
+
requirement: !ruby/object:Gem::Requirement
|
19
|
+
none: false
|
20
|
+
requirements:
|
21
|
+
- - ~>
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: '2.2'
|
24
|
+
type: :runtime
|
25
|
+
prerelease: false
|
26
|
+
version_requirements: !ruby/object:Gem::Requirement
|
27
|
+
none: false
|
28
|
+
requirements:
|
29
|
+
- - ~>
|
30
|
+
- !ruby/object:Gem::Version
|
31
|
+
version: '2.2'
|
32
|
+
- !ruby/object:Gem::Dependency
|
33
|
+
name: slim
|
34
|
+
requirement: !ruby/object:Gem::Requirement
|
35
|
+
none: false
|
36
|
+
requirements:
|
37
|
+
- - ~>
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '1.3'
|
40
|
+
type: :runtime
|
41
|
+
prerelease: false
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
43
|
+
none: false
|
44
|
+
requirements:
|
45
|
+
- - ~>
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.3'
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: sass
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
51
|
+
none: false
|
52
|
+
requirements:
|
53
|
+
- - ~>
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '3.2'
|
56
|
+
type: :runtime
|
57
|
+
prerelease: false
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
60
|
+
requirements:
|
61
|
+
- - ~>
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '3.2'
|
64
|
+
- !ruby/object:Gem::Dependency
|
65
|
+
name: sprockets
|
66
|
+
requirement: !ruby/object:Gem::Requirement
|
67
|
+
none: false
|
68
|
+
requirements:
|
69
|
+
- - ~>
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: '2.8'
|
72
|
+
type: :runtime
|
73
|
+
prerelease: false
|
74
|
+
version_requirements: !ruby/object:Gem::Requirement
|
75
|
+
none: false
|
76
|
+
requirements:
|
77
|
+
- - ~>
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: '2.8'
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: pygments.rb
|
82
|
+
requirement: !ruby/object:Gem::Requirement
|
83
|
+
none: false
|
84
|
+
requirements:
|
85
|
+
- - ~>
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0.3'
|
88
|
+
type: :runtime
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: !ruby/object:Gem::Requirement
|
91
|
+
none: false
|
92
|
+
requirements:
|
93
|
+
- - ~>
|
94
|
+
- !ruby/object:Gem::Version
|
95
|
+
version: '0.3'
|
96
|
+
- !ruby/object:Gem::Dependency
|
97
|
+
name: rake
|
98
|
+
requirement: !ruby/object:Gem::Requirement
|
99
|
+
none: false
|
100
|
+
requirements:
|
101
|
+
- - ! '>='
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
none: false
|
108
|
+
requirements:
|
109
|
+
- - ! '>='
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: '0'
|
112
|
+
description: Better markdown to HTML renderer.
|
113
|
+
email:
|
114
|
+
- ixti@member.fsf.org
|
115
|
+
executables:
|
116
|
+
- maddoc
|
117
|
+
extensions: []
|
118
|
+
extra_rdoc_files: []
|
119
|
+
files:
|
120
|
+
- .gitignore
|
121
|
+
- Gemfile
|
122
|
+
- LICENSE
|
123
|
+
- README.md
|
124
|
+
- Rakefile
|
125
|
+
- bin/maddoc
|
126
|
+
- lib/maddoc.rb
|
127
|
+
- lib/maddoc/runner.rb
|
128
|
+
- lib/maddoc/version.rb
|
129
|
+
- maddoc.gemspec
|
130
|
+
- templates/assets/stylesheets/main.css.scss
|
131
|
+
- templates/assets/stylesheets/normalize.css
|
132
|
+
- templates/assets/stylesheets/pygments.css
|
133
|
+
- templates/layout.slim
|
134
|
+
homepage: http://ixti.github.com/maddoc
|
135
|
+
licenses: []
|
136
|
+
post_install_message:
|
137
|
+
rdoc_options: []
|
138
|
+
require_paths:
|
139
|
+
- lib
|
140
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
141
|
+
none: false
|
142
|
+
requirements:
|
143
|
+
- - ! '>='
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0'
|
146
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
147
|
+
none: false
|
148
|
+
requirements:
|
149
|
+
- - ! '>='
|
150
|
+
- !ruby/object:Gem::Version
|
151
|
+
version: '0'
|
152
|
+
requirements: []
|
153
|
+
rubyforge_project:
|
154
|
+
rubygems_version: 1.8.23
|
155
|
+
signing_key:
|
156
|
+
specification_version: 3
|
157
|
+
summary: maddoc-#{MadDoc::VERSION}
|
158
|
+
test_files: []
|
159
|
+
has_rdoc:
|