-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.rb
136 lines (106 loc) · 2.84 KB
/
config.rb
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
###
# Page command
###
page "/demos/*", :layout => "demo_layout" do
@demos = Dir[File.expand_path('../source/demos/*/', __FILE__)].map{ |d| File.basename(d) }
@lab_demos = Dir[File.expand_path('../source/lab/demos/*/', __FILE__)].map{ |d| File.basename(d) }
end
page "/lab/demos/*", :layout => "demo_layout" do
@demos = Dir[File.expand_path('../source/demos/*/', __FILE__)].map{ |d| File.basename(d) }
@lab_demos = Dir[File.expand_path('../source/lab/demos/*/', __FILE__)].map{ |d| File.basename(d) }
end
page "/*" do
@demos = Dir[File.expand_path('../source/demos/*/', __FILE__)].map{ |d| File.basename(d) }
@lab_demos = Dir[File.expand_path('../source/lab/demos/*/', __FILE__)].map{ |d| File.basename(d) }
end
# Per-page layout changes:
#
# With no layout
# page "/path/to/file.html", :layout => false
#
# With alternative layout
# page "/path/to/file.html", :layout => :otherlayout
#
# A path which all have the same layout
# with_layout :admin do
# page "/admin/*"
# end
# Proxy (fake) files
# page "/this-page-has-no-template.html", :proxy => "/template-file.html" do
# @which_fake_page = "Rendering a fake page with a variable"
# end
###
# Helpers
###
helpers do
def demo_path(demo_name)
"/demos/#{demo_name}"
end
def lab_demo_path(demo_name)
"/lab/demos/#{demo_name}"
end
def title(page_title, page_subtitle = nil)
content_for(:title) { page_title }
end
def body_class(body_class)
content_for(:body_class){ body_class }
end
def root_path
"/"
end
def static_api_key(boolean)
content_for(:static_api_key){ boolean }
end
def api_hardcoded?
return true if content_for?(:static_api_key) == true
end
def root_path
"/"
end
end
module Haml::Filters
module Scss
include Base
lazy_require 'sass/plugin'
def render(text)
::Sass::Engine.new(text, ::Sass::Plugin.engine_options.merge(:syntax => :scss)).render
end
end
end
###
# Config
###
# Nothing, yet.
# Build-specific configuration
configure :build do
# For example, change the Compass output style for deployment
# activate :minify_css
# Minify Javascript on build
# activate :minify_javascript
# Enable cache buster
# activate :cache_buster
# Use relative URLs
# activate :relative_assets
# Compress PNGs after build
# First: gem install middleman-smusher
# require "middleman-smusher"
# activate :smusher
# Or use a different image path
# set :http_path, "/Content/images/"
#
helpers do
def link_to(label, link, options = {})
if link =~ /^http/ || link =~ /^{{/
super(label, link, options)
else
super(label, File.join("/fishpond-examples", link), options)
end
end
def asset_url(path, prefix = nil)
File.join "/fishpond-examples", super(path, prefix)
end
def root_path
"/fishpond-examples/"
end
end
end