Sha256: f9efcdc91545ae9d42e0054b7c4dc3a3653933cf44154021c9eb7d9fb2ac3c29
Contents?: true
Size: 666 Bytes
Versions: 439
Compression:
Stored size: 666 Bytes
Contents
require 'active_support/core_ext/object/try' class String # Strips indentation in heredocs. # # For example in # # if options[:usage] # puts <<-USAGE.strip_heredoc # This command does such and such. # # Supported options are: # -h This message # ... # USAGE # end # # the user would see the usage message aligned against the left margin. # # Technically, it looks for the least indented line in the whole string, and removes # that amount of leading whitespace. def strip_heredoc indent = scan(/^[ \t]*(?=\S)/).min.try(:size) || 0 gsub(/^[ \t]{#{indent}}/, '') end end
Version data entries
439 entries across 390 versions & 37 rubygems