madness 0.0.5 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +45 -0
- data/app/public/css/main.css +12 -6
- data/app/public/css/main.css.map +1 -1
- data/app/public/favicon.ico +0 -0
- data/app/styles/_code.scss +4 -4
- data/app/styles/_coderay.scss +6 -3
- data/app/styles/main.scss +12 -5
- data/app/views/document.slim +0 -2
- data/app/views/layout.slim +1 -2
- data/lib/madness.rb +1 -1
- data/lib/madness/command_line.rb +7 -6
- data/lib/madness/docopt.txt +3 -3
- data/lib/madness/document.rb +14 -9
- data/lib/madness/navigation.rb +1 -1
- data/lib/madness/server.rb +6 -4
- data/lib/madness/server_helper.rb +8 -0
- data/lib/madness/settings.rb +33 -0
- data/lib/madness/version.rb +1 -1
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 667ab17b01bf2fdd81d2b41f224f944f93ebbcd4
|
4
|
+
data.tar.gz: beb06296be69db6263f654008018f9ae48a6feea
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0eb617a3a992cd770850cd60ca9a11d88e03f1a05316dbd98e40d0b0e8afc844175f58557ed6501081efa93e1f694fd3788d2e7c6a4bd253fe348a42685edac8
|
7
|
+
data.tar.gz: 1d823674f3222079ce70a8f0454e7b4a1e83d2d11fe6ac6aac4189dfed180d9ca2cbda005949129d4db44310be325cb065d4b5836e3468ce63b206af6f5243f5
|
data/README.md
CHANGED
@@ -8,6 +8,12 @@ Madness - Instant Markdown Server
|
|
8
8
|
|
9
9
|
---
|
10
10
|
|
11
|
+
Screenshot
|
12
|
+
--------------------------------------------------
|
13
|
+
|
14
|
+
![Screenshot]
|
15
|
+
|
16
|
+
|
11
17
|
Install
|
12
18
|
--------------------------------------------------
|
13
19
|
|
@@ -40,3 +46,42 @@ main file describing this directory.
|
|
40
46
|
The navigation sidebar will show all the sub directories and files in
|
41
47
|
the same directory as the viewed file.
|
42
48
|
|
49
|
+
Example structure:
|
50
|
+
|
51
|
+
```
|
52
|
+
./
|
53
|
+
├── README.md
|
54
|
+
├── Code.md
|
55
|
+
├── Double Escape.md
|
56
|
+
├── File-with-Dashes.md
|
57
|
+
├── Folder
|
58
|
+
│ └── File.md
|
59
|
+
└── Another Folder
|
60
|
+
├── README.md
|
61
|
+
├── Headings.md
|
62
|
+
├── Images.md
|
63
|
+
└── Lists.md
|
64
|
+
```
|
65
|
+
|
66
|
+
Configuration File
|
67
|
+
--------------------------------------------------
|
68
|
+
|
69
|
+
All the command line arguments can also be configured through a
|
70
|
+
configuration file. Create a file named `.madness.yml` in your
|
71
|
+
documentation directory, and modify any of the settings below.
|
72
|
+
|
73
|
+
```yaml
|
74
|
+
# .madness.yml
|
75
|
+
---
|
76
|
+
path: '.'
|
77
|
+
port: '3000'
|
78
|
+
bind: '0.0.0.0'
|
79
|
+
autoh1: true
|
80
|
+
highlighter: true
|
81
|
+
line_numbers: true
|
82
|
+
```
|
83
|
+
|
84
|
+
|
85
|
+
---
|
86
|
+
|
87
|
+
[Screenshot]: https://raw.githubusercontent.com/DannyBen/madness/master/screenshot.png
|
data/app/public/css/main.css
CHANGED
@@ -139,15 +139,13 @@ code {
|
|
139
139
|
padding-top: 0.2em;
|
140
140
|
padding-bottom: 0.2em;
|
141
141
|
margin: 0;
|
142
|
-
background-color:
|
142
|
+
background-color: #eee;
|
143
143
|
border-radius: 3px; }
|
144
144
|
code:before, code:after {
|
145
145
|
letter-spacing: -0.2em;
|
146
146
|
content: "\00a0"; }
|
147
147
|
|
148
148
|
pre {
|
149
|
-
margin-top: 0;
|
150
|
-
margin-bottom: 0;
|
151
149
|
overflow: auto;
|
152
150
|
line-height: 1.45;
|
153
151
|
word-wrap: normal; }
|
@@ -160,10 +158,10 @@ pre {
|
|
160
158
|
background: transparent;
|
161
159
|
border: 0; }
|
162
160
|
pre code {
|
161
|
+
margin: 0;
|
163
162
|
display: inline;
|
164
163
|
max-width: initial;
|
165
164
|
padding: 0;
|
166
|
-
margin: 0;
|
167
165
|
overflow: initial;
|
168
166
|
line-height: inherit;
|
169
167
|
word-wrap: normal;
|
@@ -176,6 +174,11 @@ pre {
|
|
176
174
|
td.line-numbers {
|
177
175
|
background: #eee; }
|
178
176
|
|
177
|
+
table.CodeRay {
|
178
|
+
margin-bottom: 0; }
|
179
|
+
table.CodeRay pre {
|
180
|
+
margin-bottom: 0; }
|
181
|
+
|
179
182
|
img {
|
180
183
|
border-style: none;
|
181
184
|
max-width: 100%;
|
@@ -223,11 +226,14 @@ main {
|
|
223
226
|
padding: 0 20px 100px 20px;
|
224
227
|
margin-left: 250px;
|
225
228
|
border: 1px solid #ccc;
|
226
|
-
border-width:
|
229
|
+
border-width: 0 1px;
|
227
230
|
min-height: 100vh; }
|
231
|
+
main:before, main:after {
|
232
|
+
display: table;
|
233
|
+
content: ""; }
|
228
234
|
|
229
235
|
.breadcrumbs {
|
230
|
-
margin-top:
|
236
|
+
margin-top: 6px;
|
231
237
|
border-bottom: 1px solid #ccc; }
|
232
238
|
.breadcrumbs a {
|
233
239
|
display: inline-block;
|
data/app/public/css/main.css.map
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
|
-
"mappings": "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
|
3
|
+
"mappings": "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",
|
4
4
|
"sources": ["../../styles/_general.scss","../../styles/_typography.scss","../../styles/_table.scss","../../styles/_anchor.scss","../../styles/_list.scss","../../styles/_code.scss","../../styles/_coderay.scss","../../styles/_image.scss","../../styles/_line.scss","../../styles/_keyboard.scss","../../styles/main.scss"],
|
5
5
|
"names": [],
|
6
6
|
"file": "main.css"
|
Binary file
|
data/app/styles/_code.scss
CHANGED
@@ -4,7 +4,7 @@ code {
|
|
4
4
|
padding-bottom: 0.2em;
|
5
5
|
margin: 0;
|
6
6
|
// font-size: 85%;
|
7
|
-
background-color:
|
7
|
+
background-color: #eee;
|
8
8
|
border-radius: 3px;
|
9
9
|
|
10
10
|
&:before, &:after {
|
@@ -14,8 +14,8 @@ code {
|
|
14
14
|
}
|
15
15
|
|
16
16
|
pre {
|
17
|
-
margin-top: 0;
|
18
|
-
margin-bottom: 0;
|
17
|
+
// margin-top: 0;
|
18
|
+
// margin-bottom: 0;
|
19
19
|
|
20
20
|
// padding: 16px;
|
21
21
|
overflow: auto;
|
@@ -36,10 +36,10 @@ pre {
|
|
36
36
|
}
|
37
37
|
|
38
38
|
code {
|
39
|
+
margin: 0;
|
39
40
|
display: inline;
|
40
41
|
max-width: initial;
|
41
42
|
padding: 0;
|
42
|
-
margin: 0;
|
43
43
|
overflow: initial;
|
44
44
|
line-height: inherit;
|
45
45
|
word-wrap: normal;
|
data/app/styles/_coderay.scss
CHANGED
data/app/styles/main.scss
CHANGED
@@ -1,7 +1,5 @@
|
|
1
1
|
@import "manifest";
|
2
2
|
|
3
|
-
$top-margin: 10px;
|
4
|
-
|
5
3
|
body {
|
6
4
|
max-width: 1300px;
|
7
5
|
margin: 0 auto;
|
@@ -11,12 +9,21 @@ main {
|
|
11
9
|
padding: 0 20px 100px 20px;
|
12
10
|
margin-left: 250px;
|
13
11
|
border:1px solid #ccc;
|
14
|
-
border-width:
|
12
|
+
border-width: 0 1px;
|
15
13
|
min-height: 100vh;
|
14
|
+
|
15
|
+
&:before, &:after {
|
16
|
+
display: table;
|
17
|
+
content: "";
|
18
|
+
}
|
19
|
+
|
20
|
+
&:after {
|
21
|
+
// clear: both;
|
22
|
+
}
|
16
23
|
}
|
17
24
|
|
18
25
|
.breadcrumbs {
|
19
|
-
margin-top:
|
26
|
+
margin-top: 6px;
|
20
27
|
border-bottom: 1px solid #ccc;
|
21
28
|
a {
|
22
29
|
display: inline-block;
|
@@ -30,7 +37,7 @@ nav {
|
|
30
37
|
width: 250px;
|
31
38
|
overflow-y: auto;
|
32
39
|
position: fixed;
|
33
|
-
padding:
|
40
|
+
padding: 10px 0 100px 0;
|
34
41
|
border-right: 1px solid #eee;
|
35
42
|
a, span {
|
36
43
|
&:hover {
|
data/app/views/document.slim
CHANGED
data/app/views/layout.slim
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
doctype html
|
2
2
|
|
3
3
|
head
|
4
|
-
title
|
5
|
-
/ link href='https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css' rel='stylesheet' type='text/css'
|
4
|
+
title = locals[:title]
|
6
5
|
link href='/css/main.css' rel='stylesheet' type='text/css'
|
7
6
|
|
8
7
|
body
|
data/lib/madness.rb
CHANGED
data/lib/madness/command_line.rb
CHANGED
@@ -38,18 +38,19 @@ module Madness
|
|
38
38
|
end
|
39
39
|
|
40
40
|
def set_config(args)
|
41
|
-
config.path = args['PATH']
|
42
|
-
config.port = args['--port']
|
43
|
-
config.bind = args['--bind']
|
44
|
-
config.autoh1
|
45
|
-
config.highlighter
|
46
|
-
config.line_numbers = false
|
41
|
+
config.path = args['PATH'] if args['PATH']
|
42
|
+
config.port = args['--port'] if args['--port']
|
43
|
+
config.bind = args['--bind'] if args['--bind']
|
44
|
+
config.autoh1 = false if args['--no-auto-h1']
|
45
|
+
config.highlighter = false if args['--no-syntax']
|
46
|
+
config.line_numbers = false if args['--no-line-numbers']
|
47
47
|
end
|
48
48
|
|
49
49
|
def show_status
|
50
50
|
say_status :start, 'the madness'
|
51
51
|
say_status :listen, "#{config.bind}:#{config.port}", :txtblu
|
52
52
|
say_status :path, config.path, :txtblu
|
53
|
+
say_status :use, config.filename if config.file_exist?
|
53
54
|
say "-" * 40
|
54
55
|
end
|
55
56
|
|
data/lib/madness/docopt.txt
CHANGED
@@ -6,14 +6,14 @@ Usage:
|
|
6
6
|
|
7
7
|
Parameters:
|
8
8
|
PATH:
|
9
|
-
|
9
|
+
Optional path to the markdown directory.
|
10
10
|
|
11
11
|
Options:
|
12
12
|
-p, --port <number>
|
13
|
-
Set server port number.
|
13
|
+
Set server port number.
|
14
14
|
|
15
15
|
-b, --bind <address>
|
16
|
-
Set server listen address.
|
16
|
+
Set server listen address.
|
17
17
|
|
18
18
|
--no-auto-h1
|
19
19
|
By default, if a markdown document does not start with an H1 caption,
|
data/lib/madness/document.rb
CHANGED
@@ -37,22 +37,27 @@ module Madness
|
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
40
|
+
def title
|
41
|
+
if file =~ /README.md/
|
42
|
+
result = File.basename File.dirname(file)
|
43
|
+
else
|
44
|
+
result = File.basename(file,'.md')
|
45
|
+
end
|
46
|
+
result.tr '-', ' '
|
47
|
+
end
|
48
|
+
|
49
|
+
private
|
50
|
+
|
40
51
|
def markdown_to_html(html)
|
41
52
|
html = RDiscount.new(File.read file).to_html
|
42
53
|
html = syntax_highlight(html) if config.highlighter
|
43
|
-
html = prepend_h1(html
|
54
|
+
html = prepend_h1(html) if config.autoh1
|
44
55
|
html
|
45
56
|
end
|
46
57
|
|
47
|
-
def prepend_h1(html
|
58
|
+
def prepend_h1(html)
|
48
59
|
unless html[0..3] == "<h1>"
|
49
|
-
|
50
|
-
h1 = File.basename File.dirname(filename)
|
51
|
-
else
|
52
|
-
h1 = File.basename(filename,'.md')
|
53
|
-
end
|
54
|
-
|
55
|
-
html = "<h1>#{h1}</h1>\n#{html}"
|
60
|
+
html = "<h1>#{title}</h1>\n#{html}"
|
56
61
|
end
|
57
62
|
html
|
58
63
|
end
|
data/lib/madness/navigation.rb
CHANGED
data/lib/madness/server.rb
CHANGED
@@ -3,7 +3,6 @@ module Madness
|
|
3
3
|
class Server < ServerBase
|
4
4
|
get '/*' do
|
5
5
|
path = params[:splat].first
|
6
|
-
debug = nil
|
7
6
|
|
8
7
|
doc = Document.new path
|
9
8
|
dir = doc.dir
|
@@ -12,14 +11,17 @@ module Madness
|
|
12
11
|
nav = Navigation.new(dir)
|
13
12
|
breadcrumbs = Breadcrumbs.new(path).links
|
14
13
|
|
14
|
+
if nav.links.count == 1 and doc.type == :empty
|
15
|
+
redirect to(nav.links.first.href)
|
16
|
+
end
|
17
|
+
|
15
18
|
slim :document, locals: {
|
16
19
|
content: content,
|
17
20
|
type: doc.type,
|
21
|
+
title: doc.title,
|
18
22
|
nav: nav,
|
19
|
-
breadcrumbs: breadcrumbs
|
20
|
-
debug: debug
|
23
|
+
breadcrumbs: breadcrumbs
|
21
24
|
}
|
22
25
|
end
|
23
|
-
|
24
26
|
end
|
25
27
|
end
|
data/lib/madness/settings.rb
CHANGED
@@ -10,6 +10,22 @@ module Madness
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def reset
|
13
|
+
@config_file = nil
|
14
|
+
set_defaults
|
15
|
+
load_from_file if config_file
|
16
|
+
end
|
17
|
+
|
18
|
+
def file_exist?
|
19
|
+
File.exist? filename
|
20
|
+
end
|
21
|
+
|
22
|
+
def filename
|
23
|
+
'.madness.yml'
|
24
|
+
end
|
25
|
+
|
26
|
+
private
|
27
|
+
|
28
|
+
def set_defaults
|
13
29
|
self.port = '3000'
|
14
30
|
self.bind = '0.0.0.0'
|
15
31
|
self.path = '.'
|
@@ -18,5 +34,22 @@ module Madness
|
|
18
34
|
self.line_numbers = true
|
19
35
|
end
|
20
36
|
|
37
|
+
def load_from_file
|
38
|
+
config_file.each do |key, value|
|
39
|
+
instance_variable_set("@#{key}", value)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
def config_file
|
44
|
+
@config_file ||= config_file!
|
45
|
+
end
|
46
|
+
|
47
|
+
def config_file!
|
48
|
+
if file_exist?
|
49
|
+
YAML.load_file filename
|
50
|
+
else
|
51
|
+
{}
|
52
|
+
end
|
53
|
+
end
|
21
54
|
end
|
22
55
|
end
|
data/lib/madness/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: madness
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Danny Ben Shitrit
|
@@ -244,6 +244,7 @@ files:
|
|
244
244
|
- README.md
|
245
245
|
- app/public/css/main.css
|
246
246
|
- app/public/css/main.css.map
|
247
|
+
- app/public/favicon.ico
|
247
248
|
- app/styles/_anchor.scss
|
248
249
|
- app/styles/_code.scss
|
249
250
|
- app/styles/_coderay.scss
|