retter 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -2,6 +2,7 @@
2
2
  .bundle
3
3
  Gemfile.lock
4
4
  pkg/*
5
+ tmp/*
5
6
  .rvmrc
6
7
  lib/generator/skel/.gitignore
7
8
  lib/generator/skel/.preview.html
@@ -10,5 +11,5 @@ lib/generator/skel/tmp/*
10
11
  lib/generator/skel/entries.*
11
12
  lib/generator/skel/entries/*.html
12
13
  lib/generator/skel/vendor
13
- tmp
14
14
  .DS_Store
15
+ coverage
data/.travis.yml ADDED
@@ -0,0 +1,2 @@
1
+ rvm:
2
+ - 1.9.2
data/README.md CHANGED
@@ -12,12 +12,23 @@
12
12
 
13
13
  ## Usage
14
14
 
15
- To create new site, use `new` subcommand.
15
+ ### Create a new site.
16
+
17
+ use `new` sub-command.
16
18
 
17
19
  ~~~~
18
20
  $ retter new my_sweet_diary
19
21
  ~~~~
20
22
 
23
+ ### Settings
24
+
25
+ **retter required $EDITOR variable.**
26
+
27
+ ~~~~
28
+ $ echo "export EDITOR=vim" >> ~/.bash_profile
29
+ $ . ~/.bash_profile
30
+ ~~~~
31
+
21
32
  You can use `retter` command anywhere, If you set `$RETTER_HOME` variable.
22
33
 
23
34
  ~~~~
@@ -25,38 +36,72 @@ You can use `retter` command anywhere, If you set `$RETTER_HOME` variable.
25
36
  $ . ~/.bash_profile
26
37
  ~~~~
27
38
 
28
- `retter` command open `$EDITOR`. You can write an article with Markdown.
39
+ ### Write a article, and publish.
40
+
41
+ `retter` open `$EDITOR`. Write an article with Markdown.
29
42
  The article will be draft.
30
43
 
31
44
  ~~~~
32
- $ cd /path/to/my_sweet_diary # You can skip this step if you already set $RETTER_HOME.
33
45
  $ retter
34
46
  ~~~~
35
47
 
36
- `preview` sub-command open the draft article by your default browser.
48
+ `preview` open the draft article by your default browser.
37
49
 
38
50
  ~~~~
39
51
  $ retter preview
40
52
  ~~~~
41
53
 
42
- `bind` and `rebind` sub-command save the draft article.
43
- And generate actual web pages.
54
+ `bind` and `rebind` binds the draft article.
55
+ And re-generates actual html web pages. All html pages will overwrite.
44
56
 
45
57
  ~~~~
46
58
  $ retter bind
47
59
  ~~~~
48
60
 
49
- `open` sub-command open your web site by your default browser.
61
+
62
+ To publish, use the git command.
50
63
 
51
64
  ~~~~
52
- $ retter open
65
+ $ git add .
66
+ $ git commit -m 'commit message'
67
+ $ git push [remote] [branch] # heroku, github pages, etc..
53
68
  ~~~~
54
69
 
55
- You can use rack, if you needed.
70
+ Or, upload the file to your server.
71
+
72
+ ### Edit specific date article.
73
+
74
+ `--date` option is available in `edit` `preview` sub-command.
75
+
76
+ ~~~~
77
+ retter edit --date=20110101
78
+ retter preview --date=20110101
79
+ ~~~~
80
+
81
+ ### Browse offline
82
+
83
+ `open` sub-command open your (static) website by your default browser.
84
+
85
+ ~~~~
86
+ $ retter open # visit file://path/to/my_sweet_diary/index.html
87
+ ~~~~
88
+
89
+ Or, Use rack if needed.
56
90
 
57
91
  ~~~~
58
92
  $ cd /path/to/my_sweet_diary
59
93
  $ bundle exec rackup
60
94
  ~~~~
61
95
 
96
+ ## LICENSE
97
+
98
+ The MIT License
99
+
100
+ Copyright (c) 2011 hibariya
101
+
102
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
103
+
104
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
105
+
106
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
62
107
 
data/Rakefile CHANGED
@@ -0,0 +1,8 @@
1
+ require 'bundler'
2
+
3
+ Bundler::GemHelper.install_tasks
4
+ require 'rspec/core/rake_task'
5
+ RSpec::Core::RakeTask.new(:spec)
6
+
7
+ task default: :spec
8
+
@@ -4,6 +4,7 @@ require 'thor/group'
4
4
  require 'grit'
5
5
  require 'bundler'
6
6
  require 'bundler/cli'
7
+ require 'retter'
7
8
 
8
9
  class Newretter < Thor::Group
9
10
  FILES = %w(
@@ -52,11 +53,29 @@ class Newretter < Thor::Group
52
53
  end
53
54
 
54
55
  def notice_how_to_use
56
+ editor = ENV['EDITOR']
57
+
58
+ say "-- Thanks for flying Retter :-> --\n", :green
59
+ say <<-EOM, :green
60
+ Setting $EDITOR:
61
+ retter *requires* $EDITOR variable.
62
+ example:
63
+ echo "export EDITOR=vim" >> ~/.zshenv # or ~/.bash_profile
64
+ . ~/.zshenv
65
+ EOM
66
+
67
+ say " Current your $EDITOR is #{editor ? editor : 'undefined'}.\n", :red
68
+
55
69
  say <<-EOM, :green
56
- -- Thanks for flying Retter :-> --
57
- You have to set $RETTER_HOME variable to use #{name}.
58
- example:
59
- export RETTER_HOME=#{Dir.pwd}/#{name}
70
+ Setting $RETTER_HOME:
71
+ You can use retter command anywhere, If you set $RETTER_HOME variable.
72
+ example:
73
+ echo "export RETTER_HOME=#{Dir.pwd}/#{name}" >> ~/.zshenv
74
+ ...
75
+
76
+ See also:
77
+ retter usage
78
+ retter help
60
79
  EOM
61
80
  end
62
81
  end
@@ -1,7 +1,7 @@
1
1
  # coding: utf-8
2
2
 
3
3
  class Retter::Command < Thor
4
- desc 'edit', 'Edit current entry with $EDITOR'
4
+ desc 'edit', 'Open $EDITOR. Write an article with Markdown.'
5
5
  method_options date: :string
6
6
  def edit
7
7
  system config.editor, detected_retter_file.to_s
@@ -9,7 +9,7 @@ class Retter::Command < Thor
9
9
 
10
10
  default_task :edit
11
11
 
12
- desc 'preview', 'Preview current entry'
12
+ desc 'preview', 'Preview the draft article (browser will open).'
13
13
  method_options date: :string
14
14
  def preview
15
15
  preview = Retter::Stationery.previewer(config, detected_date)
@@ -18,12 +18,12 @@ class Retter::Command < Thor
18
18
  Launchy.open preview.file_path.to_s
19
19
  end
20
20
 
21
- desc 'open', 'Open site statically'
21
+ desc 'open', 'Open your (static) site top page (browser will open).'
22
22
  def open
23
23
  Launchy.open config.index_file.to_s
24
24
  end
25
25
 
26
- desc 'rebind', 'Re generate site pages'
26
+ desc 'rebind', 'Bind the draft article, re-generate all html pages.'
27
27
  def rebind
28
28
  binder = Retter::Stationery.binder(config)
29
29
 
@@ -31,13 +31,28 @@ class Retter::Command < Thor
31
31
  binder.rebind!
32
32
  end
33
33
 
34
- desc 'bind', 'Generate site pages'
34
+ desc 'bind', 'Re-bind the draft article, re-generate all html pages.'
35
35
  alias_method :bind, :rebind
36
36
 
37
- desc 'new', 'Create new site'
37
+ desc 'commit', "cd $RETTER_HOME && git add . && git commit -m 'Retter commit'"
38
+ def commit
39
+ working_dir = config.retter_home.to_s
40
+ git = Grit::Repo.new(working_dir)
41
+ Dir.chdir working_dir
42
+
43
+ say git.add(working_dir), :green
44
+ say git.commit_all('Retter commit'), :green
45
+ end
46
+
47
+ desc 'new', 'Create a new site'
38
48
  def new
39
49
  end
40
50
 
51
+ desc 'usage', 'Show usage.'
52
+ def usage
53
+ say Retter::Command.usage, :green
54
+ end
55
+
41
56
  private
42
57
 
43
58
  def detected_retter_file
@@ -57,18 +72,36 @@ class Retter::Command < Thor
57
72
  @retter_config ||= Retter::Config.new(ENV)
58
73
  rescue Retter::EnvError
59
74
  say 'Set $RETTER_HOME and $EDITOR, first.', :red
60
- say <<-EOM, :green
61
- usage:
62
- export EDITOR=`which vim` # or other editor
75
+ say Retter::Command.usage, :green
76
+ exit 1
77
+ end
78
+
79
+ def self.usage
80
+ <<-EOM
81
+ Usage:
82
+ # startup
63
83
  cd /path/to/dir
64
84
  retter new my_sweet_diary
65
- export RETTER_HOME=/path/to/dir/my_sweet_diary
66
- cd my_sweet_diary
67
- retter # Write the article with markdown, and save.
68
- retter preview # Draft article will be opened in your default browser.
69
- retter bind # Your actual website will be generated.
70
- bundle exec rackup # Open your browser, and visit http://localhost:9292/ .
85
+ echo "export EDITOR=vim" >> ~/.zshenv # retter requires $EDITOR.
86
+ echo "export RETTER_HOME=/path/to/my_sweet_diary" >> ~/.zshenv
87
+ . ~/.zshenv
88
+
89
+ # write a article, and publish.
90
+ retter # $EDITOR will open. Write an article with Markdown.
91
+ retter preview # Preview the draft article (browser will open).
92
+ retter bind # bind the draft article, re-generate all html pages.
93
+ git add .
94
+ git commit -m 'commit message'
95
+ git push [remote] [branch]
96
+
97
+ # edit specific date article.
98
+ retter edit --date=20110101
99
+ retter preview --date=20110101
100
+
101
+ # browse offline.
102
+ retter open # Open your (static) site top page (browser will open).
103
+
104
+ See also: https://github.com/hibariya/retter
71
105
  EOM
72
- exit 1
73
106
  end
74
107
  end
@@ -1,3 +1,3 @@
1
1
  module Retter
2
- VERSION = '0.0.1'
2
+ VERSION = '0.0.2'
3
3
  end
data/lib/retter.rb CHANGED
@@ -19,6 +19,7 @@ require 'launchy'
19
19
  require 'haml'
20
20
  require 'uri'
21
21
  require 'forwardable'
22
+ require 'grit'
22
23
  require 'retter/version'
23
24
  require 'retter/entry'
24
25
  require 'retter/config'
data/retter.gemspec CHANGED
@@ -7,9 +7,9 @@ Gem::Specification.new do |s|
7
7
  s.version = Retter::VERSION
8
8
  s.authors = ["hibariya"]
9
9
  s.email = ["celluloid.key@gmail.com"]
10
- s.homepage = "http://retter.heroku.com"
10
+ s.homepage = "https://github.com/hibariya/retter"
11
11
  s.summary = %q{Lightweight diary workflow}
12
- s.description = %q{Lightweight diary workflow}
12
+ s.description = %q{Lightweight diary workflow. ruby-1.9.2 or later is required.}
13
13
 
14
14
  #s.rubyforge_project = "retter"
15
15
 
@@ -28,7 +28,9 @@ Gem::Specification.new do |s|
28
28
  s.add_runtime_dependency 'bundler'
29
29
  s.add_runtime_dependency 'grit'
30
30
 
31
+ s.add_development_dependency 'rake'
31
32
  s.add_development_dependency 'ir_b'
32
33
  s.add_development_dependency 'tapp'
33
34
  s.add_development_dependency 'rspec'
35
+ s.add_development_dependency 'simplecov'
34
36
  end
@@ -0,0 +1,23 @@
1
+ # coding: utf-8
2
+
3
+ require File.dirname(__FILE__) + '/../spec_helper'
4
+
5
+ describe 'Retter::Command#commit', clean: :all do
6
+ let(:command) { Retter::Command.new }
7
+ let(:wip_file) { retter_config.wip_file }
8
+ let(:repo) { Grit::Repo.new(retter_config.retter_home.to_s) }
9
+ let(:article) { '今日の記事' }
10
+
11
+ before do
12
+ Grit::Repo.init retter_config.retter_home.to_s
13
+
14
+ command.stub!(:config) { retter_config }
15
+ command.stub!(:say) { true }
16
+ wip_file.open('w') {|f| f.puts article }
17
+ command.rebind
18
+
19
+ command.commit
20
+ end
21
+
22
+ it { repo.commits.first.message.should == 'Retter commit' }
23
+ end
@@ -15,14 +15,14 @@ describe 'Retter::Command#edit', clean: :all do
15
15
  command.edit
16
16
  end
17
17
 
18
- it { wip_file.should be_exist }
18
+ it { wip_file.should written }
19
19
  end
20
20
 
21
21
  context 'no options after rebind' do
22
- let(:date) { '20110101' }
22
+ let(:date_str) { '20110101' }
23
23
 
24
24
  before do
25
- Date.stub!(:today).and_return(Date.parse(date))
25
+ Date.stub!(:today).and_return(Date.parse(date_str))
26
26
 
27
27
  command.edit
28
28
  command.bind
@@ -30,23 +30,28 @@ describe 'Retter::Command#edit', clean: :all do
30
30
  end
31
31
 
32
32
  it { wip_file.should_not be_exist }
33
- it { retter_config.retters_dir.join("#{date}.md").should be_exist }
33
+
34
+ describe "today's file" do
35
+ subject { retter_config.retters_dir.join("#{date_str}.md") }
36
+
37
+ it { should written }
38
+ end
34
39
  end
35
40
 
36
41
  context 'with date' do
37
- let(:date) { '20110101' }
42
+ let(:date_str) { '20110101' }
38
43
 
39
44
  before do
40
- command.stub!(:options) { {date: date} }
45
+ command.stub!(:options) { {date: date_str} }
41
46
  command.edit
42
47
  end
43
48
 
44
49
  it { wip_file.should_not be_exist }
45
50
 
46
51
  describe 'target date file' do
47
- subject { retter_config.retters_dir.join("#{date}.md") }
52
+ subject { retter_config.retter_file(Date.parse(date_str)) }
48
53
 
49
- it { should be_exist }
54
+ it { should written }
50
55
  end
51
56
  end
52
57
  end
@@ -0,0 +1,17 @@
1
+ # coding: utf-8
2
+
3
+ require File.dirname(__FILE__) + '/../spec_helper'
4
+
5
+ describe 'Retter::Command#open', clean: :all do
6
+ let(:command) { Retter::Command.new }
7
+ let(:wip_file) { retter_config.wip_file }
8
+
9
+ before do
10
+ command.stub!(:config) { retter_config }
11
+ end
12
+
13
+ it 'should be open application' do
14
+ Launchy.should_receive(:open).with(retter_config.index_file.to_s)
15
+ command.open
16
+ end
17
+ end
@@ -6,7 +6,7 @@ describe 'Retter::Command#preview', clean: :all do
6
6
  let(:command) { Retter::Command.new }
7
7
  let(:preview) { retter_config.retter_home.join('.preview.html').read }
8
8
  let(:wip_file) { retter_config.wip_file }
9
- let(:date_file) { retter_config.retter_file(Date.parse(date)) }
9
+ let(:date_file) { retter_config.retter_file(Date.parse(date_str)) }
10
10
 
11
11
  before do
12
12
  command.stub!(:config) { retter_config }
@@ -17,27 +17,34 @@ describe 'Retter::Command#preview', clean: :all do
17
17
 
18
18
  before do
19
19
  wip_file.open('w') {|f| f.puts article }
20
+
20
21
  Launchy.stub!(:open).with(anything)
21
22
 
22
23
  command.preview
23
24
  end
24
25
 
25
- it { preview.should =~ /<body.*#{article}.*\/body>/mi }
26
+ subject { texts_of(preview, '.entry p') }
27
+
28
+ it { should == [article] }
26
29
  end
27
30
 
28
31
  context 'with date' do
29
32
  let(:article) { 'おはようございます' }
30
- let(:date) { '20110101' }
33
+ let(:date_str) { '20110101' }
31
34
 
32
35
  before do
33
36
  wip_file.open('w') {|f| f.puts 'おやすみなさい' }
34
37
  date_file.open('w') {|f| f.puts article }
38
+
35
39
  Launchy.stub!(:open).with(anything)
40
+ command.stub!(:options) { {date: date_str} }
36
41
 
37
42
  command.preview
38
43
  end
39
44
 
40
- it { preview =~ /#{article}/mi }
41
- it { preview !~ /おやすみなさい/mi }
45
+ subject { texts_of(preview, '.entry p') }
46
+
47
+ it { should_not be_include('おやすみなさい') }
48
+ it { should be_include(article) }
42
49
  end
43
50
  end
@@ -5,15 +5,15 @@ require File.dirname(__FILE__) + '/../spec_helper'
5
5
  describe 'Retter::Command#rebind', clean: :all do
6
6
  let(:command) { Retter::Command.new }
7
7
  let(:wip_file) { retter_config.wip_file }
8
- let(:date_file) { retter_config.retter_file(Date.parse(date)) }
9
- let(:date_html) { retter_config.retter_home.join('entries', "#{date}.html") }
8
+ let(:date_file) { retter_config.retter_file(Date.parse(date_str)) }
9
+ let(:date_html) { retter_config.entry_file(Date.parse(date_str)) }
10
10
 
11
11
  before do
12
12
  command.stub!(:config) { retter_config }
13
13
  end
14
14
 
15
15
  context 'first post' do
16
- let(:date) { '20110101' }
16
+ let(:date_str) { '20110101' }
17
17
  let(:article) { <<-EOM }
18
18
  # 朝11時
19
19
 
@@ -26,7 +26,7 @@ describe 'Retter::Command#rebind', clean: :all do
26
26
 
27
27
  before do
28
28
  wip_file.open('w') {|f| f.puts article }
29
- Date.stub!(:today).and_return(Date.parse(date))
29
+ Date.stub!(:today).and_return(Date.parse(date_str))
30
30
 
31
31
  command.rebind
32
32
  end
@@ -36,18 +36,26 @@ describe 'Retter::Command#rebind', clean: :all do
36
36
  end
37
37
 
38
38
  describe 'index.html' do
39
- subject { Nokogiri::HTML(retter_config.retter_home.join('index.html').read) }
39
+ let(:index_html) { retter_config.index_file.read }
40
40
 
41
- it { subject.search('body').text.should =~ /おはようございます/ }
42
- it { subject.search('.entry h1.date').first.text.should be_include('2011/01/01') }
43
- it { subject.search('.entry h1').map(&:text).map(&:strip).should == %w(2011/01/01 朝11時 夜1時) }
41
+ it { texts_of(index_html, '.entry p').should be_include('おはようございます') }
42
+ it { texts_of(index_html, '.entry h1.date').should == %w(2011/01/01) }
43
+ it { texts_of(index_html, '.entry h1').should == %w(2011/01/01 朝11時 夜1時) }
44
44
  end
45
45
 
46
46
  describe 'entries.html' do
47
- subject { Nokogiri::HTML(retter_config.retter_home.join('entries.html').read) }
47
+ let(:entries_html) { retter_config.entries_file.read }
48
48
 
49
- it { subject.search('a.entry').first.text.should be_include('2011/01/01') }
50
- it { subject.search('a.title').map(&:text).map(&:strip).should == %w(朝11時 夜1時) }
49
+ it { texts_of(entries_html, 'a.entry').first.should == '2011/01/01' }
50
+ it { texts_of(entries_html, 'a.title').should == %w(朝11時 夜1時) }
51
+ end
52
+
53
+ describe 'entry.html' do
54
+ let(:entry_html) { retter_config.entry_file(Date.parse(date_str)).read }
55
+
56
+ it { texts_of(entry_html, '.entry p').should be_include('おはようございます') }
57
+ it { texts_of(entry_html, '.entry h1.date').should == %w(2011/01/01) }
58
+ it { texts_of(entry_html, '.entry h1').should == %w(2011/01/01 朝11時 夜1時) }
51
59
  end
52
60
  end
53
61
  end
data/spec/spec_helper.rb CHANGED
@@ -1,22 +1,14 @@
1
1
  # coding: utf-8
2
2
 
3
- RETTER_ROOT = Pathname.new(File.dirname(__FILE__) + '/../').realpath
4
-
5
- require RETTER_ROOT.join('lib', 'retter')
6
3
  require 'tapp'
4
+ require 'simplecov'
7
5
 
8
- module Retter::ConfigSupport
9
- def retter_config
10
- return @config if @config
6
+ SimpleCov.start
11
7
 
12
- env = {
13
- 'EDITOR' => 'touch',
14
- 'RETTER_HOME' => RETTER_ROOT.join('tmp', 'test').to_s
15
- }
8
+ RETTER_ROOT = Pathname.new(File.dirname(__FILE__) + '/../').realpath
9
+ require RETTER_ROOT.join('lib', 'retter')
16
10
 
17
- @config = Retter::Config.new(env)
18
- end
19
- end
11
+ Dir[File.dirname(__FILE__) + '/support/*'].each {|f| require f }
20
12
 
21
13
  RSpec.configure do |config|
22
14
  config.filter_run focus: true
@@ -25,7 +17,7 @@ RSpec.configure do |config|
25
17
  retter_home = RETTER_ROOT.join('tmp', 'test')
26
18
  skel = RETTER_ROOT.join('lib', 'generator', 'skel')
27
19
 
28
- config.after(:each, clean: :all) do
20
+ config.before(:each, clean: :all) do
29
21
  FileUtils.cp_r skel, retter_home.dirname.join('test')
30
22
  end
31
23
 
@@ -34,4 +26,5 @@ RSpec.configure do |config|
34
26
  end
35
27
 
36
28
  config.include Retter::ConfigSupport
29
+ config.include Retter::HTMLSupport
37
30
  end
@@ -0,0 +1,14 @@
1
+ # coding: utf-8
2
+
3
+ module Retter::ConfigSupport
4
+ def retter_config
5
+ return @config if @config
6
+
7
+ env = {
8
+ 'EDITOR' => 'touch',
9
+ 'RETTER_HOME' => RETTER_ROOT.join('tmp', 'test').to_s
10
+ }
11
+
12
+ @config = Retter::Config.new(env)
13
+ end
14
+ end
@@ -0,0 +1,9 @@
1
+ # coding: utf-8
2
+
3
+ module Retter::HTMLSupport
4
+ def texts_of(str, selector)
5
+ Nokogiri::HTML(str).search(selector).map {|el|
6
+ el.text.strip
7
+ }
8
+ end
9
+ end
@@ -0,0 +1,8 @@
1
+ # coding: utf-8
2
+
3
+ RSpec::Matchers.define :written do
4
+ match do |file|
5
+ file.exist?
6
+ end
7
+ end
8
+
data/tmp/.gitkeep ADDED
File without changes
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.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-09-09 00:00:00.000000000Z
12
+ date: 2011-09-11 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: thor
16
- requirement: &70276239686360 !ruby/object:Gem::Requirement
16
+ requirement: &70292957469320 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70276239686360
24
+ version_requirements: *70292957469320
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: builder
27
- requirement: &70276239685920 !ruby/object:Gem::Requirement
27
+ requirement: &70292957468780 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70276239685920
35
+ version_requirements: *70292957468780
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: redcarpet
38
- requirement: &70276239685400 !ruby/object:Gem::Requirement
38
+ requirement: &70292957468100 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 2.0.0b3
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70276239685400
46
+ version_requirements: *70292957468100
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: coderay
49
- requirement: &70276239684980 !ruby/object:Gem::Requirement
49
+ requirement: &70292957467680 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70276239684980
57
+ version_requirements: *70292957467680
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: nokogiri
60
- requirement: &70276239684520 !ruby/object:Gem::Requirement
60
+ requirement: &70292957467200 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0'
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *70276239684520
68
+ version_requirements: *70292957467200
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: launchy
71
- requirement: &70276239684100 !ruby/object:Gem::Requirement
71
+ requirement: &70292957466520 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '0'
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *70276239684100
79
+ version_requirements: *70292957466520
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: haml
82
- requirement: &70276239683680 !ruby/object:Gem::Requirement
82
+ requirement: &70292957466000 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: '0'
88
88
  type: :runtime
89
89
  prerelease: false
90
- version_requirements: *70276239683680
90
+ version_requirements: *70292957466000
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: bundler
93
- requirement: &70276239683260 !ruby/object:Gem::Requirement
93
+ requirement: &70292957465500 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: '0'
99
99
  type: :runtime
100
100
  prerelease: false
101
- version_requirements: *70276239683260
101
+ version_requirements: *70292957465500
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: grit
104
- requirement: &70276239682820 !ruby/object:Gem::Requirement
104
+ requirement: &70292957465020 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ! '>='
@@ -109,10 +109,21 @@ dependencies:
109
109
  version: '0'
110
110
  type: :runtime
111
111
  prerelease: false
112
- version_requirements: *70276239682820
112
+ version_requirements: *70292957465020
113
+ - !ruby/object:Gem::Dependency
114
+ name: rake
115
+ requirement: &70292957464600 !ruby/object:Gem::Requirement
116
+ none: false
117
+ requirements:
118
+ - - ! '>='
119
+ - !ruby/object:Gem::Version
120
+ version: '0'
121
+ type: :development
122
+ prerelease: false
123
+ version_requirements: *70292957464600
113
124
  - !ruby/object:Gem::Dependency
114
125
  name: ir_b
115
- requirement: &70276239675480 !ruby/object:Gem::Requirement
126
+ requirement: &70292957439860 !ruby/object:Gem::Requirement
116
127
  none: false
117
128
  requirements:
118
129
  - - ! '>='
@@ -120,10 +131,10 @@ dependencies:
120
131
  version: '0'
121
132
  type: :development
122
133
  prerelease: false
123
- version_requirements: *70276239675480
134
+ version_requirements: *70292957439860
124
135
  - !ruby/object:Gem::Dependency
125
136
  name: tapp
126
- requirement: &70276239674960 !ruby/object:Gem::Requirement
137
+ requirement: &70292957439420 !ruby/object:Gem::Requirement
127
138
  none: false
128
139
  requirements:
129
140
  - - ! '>='
@@ -131,10 +142,21 @@ dependencies:
131
142
  version: '0'
132
143
  type: :development
133
144
  prerelease: false
134
- version_requirements: *70276239674960
145
+ version_requirements: *70292957439420
135
146
  - !ruby/object:Gem::Dependency
136
147
  name: rspec
137
- requirement: &70276239674540 !ruby/object:Gem::Requirement
148
+ requirement: &70292957439000 !ruby/object:Gem::Requirement
149
+ none: false
150
+ requirements:
151
+ - - ! '>='
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
154
+ type: :development
155
+ prerelease: false
156
+ version_requirements: *70292957439000
157
+ - !ruby/object:Gem::Dependency
158
+ name: simplecov
159
+ requirement: &70292957438580 !ruby/object:Gem::Requirement
138
160
  none: false
139
161
  requirements:
140
162
  - - ! '>='
@@ -142,8 +164,8 @@ dependencies:
142
164
  version: '0'
143
165
  type: :development
144
166
  prerelease: false
145
- version_requirements: *70276239674540
146
- description: Lightweight diary workflow
167
+ version_requirements: *70292957438580
168
+ description: Lightweight diary workflow. ruby-1.9.2 or later is required.
147
169
  email:
148
170
  - celluloid.key@gmail.com
149
171
  executables:
@@ -152,6 +174,7 @@ extensions: []
152
174
  extra_rdoc_files: []
153
175
  files:
154
176
  - .gitignore
177
+ - .travis.yml
155
178
  - Gemfile
156
179
  - README.md
157
180
  - Rakefile
@@ -183,11 +206,17 @@ files:
183
206
  - lib/retter/stationery/view.rb
184
207
  - lib/retter/version.rb
185
208
  - retter.gemspec
209
+ - spec/command/commit_spec.rb
186
210
  - spec/command/edit_spec.rb
211
+ - spec/command/open_spec.rb
187
212
  - spec/command/preview_spec.rb
188
213
  - spec/command/rebind_spec.rb
189
214
  - spec/spec_helper.rb
190
- homepage: http://retter.heroku.com
215
+ - spec/support/config_support.rb
216
+ - spec/support/html_support.rb
217
+ - spec/support/matchers.rb
218
+ - tmp/.gitkeep
219
+ homepage: https://github.com/hibariya/retter
191
220
  licenses: []
192
221
  post_install_message:
193
222
  rdoc_options: []
@@ -212,7 +241,12 @@ signing_key:
212
241
  specification_version: 3
213
242
  summary: Lightweight diary workflow
214
243
  test_files:
244
+ - spec/command/commit_spec.rb
215
245
  - spec/command/edit_spec.rb
246
+ - spec/command/open_spec.rb
216
247
  - spec/command/preview_spec.rb
217
248
  - spec/command/rebind_spec.rb
218
249
  - spec/spec_helper.rb
250
+ - spec/support/config_support.rb
251
+ - spec/support/html_support.rb
252
+ - spec/support/matchers.rb