Method: Reline::Core#readmultiline

Defined in:
lib/reline.rb

#readmultiline(prompt = '', add_hist = false, &confirm_multiline_termination) ⇒ Object



166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
# File 'lib/reline.rb', line 166

def readmultiline(prompt = '', add_hist = false, &confirm_multiline_termination)
  unless confirm_multiline_termination
    raise ArgumentError.new('#readmultiline needs block to confirm multiline termination')
  end
  inner_readline(prompt, add_hist, true, &confirm_multiline_termination)

  whole_buffer = line_editor.whole_buffer.dup
  whole_buffer.taint if RUBY_VERSION < '2.7'
  if add_hist and whole_buffer and whole_buffer.chomp.size > 0
    Reline::HISTORY << whole_buffer
  end

  line_editor.reset_line if line_editor.whole_buffer.nil?
  whole_buffer
end