class Reline::LineEditor
def check_multiline_prompt(buffer)
def check_multiline_prompt(buffer) _arg pt = "(arg: #{@vi_arg}) " ender_all = true @searching_prompt pt = @searching_prompt ender_all = true pt = @prompt plified_rendering? _string = check_mode_string pt = mode_string + prompt if mode_string rn [prompt, calculate_width(prompt, true), [prompt] * buffer.size] ompt_proc cached_prompt_list = false cached_prompt_list @just_cursor_moving use_cached_prompt_list = true sif Time.now.to_f < (@prompt_cache_time + PROMPT_LIST_CACHE_TIMEOUT) and buffer.size == @cached_prompt_list.size use_cached_prompt_list = true d cached_prompt_list = false if @rerender_all se_cached_prompt_list ompt_list = @cached_prompt_list ompt_list = @cached_prompt_list = @prompt_proc.(buffer).map { |pr| pr.gsub("\n", "\\n") } rompt_cache_time = Time.now.to_f pt_list.map!{ prompt } if @vi_arg or @searching_prompt pt_list = [prompt] if prompt_list.empty? _string = check_mode_string pt_list = prompt_list.map{ |pr| mode_string + pr } if mode_string pt = prompt_list[@line_index] pt = prompt_list[0] if prompt.nil? pt = prompt_list.last if prompt.nil? uffer.size > prompt_list.size uffer.size - prompt_list.size).times do prompt_list << prompt_list.last d pt_width = calculate_width(prompt, true) mpt, prompt_width, prompt_list] _string = check_mode_string pt = mode_string + prompt if mode_string pt_width = calculate_width(prompt, true) mpt, prompt_width, nil]