retter 0.1.3 → 0.2.0
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/.gitignore +0 -1
- data/.rspec +1 -0
- data/.travis.yml +1 -2
- data/CHANGELOG.md +21 -0
- data/README.md +111 -180
- data/lib/retter.rb +12 -22
- data/lib/retter/command.rb +4 -2
- data/lib/retter/config.rb +11 -8
- data/lib/retter/entries.rb +32 -25
- data/lib/retter/entry.rb +2 -0
- data/lib/retter/generator/base.rb +2 -0
- data/lib/retter/generator/skel/Retterfile +3 -1
- data/lib/retter/generator/skel/layouts/retter.html.haml +2 -0
- data/lib/retter/generator/skel/stylesheets/orange.css +8 -6
- data/lib/retter/generator/skel/stylesheets/pygments.css +288 -0
- data/lib/retter/page.rb +3 -0
- data/lib/retter/pages/feed.rb +4 -1
- data/lib/retter/renderers.rb +27 -0
- data/lib/retter/repository.rb +2 -0
- data/lib/retter/version.rb +1 -1
- data/retter.gemspec +11 -19
- data/spec/command/callback_spec.rb +6 -7
- data/spec/command/commit_spec.rb +13 -9
- data/spec/command/edit_spec.rb +25 -33
- data/spec/command/invoke_after_spec.rb +11 -11
- data/spec/command/list_spec.rb +1 -8
- data/spec/command/open_spec.rb +4 -9
- data/spec/command/preview_spec.rb +16 -21
- data/spec/command/rebind_spec.rb +61 -18
- data/spec/fixtures/sample.md +295 -0
- data/spec/spec_helper.rb +7 -5
- data/spec/support/example_group_helper.rb +66 -0
- metadata +69 -51
- data/lib/retter/renderer.rb +0 -9
- data/spec/support/config_support.rb +0 -14
- data/spec/support/html_support.rb +0 -9
- data/spec/support/stream_capture.rb +0 -16
data/spec/spec_helper.rb
CHANGED
|
@@ -17,16 +17,18 @@ RSpec.configure do |config|
|
|
|
17
17
|
retter_home = RETTER_ROOT.join('tmp', 'test')
|
|
18
18
|
skel = RETTER_ROOT.join('lib', 'retter', 'generator', 'skel')
|
|
19
19
|
|
|
20
|
-
config.before
|
|
20
|
+
config.before :each, clean: :all do
|
|
21
21
|
FileUtils.cp_r skel, retter_home.dirname.join('test')
|
|
22
22
|
end
|
|
23
23
|
|
|
24
|
-
config.after
|
|
24
|
+
config.after :each, clean: :all do
|
|
25
25
|
FileUtils.rm_rf retter_home
|
|
26
26
|
Retter.reset_entries!
|
|
27
27
|
end
|
|
28
28
|
|
|
29
|
-
config.
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
config.before do
|
|
30
|
+
Retter.stub!(:config) { retter_config }
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
config.include ExampleGroupHelper
|
|
32
34
|
end
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
require 'time'
|
|
4
|
+
require 'nokogiri'
|
|
5
|
+
|
|
6
|
+
module ExampleGroupHelper
|
|
7
|
+
module RetterShortcuts
|
|
8
|
+
def command
|
|
9
|
+
@command ||= Retter::Command.new
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def retter_config
|
|
13
|
+
return @config if @config
|
|
14
|
+
|
|
15
|
+
env = {'EDITOR' => 'echo written >', 'RETTER_HOME' => RETTER_ROOT.join('tmp', 'test').to_s}
|
|
16
|
+
|
|
17
|
+
@config = Retter::Config.new(env)
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def wip_file
|
|
21
|
+
retter_config.wip_file
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
module HTML
|
|
26
|
+
def nokogiri(html)
|
|
27
|
+
Nokogiri::HTML(html)
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def texts_of(html, selector)
|
|
31
|
+
nokogiri(html).search(selector).map {|el|
|
|
32
|
+
el.text.strip
|
|
33
|
+
}
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
module Stream
|
|
38
|
+
def capture(stream)
|
|
39
|
+
begin
|
|
40
|
+
stream = stream.to_s
|
|
41
|
+
eval "$#{stream} = StringIO.new"
|
|
42
|
+
yield
|
|
43
|
+
result = eval("$#{stream}").string
|
|
44
|
+
ensure
|
|
45
|
+
eval("$#{stream} = #{stream.upcase}")
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
result
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
module StubTime
|
|
53
|
+
def stub_time(time_str)
|
|
54
|
+
date = Date.parse(time_str)
|
|
55
|
+
time = Time.parse(time_str)
|
|
56
|
+
|
|
57
|
+
Date.stub!(:today).and_return(date)
|
|
58
|
+
Time.stub!(:now).and_return(time)
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
include RetterShortcuts
|
|
63
|
+
include HTML
|
|
64
|
+
include Stream
|
|
65
|
+
include StubTime
|
|
66
|
+
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: retter
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -10,11 +10,11 @@ authors:
|
|
|
10
10
|
autorequire:
|
|
11
11
|
bindir: bin
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date:
|
|
13
|
+
date: 2012-03-17 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: thor
|
|
17
|
-
requirement: &
|
|
17
|
+
requirement: &70182064456140 !ruby/object:Gem::Requirement
|
|
18
18
|
none: false
|
|
19
19
|
requirements:
|
|
20
20
|
- - ! '>='
|
|
@@ -22,10 +22,10 @@ dependencies:
|
|
|
22
22
|
version: 0.14.6
|
|
23
23
|
type: :runtime
|
|
24
24
|
prerelease: false
|
|
25
|
-
version_requirements: *
|
|
25
|
+
version_requirements: *70182064456140
|
|
26
26
|
- !ruby/object:Gem::Dependency
|
|
27
27
|
name: builder
|
|
28
|
-
requirement: &
|
|
28
|
+
requirement: &70182064455620 !ruby/object:Gem::Requirement
|
|
29
29
|
none: false
|
|
30
30
|
requirements:
|
|
31
31
|
- - ! '>='
|
|
@@ -33,10 +33,10 @@ dependencies:
|
|
|
33
33
|
version: 3.0.0
|
|
34
34
|
type: :runtime
|
|
35
35
|
prerelease: false
|
|
36
|
-
version_requirements: *
|
|
36
|
+
version_requirements: *70182064455620
|
|
37
37
|
- !ruby/object:Gem::Dependency
|
|
38
38
|
name: redcarpet
|
|
39
|
-
requirement: &
|
|
39
|
+
requirement: &70182064455140 !ruby/object:Gem::Requirement
|
|
40
40
|
none: false
|
|
41
41
|
requirements:
|
|
42
42
|
- - ! '>='
|
|
@@ -44,10 +44,10 @@ dependencies:
|
|
|
44
44
|
version: 2.0.0b3
|
|
45
45
|
type: :runtime
|
|
46
46
|
prerelease: false
|
|
47
|
-
version_requirements: *
|
|
47
|
+
version_requirements: *70182064455140
|
|
48
48
|
- !ruby/object:Gem::Dependency
|
|
49
49
|
name: coderay
|
|
50
|
-
requirement: &
|
|
50
|
+
requirement: &70182064454660 !ruby/object:Gem::Requirement
|
|
51
51
|
none: false
|
|
52
52
|
requirements:
|
|
53
53
|
- - ! '>='
|
|
@@ -55,10 +55,21 @@ dependencies:
|
|
|
55
55
|
version: 0.9.8
|
|
56
56
|
type: :runtime
|
|
57
57
|
prerelease: false
|
|
58
|
-
version_requirements: *
|
|
58
|
+
version_requirements: *70182064454660
|
|
59
|
+
- !ruby/object:Gem::Dependency
|
|
60
|
+
name: pygments.rb
|
|
61
|
+
requirement: &70182064454180 !ruby/object:Gem::Requirement
|
|
62
|
+
none: false
|
|
63
|
+
requirements:
|
|
64
|
+
- - ! '>='
|
|
65
|
+
- !ruby/object:Gem::Version
|
|
66
|
+
version: 0.2.7
|
|
67
|
+
type: :runtime
|
|
68
|
+
prerelease: false
|
|
69
|
+
version_requirements: *70182064454180
|
|
59
70
|
- !ruby/object:Gem::Dependency
|
|
60
71
|
name: nokogiri
|
|
61
|
-
requirement: &
|
|
72
|
+
requirement: &70182064453700 !ruby/object:Gem::Requirement
|
|
62
73
|
none: false
|
|
63
74
|
requirements:
|
|
64
75
|
- - ! '>='
|
|
@@ -66,10 +77,10 @@ dependencies:
|
|
|
66
77
|
version: 1.5.0
|
|
67
78
|
type: :runtime
|
|
68
79
|
prerelease: false
|
|
69
|
-
version_requirements: *
|
|
80
|
+
version_requirements: *70182064453700
|
|
70
81
|
- !ruby/object:Gem::Dependency
|
|
71
82
|
name: launchy
|
|
72
|
-
requirement: &
|
|
83
|
+
requirement: &70182064453220 !ruby/object:Gem::Requirement
|
|
73
84
|
none: false
|
|
74
85
|
requirements:
|
|
75
86
|
- - ! '>='
|
|
@@ -77,10 +88,10 @@ dependencies:
|
|
|
77
88
|
version: 2.0.5
|
|
78
89
|
type: :runtime
|
|
79
90
|
prerelease: false
|
|
80
|
-
version_requirements: *
|
|
91
|
+
version_requirements: *70182064453220
|
|
81
92
|
- !ruby/object:Gem::Dependency
|
|
82
93
|
name: haml
|
|
83
|
-
requirement: &
|
|
94
|
+
requirement: &70182064452740 !ruby/object:Gem::Requirement
|
|
84
95
|
none: false
|
|
85
96
|
requirements:
|
|
86
97
|
- - ! '>='
|
|
@@ -88,10 +99,10 @@ dependencies:
|
|
|
88
99
|
version: 3.1.3
|
|
89
100
|
type: :runtime
|
|
90
101
|
prerelease: false
|
|
91
|
-
version_requirements: *
|
|
102
|
+
version_requirements: *70182064452740
|
|
92
103
|
- !ruby/object:Gem::Dependency
|
|
93
104
|
name: bundler
|
|
94
|
-
requirement: &
|
|
105
|
+
requirement: &70182064452260 !ruby/object:Gem::Requirement
|
|
95
106
|
none: false
|
|
96
107
|
requirements:
|
|
97
108
|
- - ! '>='
|
|
@@ -99,10 +110,10 @@ dependencies:
|
|
|
99
110
|
version: '1.0'
|
|
100
111
|
type: :runtime
|
|
101
112
|
prerelease: false
|
|
102
|
-
version_requirements: *
|
|
113
|
+
version_requirements: *70182064452260
|
|
103
114
|
- !ruby/object:Gem::Dependency
|
|
104
115
|
name: grit
|
|
105
|
-
requirement: &
|
|
116
|
+
requirement: &70182052897180 !ruby/object:Gem::Requirement
|
|
106
117
|
none: false
|
|
107
118
|
requirements:
|
|
108
119
|
- - ! '>='
|
|
@@ -110,10 +121,10 @@ dependencies:
|
|
|
110
121
|
version: 2.4.1
|
|
111
122
|
type: :runtime
|
|
112
123
|
prerelease: false
|
|
113
|
-
version_requirements: *
|
|
124
|
+
version_requirements: *70182052897180
|
|
114
125
|
- !ruby/object:Gem::Dependency
|
|
115
126
|
name: activesupport
|
|
116
|
-
requirement: &
|
|
127
|
+
requirement: &70182052895820 !ruby/object:Gem::Requirement
|
|
117
128
|
none: false
|
|
118
129
|
requirements:
|
|
119
130
|
- - ! '>='
|
|
@@ -121,10 +132,21 @@ dependencies:
|
|
|
121
132
|
version: 3.1.0
|
|
122
133
|
type: :runtime
|
|
123
134
|
prerelease: false
|
|
124
|
-
version_requirements: *
|
|
135
|
+
version_requirements: *70182052895820
|
|
136
|
+
- !ruby/object:Gem::Dependency
|
|
137
|
+
name: rack
|
|
138
|
+
requirement: &70182052894740 !ruby/object:Gem::Requirement
|
|
139
|
+
none: false
|
|
140
|
+
requirements:
|
|
141
|
+
- - ! '>='
|
|
142
|
+
- !ruby/object:Gem::Version
|
|
143
|
+
version: 1.4.1
|
|
144
|
+
type: :runtime
|
|
145
|
+
prerelease: false
|
|
146
|
+
version_requirements: *70182052894740
|
|
125
147
|
- !ruby/object:Gem::Dependency
|
|
126
148
|
name: i18n
|
|
127
|
-
requirement: &
|
|
149
|
+
requirement: &70182052893840 !ruby/object:Gem::Requirement
|
|
128
150
|
none: false
|
|
129
151
|
requirements:
|
|
130
152
|
- - ! '>='
|
|
@@ -132,10 +154,10 @@ dependencies:
|
|
|
132
154
|
version: 0.6.0
|
|
133
155
|
type: :runtime
|
|
134
156
|
prerelease: false
|
|
135
|
-
version_requirements: *
|
|
157
|
+
version_requirements: *70182052893840
|
|
136
158
|
- !ruby/object:Gem::Dependency
|
|
137
159
|
name: rake
|
|
138
|
-
requirement: &
|
|
160
|
+
requirement: &70182052892940 !ruby/object:Gem::Requirement
|
|
139
161
|
none: false
|
|
140
162
|
requirements:
|
|
141
163
|
- - ! '>='
|
|
@@ -143,10 +165,10 @@ dependencies:
|
|
|
143
165
|
version: 0.9.2
|
|
144
166
|
type: :development
|
|
145
167
|
prerelease: false
|
|
146
|
-
version_requirements: *
|
|
168
|
+
version_requirements: *70182052892940
|
|
147
169
|
- !ruby/object:Gem::Dependency
|
|
148
170
|
name: ir_b
|
|
149
|
-
requirement: &
|
|
171
|
+
requirement: &70182052891880 !ruby/object:Gem::Requirement
|
|
150
172
|
none: false
|
|
151
173
|
requirements:
|
|
152
174
|
- - ! '>='
|
|
@@ -154,10 +176,10 @@ dependencies:
|
|
|
154
176
|
version: 1.4.0
|
|
155
177
|
type: :development
|
|
156
178
|
prerelease: false
|
|
157
|
-
version_requirements: *
|
|
179
|
+
version_requirements: *70182052891880
|
|
158
180
|
- !ruby/object:Gem::Dependency
|
|
159
181
|
name: tapp
|
|
160
|
-
requirement: &
|
|
182
|
+
requirement: &70182052890620 !ruby/object:Gem::Requirement
|
|
161
183
|
none: false
|
|
162
184
|
requirements:
|
|
163
185
|
- - ! '>='
|
|
@@ -165,10 +187,10 @@ dependencies:
|
|
|
165
187
|
version: 1.1.0
|
|
166
188
|
type: :development
|
|
167
189
|
prerelease: false
|
|
168
|
-
version_requirements: *
|
|
190
|
+
version_requirements: *70182052890620
|
|
169
191
|
- !ruby/object:Gem::Dependency
|
|
170
192
|
name: rspec
|
|
171
|
-
requirement: &
|
|
193
|
+
requirement: &70182053388880 !ruby/object:Gem::Requirement
|
|
172
194
|
none: false
|
|
173
195
|
requirements:
|
|
174
196
|
- - ! '>='
|
|
@@ -176,10 +198,10 @@ dependencies:
|
|
|
176
198
|
version: 2.6.0
|
|
177
199
|
type: :development
|
|
178
200
|
prerelease: false
|
|
179
|
-
version_requirements: *
|
|
201
|
+
version_requirements: *70182053388880
|
|
180
202
|
- !ruby/object:Gem::Dependency
|
|
181
203
|
name: fuubar
|
|
182
|
-
requirement: &
|
|
204
|
+
requirement: &70182053388400 !ruby/object:Gem::Requirement
|
|
183
205
|
none: false
|
|
184
206
|
requirements:
|
|
185
207
|
- - ! '>='
|
|
@@ -187,10 +209,10 @@ dependencies:
|
|
|
187
209
|
version: 0.0.6
|
|
188
210
|
type: :development
|
|
189
211
|
prerelease: false
|
|
190
|
-
version_requirements: *
|
|
212
|
+
version_requirements: *70182053388400
|
|
191
213
|
- !ruby/object:Gem::Dependency
|
|
192
214
|
name: simplecov
|
|
193
|
-
requirement: &
|
|
215
|
+
requirement: &70182053387920 !ruby/object:Gem::Requirement
|
|
194
216
|
none: false
|
|
195
217
|
requirements:
|
|
196
218
|
- - ! '>='
|
|
@@ -198,7 +220,7 @@ dependencies:
|
|
|
198
220
|
version: 0.5.3
|
|
199
221
|
type: :development
|
|
200
222
|
prerelease: false
|
|
201
|
-
version_requirements: *
|
|
223
|
+
version_requirements: *70182053387920
|
|
202
224
|
description: Flyweight diary workflow. ruby-1.9.2 or later is required.
|
|
203
225
|
email:
|
|
204
226
|
- celluloid.key@gmail.com
|
|
@@ -210,6 +232,7 @@ files:
|
|
|
210
232
|
- .gitignore
|
|
211
233
|
- .rspec
|
|
212
234
|
- .travis.yml
|
|
235
|
+
- CHANGELOG.md
|
|
213
236
|
- Gemfile
|
|
214
237
|
- README.md
|
|
215
238
|
- Rakefile
|
|
@@ -243,7 +266,9 @@ files:
|
|
|
243
266
|
- lib/retter/generator/skel/retters/.gitkeep
|
|
244
267
|
- lib/retter/generator/skel/stylesheets/base.css
|
|
245
268
|
- lib/retter/generator/skel/stylesheets/orange.css
|
|
269
|
+
- lib/retter/generator/skel/stylesheets/pygments.css
|
|
246
270
|
- lib/retter/generator/skel/stylesheets/retter.css
|
|
271
|
+
- lib/retter/generator/skel/tmp/cache/.gitkeep
|
|
247
272
|
- lib/retter/generator/updator.rb
|
|
248
273
|
- lib/retter/page.rb
|
|
249
274
|
- lib/retter/page/view_helper.rb
|
|
@@ -255,7 +280,7 @@ files:
|
|
|
255
280
|
- lib/retter/pages/index.rb
|
|
256
281
|
- lib/retter/pages/profile.rb
|
|
257
282
|
- lib/retter/preprint.rb
|
|
258
|
-
- lib/retter/
|
|
283
|
+
- lib/retter/renderers.rb
|
|
259
284
|
- lib/retter/repository.rb
|
|
260
285
|
- lib/retter/version.rb
|
|
261
286
|
- retter.gemspec
|
|
@@ -267,22 +292,16 @@ files:
|
|
|
267
292
|
- spec/command/open_spec.rb
|
|
268
293
|
- spec/command/preview_spec.rb
|
|
269
294
|
- spec/command/rebind_spec.rb
|
|
295
|
+
- spec/fixtures/sample.md
|
|
270
296
|
- spec/spec_helper.rb
|
|
271
|
-
- spec/support/
|
|
272
|
-
- spec/support/html_support.rb
|
|
297
|
+
- spec/support/example_group_helper.rb
|
|
273
298
|
- spec/support/matchers.rb
|
|
274
|
-
- spec/support/stream_capture.rb
|
|
275
299
|
- tmp/.gitkeep
|
|
276
300
|
homepage: https://github.com/hibariya/retter
|
|
277
301
|
licenses: []
|
|
278
|
-
post_install_message: ! "
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
\ Second, Edit templete and paste `render_disqus_comment_form`.\n\n in
|
|
282
|
-
layouts/article.html.haml:\n #comments= render_disqus_comment_form\n\n *
|
|
283
|
-
Filename is now specificable.\n Examples:\n $ retter edit today.md\n
|
|
284
|
-
\ $ retter edit 20110101.md\n $ retter preview 20110101.md\n\n --
|
|
285
|
-
Thanks for flying Retter :-> --\n"
|
|
302
|
+
post_install_message: ! " -- Thanks for flying Retter :-> --\n\n Pygments syntax
|
|
303
|
+
highlight is now available.\n To use, add a following line to Retterfile.\n \n
|
|
304
|
+
\ ```ruby\n renderer Retter::Renderers::PygmentsRenderer\n ```\n"
|
|
286
305
|
rdoc_options: []
|
|
287
306
|
require_paths:
|
|
288
307
|
- lib
|
|
@@ -313,8 +332,7 @@ test_files:
|
|
|
313
332
|
- spec/command/open_spec.rb
|
|
314
333
|
- spec/command/preview_spec.rb
|
|
315
334
|
- spec/command/rebind_spec.rb
|
|
335
|
+
- spec/fixtures/sample.md
|
|
316
336
|
- spec/spec_helper.rb
|
|
317
|
-
- spec/support/
|
|
318
|
-
- spec/support/html_support.rb
|
|
337
|
+
- spec/support/example_group_helper.rb
|
|
319
338
|
- spec/support/matchers.rb
|
|
320
|
-
- spec/support/stream_capture.rb
|
data/lib/retter/renderer.rb
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
|
|
3
|
-
module Retter::ConfigSupport
|
|
4
|
-
def retter_config
|
|
5
|
-
return @config if @config
|
|
6
|
-
|
|
7
|
-
env = {
|
|
8
|
-
'EDITOR' => 'echo written >',
|
|
9
|
-
'RETTER_HOME' => RETTER_ROOT.join('tmp', 'test').to_s
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
@config = Retter::Config.new(env)
|
|
13
|
-
end
|
|
14
|
-
end
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
# coding: utf-8
|
|
2
|
-
|
|
3
|
-
module Retter::StreamSupport
|
|
4
|
-
def capture(stream)
|
|
5
|
-
begin
|
|
6
|
-
stream = stream.to_s
|
|
7
|
-
eval "$#{stream} = StringIO.new"
|
|
8
|
-
yield
|
|
9
|
-
result = eval("$#{stream}").string
|
|
10
|
-
ensure
|
|
11
|
-
eval("$#{stream} = #{stream.upcase}")
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
result
|
|
15
|
-
end
|
|
16
|
-
end
|