aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/utils.rb
diff options
context:
space:
mode:
authorMike McQuaid2017-04-24 08:49:11 +0100
committerMike McQuaid2017-04-24 08:49:11 +0100
commit3e40059f8d6cace0a2b8fa0c98e8f05bf13a3811 (patch)
tree7825e3d651caabc1b7f9f60855b545e7a1a84187 /Library/Homebrew/utils.rb
parentcfe2c3c9007ae919267eb0767ef84c27748829c4 (diff)
downloadbrew-3e40059f8d6cace0a2b8fa0c98e8f05bf13a3811.tar.bz2
utils: make which_editor handle editor args.
Handle cases like e.g. `EDITOR="subl -w"`.
Diffstat (limited to 'Library/Homebrew/utils.rb')
-rw-r--r--Library/Homebrew/utils.rb13
1 files changed, 11 insertions, 2 deletions
diff --git a/Library/Homebrew/utils.rb b/Library/Homebrew/utils.rb
index 82bc38895..5e0ad5916 100644
--- a/Library/Homebrew/utils.rb
+++ b/Library/Homebrew/utils.rb
@@ -321,7 +321,16 @@ end
def which_editor
editor = ENV.values_at("HOMEBREW_EDITOR", "VISUAL").compact.reject(&:empty?).first
- return which(editor, ENV["HOMEBREW_PATH"]) unless editor.nil?
+ if editor
+ editor_name, _, editor_args = editor.partition " "
+ editor_path = which(editor_name, ENV["HOMEBREW_PATH"])
+ editor = if editor_args.to_s.empty?
+ editor_path.to_s
+ else
+ "#{editor_path} #{editor_args}"
+ end
+ return editor
+ end
# Find Textmate
editor = which("mate", ENV["HOMEBREW_PATH"])
@@ -338,7 +347,7 @@ def which_editor
or HOMEBREW_EDITOR to your preferred text editor.
EOS
- editor
+ editor.to_s
end
def exec_editor(*args)