class Reline::LineEditor

def rerender_changed_current_line

def rerender_changed_current_line
nes = whole_lines
, prompt_width, prompt_list = check_multiline_prompt(new_lines)
ight = calculate_height_by_lines(new_lines, prompt_list || prompt)
 all_height - @highest_in_all
ursor_down(@highest_in_all - @first_line_started_from - @started_from - 1)
f > 0
ll_down(diff)
_cursor_up(all_height - 1)
diff < 0
ff).times do
line::IOGate.move_cursor_column(0)
line::IOGate.erase_after_cursor
ve_cursor_up(1)
_cursor_up(all_height - 1)
_cursor_up(all_height - 1)
st_in_all = all_height
 render_whole_lines(new_lines, prompt_list || prompt, prompt_width)
ursor_up(back)
evious_line_index
fer_of_lines[@previous_line_index] = @line
e = @buffer_of_lines[@line_index]
_line_started_from =
line_index.zero?

lculate_height_by_lines(@buffer_of_lines[0..(@line_index - 1)], prompt_list || prompt)
ompt_proc
pt = prompt_list[@line_index]
pt_width = calculate_width(prompt, true)
ursor_down(@first_line_started_from)
ate_nearest_cursor
ed_from = calculate_height_by_width(prompt_width + @cursor) - 1
ursor_down(@started_from)
::IOGate.move_cursor_column((prompt_width + @cursor) % @screen_size.last)
st_in_this = calculate_height_by_width(prompt_width + @cursor_max)