# File rubygems/commands/open_command.rb, line 11
def initialize
super 'open', 'Open gem sources in editor'
add_option('-e', '--editor EDITOR', String,
"Opens gem sources in EDITOR") do |editor, options|
options[:editor] = editor || get_env_editor
end
add_option('-v', '--version VERSION', String,
"Opens specific gem version") do |version|
options[:version] = version
end
end
# File rubygems/commands/open_command.rb, line 52
def execute
@version = options[:version] || Gem::Requirement.default
@editor = options[:editor] || get_env_editor
found = open_gem(get_one_gem_name)
terminate_interaction 1 unless found
end
# File rubygems/commands/open_command.rb, line 45
def get_env_editor
ENV['GEM_EDITOR'] ||
ENV['VISUAL'] ||
ENV['EDITOR'] ||
'vi'
end
# File rubygems/commands/open_command.rb, line 68
def open_editor path
Dir.chdir(path) do
system(*@editor.split(/\s+/) + [path])
end
end