Class: Ned::Join
Instance Method Summary collapse
Methods inherited from Command
config, description, #execute, #execute_all, help, #initialize, #load_lines, long_name, option_parser, #options, #peek, require_all, #require_all, #require_all?, require_all?, short_name
Constructor Details
This class inherits a constructor from Ned::Command
Instance Method Details
#execute_internal(lines) ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/ned/commands/join.rb', line 23 def execute_internal(lines) if lines[-1] && lines[-1][-1] == "\n" trailing_newline = "\n" lines.each { |line| line.slice!(-1) } else trailing_newline = '' lines[0..-2].each { |line| line.slice!(-1) } end if @has_newline lines.join(@delimiter).insert(-1, trailing_newline).split(/(?<=\n)/) else [lines.join(@delimiter).insert(-1, trailing_newline)] end end |
#parse(args) ⇒ Object
16 17 18 19 20 21 |
# File 'lib/ned/commands/join.rb', line 16 def parse(args) super @delimiter = args.shift || '' @has_newline = @delimiter.index("\n") != nil end |