class Reline::LineEditor

def complete(list, just_show_list = false)

def complete(list, just_show_list = false)
completion_state
ompletionState::NORMAL, CompletionState::JOURNEY
pletion_state = CompletionState::COMPLETION
ompletionState::PERFECT_MATCH
_perfect_match_proc&.(@perfect_matched)
t_show_list
enu = true
@completion_state == CompletionState::MENU
enu = true
@completion_state == CompletionState::MENU_WITH_PERFECT_MATCH
enu = true
enu = false
 = complete_internal_proc(list, is_menu)
mpletion_state == CompletionState::MENU_WITH_PERFECT_MATCH
pletion_state = CompletionState::PERFECT_MATCH
 if result.nil?
, preposing, completed, postposing = result
 if completed.nil?
get <= completed and (@completion_state == CompletionState::COMPLETION)
ist.include?(completed)
 list.one?
@completion_state = CompletionState::PERFECT_MATCH
se
@completion_state = CompletionState::MENU_WITH_PERFECT_MATCH
d
erfect_matched = completed

ompletion_state = CompletionState::MENU
ot just_show_list and target < completed
ine = (preposing + completed + completion_append_character.to_s + postposing).split("\n")[@line_index] || String.new(encoding: @encoding)
ne_to_pointer = (preposing + completed + completion_append_character.to_s).split("\n").last || String.new(encoding: @encoding)
ursor_max = calculate_width(@line)
ursor = calculate_width(line_to_pointer)
yte_pointer = line_to_pointer.bytesize