class Reline::LineEditor
def ed_transpose_words(key)
def ed_transpose_words(key) ord_start, middle_start, right_word_start, after_start = Reline::Unicode.ed_transpose_words(@line, @byte_pointer) = @line.byteslice(0, left_word_start) ord = @line.byteslice(left_word_start, middle_start - left_word_start) = @line.byteslice(middle_start, right_word_start - middle_start) word = @line.byteslice(right_word_start, after_start - right_word_start) = @line.byteslice(after_start, @line.bytesize - after_start) if left_word.empty? or right_word.empty? = before + right_word + middle + left_word + after ead_to_left_word = before + right_word + middle + left_word pointer = from_head_to_left_word.bytesize r = calculate_width(from_head_to_left_word)