open_gem 1.3.1 → 1.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.
- data/CHANGELOG.markdown +3 -0
- data/README.markdown +3 -3
- data/Rakefile +1 -0
- data/VERSION.yml +2 -2
- data/lib/open_gem/common_options.rb +16 -3
- data/lib/rubygems/commands/open_command.rb +1 -0
- data/lib/rubygems/commands/read_command.rb +2 -1
- metadata +5 -5
data/CHANGELOG.markdown
CHANGED
data/README.markdown
CHANGED
@@ -20,10 +20,10 @@ Just install like any normal gem:
|
|
20
20
|
|
21
21
|
gem install open_gem
|
22
22
|
|
23
|
-
Or for the edge version
|
23
|
+
Or for the edge version use GemCutter.org:
|
24
24
|
|
25
|
-
gem sources -a http://
|
26
|
-
gem install
|
25
|
+
gem sources -a http://gemcutter.org
|
26
|
+
gem install open_gem
|
27
27
|
|
28
28
|
For more help:
|
29
29
|
|
data/Rakefile
CHANGED
data/VERSION.yml
CHANGED
@@ -14,16 +14,29 @@ module OpenGem
|
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
17
|
+
def add_exact_match_option
|
18
|
+
add_option('-x', '--exact',
|
19
|
+
'Only list exact matches') do |value, options|
|
20
|
+
options[:exact] = true
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
17
24
|
def get_spec(name)
|
18
|
-
dep = Gem::Dependency.new
|
25
|
+
dep = Gem::Dependency.new(name, options[:version])
|
19
26
|
specs = Gem.source_index.search(dep)
|
20
27
|
if block_given?
|
21
28
|
specs = specs.select{|spec| yield spec}
|
22
29
|
end
|
23
30
|
|
24
31
|
if specs.length == 0
|
25
|
-
|
26
|
-
|
32
|
+
# If we have not tried to do a pattern match yet, fall back on it.
|
33
|
+
if(!options[:exact] && !name.is_a?(Regexp))
|
34
|
+
pattern = /#{Regexp.escape name}/
|
35
|
+
get_spec(pattern)
|
36
|
+
else
|
37
|
+
say "#{name.inspect} is not available"
|
38
|
+
return nil
|
39
|
+
end
|
27
40
|
|
28
41
|
elsif specs.length == 1 || options[:latest]
|
29
42
|
return specs.last
|
@@ -12,6 +12,7 @@ class Gem::Commands::ReadCommand < Gem::Command
|
|
12
12
|
add_command_option "Application to read rdoc with"
|
13
13
|
add_latest_version_option
|
14
14
|
add_version_option
|
15
|
+
add_exact_match_option
|
15
16
|
end
|
16
17
|
|
17
18
|
def arguments # :nodoc:
|
@@ -53,7 +54,7 @@ class Gem::Commands::ReadCommand < Gem::Command
|
|
53
54
|
command_parts << path
|
54
55
|
success = system(*command_parts)
|
55
56
|
if !success
|
56
|
-
raise Gem::CommandLineError, "Could not run '#{
|
57
|
+
raise Gem::CommandLineError, "Could not run '#{rdoc_reader} #{path}', exit code: #{$?.exitstatus}"
|
57
58
|
end
|
58
59
|
end
|
59
60
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: open_gem
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Adam Sanderson
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-10-09 00:00:00 -07:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -40,7 +40,7 @@ files:
|
|
40
40
|
- lib/rubygems/commands/read_command.rb
|
41
41
|
- lib/rubygems_plugin.rb
|
42
42
|
- test/open_command_test.rb
|
43
|
-
has_rdoc:
|
43
|
+
has_rdoc: true
|
44
44
|
homepage: http://github.com/adamsanderson/open_gem
|
45
45
|
licenses: []
|
46
46
|
|
@@ -63,8 +63,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
63
63
|
version:
|
64
64
|
requirements: []
|
65
65
|
|
66
|
-
rubyforge_project:
|
67
|
-
rubygems_version: 1.3.
|
66
|
+
rubyforge_project: opengem
|
67
|
+
rubygems_version: 1.3.5
|
68
68
|
signing_key:
|
69
69
|
specification_version: 3
|
70
70
|
summary: Gem Command to easily open a ruby gem with the editor of your choice.
|