stasis 0.1.22 → 0.1.23
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.
- data/README.md +0 -2
- data/lib/stasis.rb +14 -5
- data/lib/stasis/plugin.rb +1 -0
- data/site/index.html.haml +19 -2
- data/site/stasis.css.scss +19 -0
- data/stasis.gemspec +1 -1
- metadata +29 -29
data/README.md
CHANGED
data/lib/stasis.rb
CHANGED
@@ -71,6 +71,9 @@ class Stasis
|
|
71
71
|
# `String` -- the root path passed to `Stasis.new`.
|
72
72
|
attr_accessor :root
|
73
73
|
|
74
|
+
# `String` -- the view output from Tilt.
|
75
|
+
attr_accessor :output
|
76
|
+
|
74
77
|
def initialize(root, *args)
|
75
78
|
@options = {}
|
76
79
|
@options = args.pop if args.last.is_a?(::Hash)
|
@@ -206,7 +209,7 @@ class Stasis
|
|
206
209
|
# If a layout was specified via the `layout` method...
|
207
210
|
if @action._layout
|
208
211
|
# Render the layout with a block for the layout to `yield` to.
|
209
|
-
@action.render(@action._layout) { output }
|
212
|
+
@action.render(@action._layout, render_opts) { output }
|
210
213
|
# If a layout was not specified...
|
211
214
|
else
|
212
215
|
output
|
@@ -217,6 +220,9 @@ class Stasis
|
|
217
220
|
@action._render
|
218
221
|
end
|
219
222
|
|
223
|
+
# Set @output instance variable for manipulation from within plugins
|
224
|
+
@output = view
|
225
|
+
|
220
226
|
# Trigger all plugin `after_render` events.
|
221
227
|
trigger(:after_render)
|
222
228
|
|
@@ -241,16 +247,16 @@ class Stasis
|
|
241
247
|
end
|
242
248
|
|
243
249
|
# If markup was rendered...
|
244
|
-
if
|
250
|
+
if @output
|
245
251
|
# Write the rendered markup to the destination.
|
246
252
|
if render_options[:write] != false
|
247
253
|
File.open(dest, 'w') do |f|
|
248
|
-
f.write(
|
254
|
+
f.write(@output)
|
249
255
|
end
|
250
256
|
end
|
251
257
|
# Collect render output.
|
252
258
|
if render_options[:collect]
|
253
|
-
collect[relative[1..-1]] =
|
259
|
+
collect[relative[1..-1]] = @output
|
254
260
|
end
|
255
261
|
# If markup was not rendered and the path exists...
|
256
262
|
elsif File.exists?(@path)
|
@@ -259,13 +265,16 @@ class Stasis
|
|
259
265
|
FileUtils.cp(@path, dest)
|
260
266
|
end
|
261
267
|
end
|
268
|
+
|
269
|
+
# Trigger all plugin `after_write` events. Only fires if view was created.
|
270
|
+
trigger(:after_write)
|
262
271
|
end
|
263
272
|
|
264
273
|
# Trigger all plugin `after_all` events, passing the `Stasis` instance.
|
265
274
|
trigger(:after_all)
|
266
275
|
|
267
276
|
# Unset class-level instance variables.
|
268
|
-
@action, @path = nil, nil
|
277
|
+
@action, @path, @output = nil, nil, nil
|
269
278
|
|
270
279
|
# Respond with collected render output if `collect` option given.
|
271
280
|
collect if render_options[:collect]
|
data/lib/stasis/plugin.rb
CHANGED
data/site/index.html.haml
CHANGED
@@ -16,9 +16,26 @@
|
|
16
16
|
%img{ :src => 'stasis.png' }>
|
17
17
|
stasis
|
18
18
|
%img.reverse{ :src => 'stasis.png' }>
|
19
|
-
#
|
19
|
+
#share
|
20
|
+
%br/
|
21
|
+
%iframe{ :src => "http://markdotto.github.com/github-buttons/github-btn.html?user=winton&repo=stasis&type=watch&count=true", :allowtransparency => "true", :frameborder => "0", :scrolling => "0", :width => "110px", :height => "20px" }
|
22
|
+
%a{ :href => "https://twitter.com/wintonius", :class => "twitter-follow-button", 'data-show-count' => "false" } Follow @wintonius
|
23
|
+
#tm
|
24
|
+
Static Sites Made Powerful
|
20
25
|
#body
|
21
26
|
~ @readme
|
22
27
|
.clear
|
28
|
+
%h3
|
29
|
+
%a{ :name => "thanks", :href => "#thanks" } Thanks
|
30
|
+
%p
|
31
|
+
Please follow the project on Github:
|
32
|
+
%br/
|
33
|
+
%iframe{ :src => "http://markdotto.github.com/github-buttons/github-btn.html?user=winton&repo=stasis&type=watch&count=true", :allowtransparency => "true", :frameborder => "0", :scrolling => "0", :width => "110px", :height => "20px" }
|
34
|
+
%br/
|
35
|
+
Follow Winton Welsh on Twitter for updates:
|
36
|
+
%br/
|
37
|
+
%a{ :href => "https://twitter.com/wintonius", :class => "twitter-follow-button", 'data-show-count' => "false" } Follow @wintonius
|
23
38
|
%script{ :src => "https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js", :type => "text/javascript" }
|
24
|
-
%script{ :src => "stasis.js", :type => "text/javascript" }
|
39
|
+
%script{ :src => "stasis.js", :type => "text/javascript" }
|
40
|
+
:javascript
|
41
|
+
!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
|
data/site/stasis.css.scss
CHANGED
@@ -90,6 +90,25 @@ ul {
|
|
90
90
|
}
|
91
91
|
}
|
92
92
|
|
93
|
+
#share {
|
94
|
+
margin-top: -20px;
|
95
|
+
text-align: center;
|
96
|
+
|
97
|
+
a, iframe {
|
98
|
+
margin-top: 20px;
|
99
|
+
opacity: 0.6;
|
100
|
+
}
|
101
|
+
|
102
|
+
a:hover, iframe:hover {
|
103
|
+
opacity: 1;
|
104
|
+
}
|
105
|
+
|
106
|
+
iframe {
|
107
|
+
margin-left: 4px;
|
108
|
+
margin-right: 5px;
|
109
|
+
}
|
110
|
+
}
|
111
|
+
|
93
112
|
#tm {
|
94
113
|
font-size: 19.4px;
|
95
114
|
font-weight: 700;
|
data/stasis.gemspec
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stasis
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 53
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 23
|
10
|
+
version: 0.1.23
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Winton Welsh
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-
|
18
|
+
date: 2012-05-21 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
version_requirements: &id001 !ruby/object:Gem::Requirement
|
@@ -27,10 +27,10 @@ dependencies:
|
|
27
27
|
segments:
|
28
28
|
- 0
|
29
29
|
version: "0"
|
30
|
-
requirement: *id001
|
31
30
|
prerelease: false
|
32
|
-
name: albino
|
33
31
|
type: :development
|
32
|
+
name: albino
|
33
|
+
requirement: *id001
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
version_requirements: &id002 !ruby/object:Gem::Requirement
|
36
36
|
none: false
|
@@ -41,10 +41,10 @@ dependencies:
|
|
41
41
|
segments:
|
42
42
|
- 0
|
43
43
|
version: "0"
|
44
|
-
requirement: *id002
|
45
44
|
prerelease: false
|
46
|
-
name: coffee-script
|
47
45
|
type: :development
|
46
|
+
name: coffee-script
|
47
|
+
requirement: *id002
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
49
|
version_requirements: &id003 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
@@ -55,10 +55,10 @@ dependencies:
|
|
55
55
|
segments:
|
56
56
|
- 0
|
57
57
|
version: "0"
|
58
|
-
requirement: *id003
|
59
58
|
prerelease: false
|
60
|
-
name: haml
|
61
59
|
type: :development
|
60
|
+
name: haml
|
61
|
+
requirement: *id003
|
62
62
|
- !ruby/object:Gem::Dependency
|
63
63
|
version_requirements: &id004 !ruby/object:Gem::Requirement
|
64
64
|
none: false
|
@@ -69,10 +69,10 @@ dependencies:
|
|
69
69
|
segments:
|
70
70
|
- 0
|
71
71
|
version: "0"
|
72
|
-
requirement: *id004
|
73
72
|
prerelease: false
|
74
|
-
name: nokogiri
|
75
73
|
type: :development
|
74
|
+
name: nokogiri
|
75
|
+
requirement: *id004
|
76
76
|
- !ruby/object:Gem::Dependency
|
77
77
|
version_requirements: &id005 !ruby/object:Gem::Requirement
|
78
78
|
none: false
|
@@ -83,10 +83,10 @@ dependencies:
|
|
83
83
|
segments:
|
84
84
|
- 0
|
85
85
|
version: "0"
|
86
|
-
requirement: *id005
|
87
86
|
prerelease: false
|
88
|
-
name: rake
|
89
87
|
type: :development
|
88
|
+
name: rake
|
89
|
+
requirement: *id005
|
90
90
|
- !ruby/object:Gem::Dependency
|
91
91
|
version_requirements: &id006 !ruby/object:Gem::Requirement
|
92
92
|
none: false
|
@@ -97,10 +97,10 @@ dependencies:
|
|
97
97
|
segments:
|
98
98
|
- 0
|
99
99
|
version: "0"
|
100
|
-
requirement: *id006
|
101
100
|
prerelease: false
|
102
|
-
name: rocco
|
103
101
|
type: :development
|
102
|
+
name: rocco
|
103
|
+
requirement: *id006
|
104
104
|
- !ruby/object:Gem::Dependency
|
105
105
|
version_requirements: &id007 !ruby/object:Gem::Requirement
|
106
106
|
none: false
|
@@ -112,10 +112,10 @@ dependencies:
|
|
112
112
|
- 1
|
113
113
|
- 0
|
114
114
|
version: "1.0"
|
115
|
-
requirement: *id007
|
116
115
|
prerelease: false
|
117
|
-
name: rspec
|
118
116
|
type: :development
|
117
|
+
name: rspec
|
118
|
+
requirement: *id007
|
119
119
|
- !ruby/object:Gem::Dependency
|
120
120
|
version_requirements: &id008 !ruby/object:Gem::Requirement
|
121
121
|
none: false
|
@@ -128,10 +128,10 @@ dependencies:
|
|
128
128
|
- 4
|
129
129
|
- 1
|
130
130
|
version: 1.4.1
|
131
|
-
requirement: *id008
|
132
131
|
prerelease: false
|
133
|
-
name: directory_watcher
|
134
132
|
type: :runtime
|
133
|
+
name: directory_watcher
|
134
|
+
requirement: *id008
|
135
135
|
- !ruby/object:Gem::Dependency
|
136
136
|
version_requirements: &id009 !ruby/object:Gem::Requirement
|
137
137
|
none: false
|
@@ -144,10 +144,10 @@ dependencies:
|
|
144
144
|
- 2
|
145
145
|
- 2
|
146
146
|
version: 2.2.2
|
147
|
-
requirement: *id009
|
148
147
|
prerelease: false
|
149
|
-
name: redis
|
150
148
|
type: :runtime
|
149
|
+
name: redis
|
150
|
+
requirement: *id009
|
151
151
|
- !ruby/object:Gem::Dependency
|
152
152
|
version_requirements: &id010 !ruby/object:Gem::Requirement
|
153
153
|
none: false
|
@@ -160,10 +160,10 @@ dependencies:
|
|
160
160
|
- 1
|
161
161
|
- 0
|
162
162
|
version: 2.1.0
|
163
|
-
requirement: *id010
|
164
163
|
prerelease: false
|
165
|
-
name: slop
|
166
164
|
type: :runtime
|
165
|
+
name: slop
|
166
|
+
requirement: *id010
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
version_requirements: &id011 !ruby/object:Gem::Requirement
|
169
169
|
none: false
|
@@ -176,10 +176,10 @@ dependencies:
|
|
176
176
|
- 3
|
177
177
|
- 3
|
178
178
|
version: 1.3.3
|
179
|
-
requirement: *id011
|
180
179
|
prerelease: false
|
181
|
-
name: tilt
|
182
180
|
type: :runtime
|
181
|
+
name: tilt
|
182
|
+
requirement: *id011
|
183
183
|
- !ruby/object:Gem::Dependency
|
184
184
|
version_requirements: &id012 !ruby/object:Gem::Requirement
|
185
185
|
none: false
|
@@ -192,10 +192,10 @@ dependencies:
|
|
192
192
|
- 0
|
193
193
|
- 0
|
194
194
|
version: 1.0.0
|
195
|
-
requirement: *id012
|
196
195
|
prerelease: false
|
197
|
-
name: yajl-ruby
|
198
196
|
type: :runtime
|
197
|
+
name: yajl-ruby
|
198
|
+
requirement: *id012
|
199
199
|
description: Stasis is a dynamic framework for static sites.
|
200
200
|
email:
|
201
201
|
- mail@wintoni.us
|
@@ -305,7 +305,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
305
305
|
requirements: []
|
306
306
|
|
307
307
|
rubyforge_project:
|
308
|
-
rubygems_version: 1.8.
|
308
|
+
rubygems_version: 1.8.24
|
309
309
|
signing_key:
|
310
310
|
specification_version: 3
|
311
311
|
summary: Static sites made powerful
|