forked from manveru/ramaze.net
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Rules
84 lines (67 loc) · 1.35 KB
/
Rules
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# Configuration
redcarpet_options = {
:options => {
:tables => true,
:fenced_code_blocks => true,
:strikethrough => true
}
}
partials = ['_head', '_header', '_footer']
layouts = ['default', 'home', 'blog', 'entry']
pages = ['/', '/pages/*']
compile '/stylesheets/*' do
filter :sass, :syntax => :scss, :style => :compressed
end
compile '/404' do
filter :redcarpet, redcarpet_options
layout 'simple'
end
pages.each do |path|
compile path do
filter :redcarpet, redcarpet_options
filter :erb
filter :colorize_syntax
layout 'default'
end
end
compile '/blog' do
filter :redcarpet, redcarpet_options
filter :erb
filter :colorize_syntax
layout 'blog'
end
compile '/blog/entry/*' do
filter :redcarpet, redcarpet_options
filter :erb
filter :colorize_syntax
layout 'entry'
end
compile '*' do
nil
end
# Routes
route '/stylesheets/*' do
item.identifier.chop + '.css'
end
route '/404' do
'/404.html'
end
# Rewrites /pages/community.html to /community/index.html.
route '/pages/*' do
"/#{File.basename(item.identifier)}/index.html"
end
route '*' do
if item.binary?
item.identifier.chop + '.' + item[:extension]
else
item.identifier + 'index.html'
end
end
# Layouts
layouts.each do |file|
layout file, :erb
end
partials.each do |file|
layout file, :erb
end
# vim: set ft=ruby: