reditor 0.3.3 → 0.4.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.
- checksums.yaml +4 -4
- data/.travis.yml +2 -0
- data/README.md +25 -20
- data/bin/reditor +0 -3
- data/lib/reditor.rb +0 -5
- data/lib/reditor/command.rb +56 -27
- data/lib/reditor/library_locator.rb +15 -7
- data/lib/reditor/library_search_query.rb +31 -25
- data/lib/reditor/version.rb +1 -1
- data/reditor.gemspec +5 -4
- data/spec/command_spec.rb +37 -16
- data/spec/library_search_query_spec.rb +6 -6
- metadata +23 -37
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 65d269738917fa656392dbfdc72911162d4bceb1
|
4
|
+
data.tar.gz: 9c2a310abe62329700de7faf0a991327796c64c5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8c7832bc2ac674fbbc2da482810af2bf5733acde8d9ad9073df2e50d3aeacf1080ada3acb3ee288f6b4277f3e5f91e0d389c7e3bc0e5a0d61e653d3b6d191613
|
7
|
+
data.tar.gz: 6812fbaf4a82210d4eb0f40e6e0a80d71040316a071be069e9790af510e781961e1e318663aa81ce328d70b9463dbbeffea292d858bc90f2ba88c7473a518e80
|
data/.travis.yml
CHANGED
data/README.md
CHANGED
@@ -2,33 +2,19 @@
|
|
2
2
|
|
3
3
|
Reditor provides `reditor` command.
|
4
4
|
|
5
|
-
This command detect and open a library from
|
5
|
+
This command detect and open a library from `$LOAD_PATH` or rubygems.
|
6
6
|
|
7
|
-
reditor requires the EDITOR variable.
|
7
|
+
reditor requires the `$EDITOR` variable.
|
8
8
|
|
9
9
|
## Installation
|
10
10
|
|
11
|
-
Add this line to your application's Gemfile:
|
12
|
-
|
13
|
-
```ruby
|
14
|
-
gem 'reditor'
|
15
|
-
```
|
16
|
-
|
17
|
-
And then execute:
|
18
|
-
|
19
|
-
```
|
20
|
-
$ bundle
|
21
|
-
```
|
22
|
-
|
23
|
-
Or install it yourself as:
|
24
|
-
|
25
11
|
```
|
26
12
|
$ gem install reditor
|
27
13
|
```
|
28
14
|
|
29
15
|
## Usage
|
30
16
|
|
31
|
-
### Open Standard Library (pure ruby only)
|
17
|
+
### Open a Standard Library (pure ruby only)
|
32
18
|
|
33
19
|
```
|
34
20
|
$ reditor set
|
@@ -37,13 +23,32 @@ Or install it yourself as:
|
|
37
23
|
### Open a gem
|
38
24
|
|
39
25
|
```
|
40
|
-
$ reditor
|
26
|
+
$ reditor railties
|
41
27
|
```
|
42
28
|
|
43
|
-
### Open a
|
29
|
+
### Open a library by $SHELL
|
44
30
|
|
45
31
|
```
|
46
|
-
$ reditor sh
|
32
|
+
$ reditor sh railties
|
33
|
+
```
|
34
|
+
|
35
|
+
### Open a gem on bundler project
|
36
|
+
|
37
|
+
Reditor opens a gem that specified in Gemfile by default.
|
38
|
+
If you want to avoid it, pass the `--global` option.
|
39
|
+
|
40
|
+
```
|
41
|
+
$ gem list rack
|
42
|
+
|
43
|
+
*** LOCAL GEMS ***
|
44
|
+
|
45
|
+
rack (1.5.2, 1.4.5)
|
46
|
+
|
47
|
+
$ bundle list rack
|
48
|
+
/(snip)/rack-1.4.5
|
49
|
+
|
50
|
+
$ reditor rack # open rack-1.4.5
|
51
|
+
$ reditor rack --global # open rack-1.5.2
|
47
52
|
```
|
48
53
|
|
49
54
|
## Contributing
|
data/bin/reditor
CHANGED
data/lib/reditor.rb
CHANGED
data/lib/reditor/command.rb
CHANGED
@@ -4,14 +4,29 @@ require 'thor'
|
|
4
4
|
|
5
5
|
module Reditor
|
6
6
|
class Command < Thor
|
7
|
+
class << self
|
8
|
+
attr_accessor :restarted
|
9
|
+
|
10
|
+
def restart(args)
|
11
|
+
self.restarted = true
|
12
|
+
|
13
|
+
start args
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
7
17
|
map '-v' => :version,
|
8
18
|
'-h' => :help,
|
9
19
|
'--version' => :version,
|
10
20
|
'--help' => :help
|
11
21
|
|
12
|
-
|
13
|
-
|
14
|
-
|
22
|
+
default_command :open
|
23
|
+
|
24
|
+
desc 'open [NAME]', 'Detect and open a library'
|
25
|
+
method_options global: false
|
26
|
+
def open(name = nil)
|
27
|
+
return invoke :help unless name
|
28
|
+
|
29
|
+
detect_exec name, global: options[:global] do |dir, file|
|
15
30
|
say "Moving to #{dir}", :green
|
16
31
|
Dir.chdir dir do
|
17
32
|
say "Opening #{file}", :green
|
@@ -21,9 +36,10 @@ module Reditor
|
|
21
36
|
end
|
22
37
|
end
|
23
38
|
|
24
|
-
desc
|
39
|
+
desc 'sh [NAME]', 'Detect and open a library by $SHELL'
|
40
|
+
method_options global: false
|
25
41
|
def sh(name)
|
26
|
-
detect_exec name do |dir, _|
|
42
|
+
detect_exec name, global: options[:global] do |dir, _|
|
27
43
|
say "Moving to #{dir}", :green
|
28
44
|
Dir.chdir dir do
|
29
45
|
exec shell_command
|
@@ -36,40 +52,47 @@ module Reditor
|
|
36
52
|
say "Reditor version #{VERSION}"
|
37
53
|
end
|
38
54
|
|
39
|
-
def method_missing(name, *args, &block)
|
40
|
-
open name
|
41
|
-
end
|
42
|
-
|
43
55
|
private
|
44
56
|
|
45
|
-
def detect_exec(name, &block)
|
46
|
-
path = LibraryLocator.detect(name)
|
47
|
-
|
48
|
-
return choose_exec name, &block unless path
|
57
|
+
def detect_exec(name, options = {}, &block)
|
58
|
+
path = LibraryLocator.detect!(name, options)
|
49
59
|
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
else
|
54
|
-
[path.to_path, '.']
|
55
|
-
end
|
60
|
+
do_exec path, &block
|
61
|
+
rescue LibraryNotFound => e
|
62
|
+
say e.message
|
56
63
|
|
57
|
-
|
64
|
+
choose_exec name, options, &block
|
58
65
|
end
|
59
66
|
|
60
|
-
def choose_exec(name, &block)
|
61
|
-
names = LibrarySearchQuery.search(name)
|
67
|
+
def choose_exec(name, options = {}, &block)
|
68
|
+
names = LibrarySearchQuery.search(name, options)
|
62
69
|
|
63
70
|
names.each.with_index do |name, i|
|
64
71
|
say "[#{i}] #{name}"
|
65
72
|
end
|
66
|
-
print 'Choose number of library [0]> '
|
67
73
|
|
68
|
-
|
74
|
+
exit_silently unless num = ask('Choose number of library [0]>')
|
69
75
|
|
70
|
-
|
76
|
+
if name = names[num.to_i]
|
77
|
+
do_exec LibraryLocator.detect!(name, options), &block
|
78
|
+
else
|
79
|
+
abort "#{num} isn't included in the list."
|
80
|
+
end
|
81
|
+
rescue LibraryNotFound => e
|
82
|
+
abort e.message
|
71
83
|
rescue Interrupt
|
72
|
-
|
84
|
+
exit_silently
|
85
|
+
end
|
86
|
+
|
87
|
+
def do_exec(path, &block)
|
88
|
+
dir, file =
|
89
|
+
if path.file?
|
90
|
+
[path.dirname.to_path, path.basename.to_path]
|
91
|
+
else
|
92
|
+
[path.to_path, '.']
|
93
|
+
end
|
94
|
+
|
95
|
+
block.call dir, file
|
73
96
|
end
|
74
97
|
|
75
98
|
def editor_command
|
@@ -80,10 +103,16 @@ module Reditor
|
|
80
103
|
ENV['SHELL'] or raise '$SHELL is not provided.'
|
81
104
|
end
|
82
105
|
|
83
|
-
def
|
106
|
+
def exit_silently
|
84
107
|
puts
|
85
108
|
|
86
109
|
exit
|
87
110
|
end
|
111
|
+
|
112
|
+
def method_missing(name, *args, &block)
|
113
|
+
return super if Command.restarted
|
114
|
+
|
115
|
+
Command.restart ['open', name.to_s, *args]
|
116
|
+
end
|
88
117
|
end
|
89
118
|
end
|
@@ -3,16 +3,23 @@ require 'pathname'
|
|
3
3
|
# TODO: care version specification
|
4
4
|
module Reditor
|
5
5
|
class LibraryLocator
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
6
|
+
class << self
|
7
|
+
def detect(name, options = {})
|
8
|
+
new(name.to_s, options).detect
|
9
|
+
end
|
10
|
+
|
11
|
+
def detect!(name, options = {})
|
12
|
+
detect(name, options) or raise LibraryNotFound, "Can't detect library `#{name}'."
|
13
|
+
end
|
10
14
|
end
|
11
15
|
|
12
|
-
|
16
|
+
include BundlerSupport
|
17
|
+
|
18
|
+
attr_reader :name, :options
|
13
19
|
|
14
|
-
def initialize(name)
|
15
|
-
@name
|
20
|
+
def initialize(name, options)
|
21
|
+
@name = name
|
22
|
+
@options = {global: false}.merge(options)
|
16
23
|
end
|
17
24
|
|
18
25
|
def detect
|
@@ -20,6 +27,7 @@ module Reditor
|
|
20
27
|
end
|
21
28
|
|
22
29
|
def detect_from_bundler
|
30
|
+
return nil if options[:global]
|
23
31
|
return nil unless spec = bundler_specs.find {|spec| spec.name == name }
|
24
32
|
|
25
33
|
Pathname(spec.full_gem_path)
|
@@ -5,60 +5,66 @@ module Reditor
|
|
5
5
|
class LibrarySearchQuery
|
6
6
|
include BundlerSupport
|
7
7
|
|
8
|
-
def self.search(query,
|
9
|
-
new(query).search
|
8
|
+
def self.search(query, options = {})
|
9
|
+
new(query, options).search
|
10
10
|
end
|
11
11
|
|
12
|
-
|
13
|
-
|
12
|
+
attr_reader :query, :options
|
13
|
+
attr_reader :half_pattern, :partial_pattern
|
14
14
|
|
15
|
-
|
16
|
-
@
|
15
|
+
def initialize(query, options = {})
|
16
|
+
@query = query.to_s
|
17
|
+
@options = {limit: 20, global: false}.merge(options)
|
18
|
+
|
19
|
+
quoted = Regexp.quote(query)
|
20
|
+
@half_pattern = /^#{quoted}|#{quoted}$/i
|
17
21
|
@partial_pattern = /#{quoted}/i
|
18
22
|
end
|
19
23
|
|
20
|
-
def search(limit)
|
21
|
-
|
22
|
-
|
24
|
+
def search(limit = options[:limit])
|
25
|
+
candidates.sort_by {|name|
|
26
|
+
[*match_scores(name), *distance_scores(name), name]
|
23
27
|
}.take(limit)
|
24
28
|
end
|
25
29
|
|
26
|
-
def
|
27
|
-
@
|
28
|
-
|
29
|
-
|
30
|
-
|
30
|
+
def candidates
|
31
|
+
@candidates ||= (
|
32
|
+
candidates_from_loadpath +
|
33
|
+
candidates_from_gem +
|
34
|
+
candidates_from_bundler
|
31
35
|
).uniq
|
32
36
|
end
|
33
37
|
|
34
38
|
private
|
35
39
|
|
36
|
-
def
|
40
|
+
def match_scores(name)
|
37
41
|
words = name.split(/-_/)
|
38
|
-
|
39
|
-
partial_count = words.grep(
|
42
|
+
half_count = words.grep(half_pattern).count
|
43
|
+
partial_count = words.grep(partial_pattern).count
|
40
44
|
|
41
|
-
[-
|
45
|
+
[-half_count, -partial_count]
|
42
46
|
end
|
43
47
|
|
44
|
-
def
|
45
|
-
[Hotwater.damerau_levenshtein_distance(
|
48
|
+
def distance_scores(name)
|
49
|
+
[Hotwater.damerau_levenshtein_distance(query, name)]
|
46
50
|
end
|
47
51
|
|
48
|
-
def
|
52
|
+
def candidates_from_bundler
|
53
|
+
return [] if options[:global]
|
54
|
+
|
49
55
|
bundler_specs.map(&:name)
|
50
56
|
end
|
51
57
|
|
52
|
-
def
|
58
|
+
def candidates_from_gem
|
53
59
|
Gem::Specification.map(&:name)
|
54
60
|
rescue Gem::LoadError
|
55
61
|
[]
|
56
62
|
end
|
57
63
|
|
58
|
-
def
|
59
|
-
$LOAD_PATH.each_with_object([]) {|path,
|
64
|
+
def candidates_from_loadpath
|
65
|
+
$LOAD_PATH.each_with_object([]) {|path, memo|
|
60
66
|
Pathname(File.expand_path(path)).entries.each do |entry|
|
61
|
-
|
67
|
+
memo << entry.basename('.rb').to_s if entry.extname == '.rb'
|
62
68
|
end
|
63
69
|
}
|
64
70
|
end
|
data/lib/reditor/version.rb
CHANGED
data/reditor.gemspec
CHANGED
@@ -4,8 +4,8 @@ require File.expand_path('../lib/reditor/version', __FILE__)
|
|
4
4
|
Gem::Specification.new do |gem|
|
5
5
|
gem.authors = ['hibariya']
|
6
6
|
gem.email = ['celluloid.key@gmail.com']
|
7
|
-
gem.description = %q{Open a ruby library with
|
8
|
-
gem.summary = %q{Open a ruby library with
|
7
|
+
gem.description = %q{Open a ruby library with $EDITOR. Reditor supports rubygems, bundler, and stdlib (pure ruby).}
|
8
|
+
gem.summary = %q{Open a ruby library with $EDITOR.}
|
9
9
|
gem.homepage = 'https://github.com/hibariya/reditor'
|
10
10
|
gem.licenses = ['MIT']
|
11
11
|
|
@@ -18,10 +18,11 @@ Gem::Specification.new do |gem|
|
|
18
18
|
|
19
19
|
gem.add_runtime_dependency 'hotwater', '~> 0.1.2'
|
20
20
|
gem.add_runtime_dependency 'thor', '~> 0.18.1'
|
21
|
-
|
21
|
+
|
22
|
+
# Add into runtime dependency to avoid `WARN: Unresolved specs during Gem::Specification.reset: rake (>= 0)'
|
23
|
+
gem.add_runtime_dependency 'rake', '~> 10.1.1'
|
22
24
|
|
23
25
|
gem.add_development_dependency 'pry'
|
24
|
-
gem.add_development_dependency 'rake'
|
25
26
|
gem.add_development_dependency 'rspec', '~> 2.14.1'
|
26
27
|
gem.add_development_dependency 'tapp'
|
27
28
|
end
|
data/spec/command_spec.rb
CHANGED
@@ -3,20 +3,26 @@ require 'open3'
|
|
3
3
|
|
4
4
|
describe 'reditor command' do
|
5
5
|
def capture_reditor(library_name, options = {})
|
6
|
-
options = {editor: 'echo',
|
6
|
+
options = {editor: 'echo', on: nil, global: false}.merge(options)
|
7
7
|
command = PROJECT_ROOT.join('bin/reditor').to_path
|
8
|
-
project = PROJECT_ROOT.join("spec/samples/#{options[:
|
8
|
+
project = PROJECT_ROOT.join("spec/samples/#{options[:on]}").to_path
|
9
9
|
|
10
10
|
Bundler.with_clean_env {
|
11
|
-
Open3.capture2e(
|
11
|
+
output, process = Open3.capture2e(
|
12
12
|
{'EDITOR' => options[:editor]},
|
13
13
|
command,
|
14
14
|
library_name,
|
15
|
+
"--global=#{options[:global]}",
|
15
16
|
chdir: project
|
16
|
-
)
|
17
|
+
)
|
18
|
+
|
19
|
+
raise "Command failed: #{output}" unless process.success?
|
20
|
+
|
21
|
+
output
|
17
22
|
}
|
18
23
|
end
|
19
24
|
|
25
|
+
let(:thor_in_global_gems) { /thor-0\.18\.*/ }
|
20
26
|
let(:thor_in_bundler_project) { /thor-0\.14\.6/ }
|
21
27
|
|
22
28
|
before :all do
|
@@ -27,19 +33,19 @@ describe 'reditor command' do
|
|
27
33
|
|
28
34
|
describe '#open' do
|
29
35
|
context 'Standard library in non-bundler broject (happy case)' do
|
30
|
-
subject { capture_reditor('
|
36
|
+
subject { capture_reditor('webrick', on: 'blank_project') }
|
31
37
|
|
32
|
-
it { should match /
|
38
|
+
it { should match /webrick\.rb$/ }
|
33
39
|
end
|
34
40
|
|
35
41
|
context 'Incorrect name library in non-bundler broject' do
|
36
|
-
subject { capture_reditor('cvs',
|
42
|
+
subject { capture_reditor('cvs', on: 'blank_project') }
|
37
43
|
|
38
44
|
it { should match /\[0\] csv/ }
|
39
45
|
end
|
40
46
|
|
41
|
-
context '
|
42
|
-
subject { capture_reditor('thor',
|
47
|
+
context 'Rubygems library in non-bundler project' do
|
48
|
+
subject { capture_reditor('thor', on: 'blank_project') }
|
43
49
|
|
44
50
|
it { should match /thor-/m }
|
45
51
|
|
@@ -48,25 +54,40 @@ describe 'reditor command' do
|
|
48
54
|
end
|
49
55
|
end
|
50
56
|
|
51
|
-
context '
|
52
|
-
subject { capture_reditor('thor',
|
57
|
+
context 'Rubygems library in bundler project (installed)' do
|
58
|
+
subject { capture_reditor('thor', on: 'bundler_project') }
|
53
59
|
|
54
60
|
specify 'bundler gem should be used' do
|
55
61
|
subject.should match thor_in_bundler_project
|
56
62
|
end
|
57
63
|
end
|
58
64
|
|
59
|
-
context '
|
60
|
-
subject { capture_reditor('thor',
|
65
|
+
context 'Rubygems library in bundler project (not yet installed)' do
|
66
|
+
subject { capture_reditor('thor', on: 'bundler_project_without_lockfile') }
|
61
67
|
|
62
68
|
it { should match thor_in_bundler_project }
|
63
69
|
end
|
64
70
|
|
71
|
+
context 'with --global option' do
|
72
|
+
subject { capture_reditor('thor', on: 'bundler_project', global: true) }
|
73
|
+
|
74
|
+
it { should match thor_in_global_gems }
|
75
|
+
it { should_not match thor_in_bundler_project }
|
76
|
+
end
|
77
|
+
|
65
78
|
context 'with incorrect name' do
|
66
|
-
subject { capture_reditor('
|
79
|
+
subject { capture_reditor('rb') }
|
80
|
+
|
81
|
+
it { should match /\[\d+\]\sirb$/ }
|
82
|
+
it { should match /\[\d+\]\serb$/ }
|
83
|
+
it { should match /\[\d+\]\sdrb$/ }
|
84
|
+
it { should match /Choose number of library/ }
|
85
|
+
end
|
86
|
+
|
87
|
+
context 'with incorrect name and --global option' do
|
88
|
+
subject { capture_reditor('tho', on: 'bundler_project', global: true) }
|
67
89
|
|
68
|
-
it { should match /\[\d+\]\
|
69
|
-
it { should match /\[\d+\]\sthor/ }
|
90
|
+
it { should match /\[\d+\]\sthor$/ }
|
70
91
|
it { should match /Choose number of library/ }
|
71
92
|
end
|
72
93
|
end
|
@@ -4,7 +4,7 @@ require 'spec_helper'
|
|
4
4
|
describe Reditor::LibrarySearchQuery do
|
5
5
|
describe '.search(query, limit)' do
|
6
6
|
before do
|
7
|
-
Reditor::LibrarySearchQuery.any_instance.stub(:
|
7
|
+
Reditor::LibrarySearchQuery.any_instance.stub(:candidates) {
|
8
8
|
%w(
|
9
9
|
rails_admin
|
10
10
|
railtie
|
@@ -19,31 +19,31 @@ describe Reditor::LibrarySearchQuery do
|
|
19
19
|
end
|
20
20
|
|
21
21
|
describe 'rails' do
|
22
|
-
subject { Reditor::LibrarySearchQuery.search('rails', 3) }
|
22
|
+
subject { Reditor::LibrarySearchQuery.search('rails', limit: 3) }
|
23
23
|
|
24
24
|
it { should == %w(rails_admin jquery-atwho-rails railtie) }
|
25
25
|
end
|
26
26
|
|
27
27
|
describe 'rails_' do
|
28
|
-
subject { Reditor::LibrarySearchQuery.search('rails_', 2) }
|
28
|
+
subject { Reditor::LibrarySearchQuery.search('rails_', limit: 2) }
|
29
29
|
|
30
30
|
it { should == %w(rails_admin railtie) }
|
31
31
|
end
|
32
32
|
|
33
33
|
describe 'cvs' do
|
34
|
-
subject { Reditor::LibrarySearchQuery.search('cvs', 1) }
|
34
|
+
subject { Reditor::LibrarySearchQuery.search('cvs', limit: 1) }
|
35
35
|
|
36
36
|
it { should == %w(csv) }
|
37
37
|
end
|
38
38
|
|
39
39
|
describe 'atwho' do
|
40
|
-
subject { Reditor::LibrarySearchQuery.search('atwho', 2) }
|
40
|
+
subject { Reditor::LibrarySearchQuery.search('atwho', limit: 2) }
|
41
41
|
|
42
42
|
it { should == %w(jquery-atwho-rails itwho) }
|
43
43
|
end
|
44
44
|
|
45
45
|
describe 'active' do
|
46
|
-
subject { Reditor::LibrarySearchQuery.search('active', 3) }
|
46
|
+
subject { Reditor::LibrarySearchQuery.search('active', limit: 3) }
|
47
47
|
|
48
48
|
it { should == %w(activemodel active_decorator action) }
|
49
49
|
end
|
metadata
CHANGED
@@ -1,114 +1,100 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: reditor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- hibariya
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2014-03-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: hotwater
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ~>
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: 0.1.2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - ~>
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 0.1.2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: thor
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - ~>
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: 0.18.1
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - ~>
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 0.18.1
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rake
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - ~>
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 10.1.
|
47
|
+
version: 10.1.1
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - ~>
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 10.1.
|
54
|
+
version: 10.1.1
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: pry
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: rake
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - '>='
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - '>='
|
66
|
+
- - ">="
|
81
67
|
- !ruby/object:Gem::Version
|
82
68
|
version: '0'
|
83
69
|
- !ruby/object:Gem::Dependency
|
84
70
|
name: rspec
|
85
71
|
requirement: !ruby/object:Gem::Requirement
|
86
72
|
requirements:
|
87
|
-
- - ~>
|
73
|
+
- - "~>"
|
88
74
|
- !ruby/object:Gem::Version
|
89
75
|
version: 2.14.1
|
90
76
|
type: :development
|
91
77
|
prerelease: false
|
92
78
|
version_requirements: !ruby/object:Gem::Requirement
|
93
79
|
requirements:
|
94
|
-
- - ~>
|
80
|
+
- - "~>"
|
95
81
|
- !ruby/object:Gem::Version
|
96
82
|
version: 2.14.1
|
97
83
|
- !ruby/object:Gem::Dependency
|
98
84
|
name: tapp
|
99
85
|
requirement: !ruby/object:Gem::Requirement
|
100
86
|
requirements:
|
101
|
-
- -
|
87
|
+
- - ">="
|
102
88
|
- !ruby/object:Gem::Version
|
103
89
|
version: '0'
|
104
90
|
type: :development
|
105
91
|
prerelease: false
|
106
92
|
version_requirements: !ruby/object:Gem::Requirement
|
107
93
|
requirements:
|
108
|
-
- -
|
94
|
+
- - ">="
|
109
95
|
- !ruby/object:Gem::Version
|
110
96
|
version: '0'
|
111
|
-
description: Open a ruby library with
|
97
|
+
description: Open a ruby library with $EDITOR. Reditor supports rubygems, bundler,
|
112
98
|
and stdlib (pure ruby).
|
113
99
|
email:
|
114
100
|
- celluloid.key@gmail.com
|
@@ -117,8 +103,8 @@ executables:
|
|
117
103
|
extensions: []
|
118
104
|
extra_rdoc_files: []
|
119
105
|
files:
|
120
|
-
- .gitignore
|
121
|
-
- .travis.yml
|
106
|
+
- ".gitignore"
|
107
|
+
- ".travis.yml"
|
122
108
|
- Gemfile
|
123
109
|
- LICENSE
|
124
110
|
- README.md
|
@@ -147,20 +133,20 @@ require_paths:
|
|
147
133
|
- lib
|
148
134
|
required_ruby_version: !ruby/object:Gem::Requirement
|
149
135
|
requirements:
|
150
|
-
- -
|
136
|
+
- - ">="
|
151
137
|
- !ruby/object:Gem::Version
|
152
138
|
version: '0'
|
153
139
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
154
140
|
requirements:
|
155
|
-
- -
|
141
|
+
- - ">="
|
156
142
|
- !ruby/object:Gem::Version
|
157
143
|
version: '0'
|
158
144
|
requirements: []
|
159
145
|
rubyforge_project:
|
160
|
-
rubygems_version: 2.
|
146
|
+
rubygems_version: 2.2.2
|
161
147
|
signing_key:
|
162
148
|
specification_version: 4
|
163
|
-
summary: Open a ruby library with
|
149
|
+
summary: Open a ruby library with $EDITOR.
|
164
150
|
test_files:
|
165
151
|
- spec/command_spec.rb
|
166
152
|
- spec/library_search_query_spec.rb
|