String.undent for prettier HEREDOCs

This commit is contained in:
Max Howell 2010-02-27 17:26:27 +00:00
parent 2652880bd9
commit 799dd7108e
3 changed files with 41 additions and 26 deletions

View File

@ -61,36 +61,35 @@ module HomebrewArgvExtension
return false
end
def usage
<<-EOS
Usage: brew command [formula] ...
Usage: brew [--prefix] [--cache] [--version|-v]
Usage: brew [--verbose|-v]
def usage; <<-EOS.undent
Usage: brew command [formula] ...
Usage: brew [--prefix] [--cache] [--version|-v]
Usage: brew [--verbose|-v]
Principle Commands:
install formula ... [--ignore-dependencies] [--HEAD|-H]
list [--unbrewed] [formula] ...
search [/regex/] [substring]
uninstall formula ...
update
Principle Commands:
install formula ... [--ignore-dependencies] [--HEAD|-H]
list [--unbrewed] [formula] ...
search [/regex/] [substring]
uninstall formula ...
update
Other Commands:
cleanup [formula]
home formula ...
info [formula] [--github]
link formula ...
outdated
prune
unlink formula ...
Other Commands:
cleanup [formula]
home formula ...
info [formula] [--github]
link formula ...
outdated
prune
unlink formula ...
Commands useful when contributing:
create URL
edit [formula]
log formula
install formula [--debug|-d] [--interactive|-i] [--verbose|-v]
Commands useful when contributing:
create URL
edit [formula]
log formula
install formula [--debug|-d] [--interactive|-i] [--verbose|-v]
To visit the Homebrew homepage type:
brew home
To visit the Homebrew homepage type:
brew home
EOS
end

View File

@ -0,0 +1,15 @@
class String
def undent
gsub /^.{#{slice(/^ +/).length}}/, ''
end
end
if __FILE__ == $0
undented = <<-EOS.undent
hi
....my friend over
there
EOS
assert undented == "hi\nmy friend over\nthere\n"
end

View File

@ -1,5 +1,6 @@
require 'extend/pathname'
require 'extend/ARGV'
require 'extend/string'
require 'utils'
ARGV.extend(HomebrewArgvExtension)