[ruby/reline] Editing to initial content is not just cursor moving
https://github.com/ruby/reline/commit/0a4f175b0a
This commit is contained in:
parent
b5ef4ad312
commit
3bf7b999e5
@ -933,6 +933,7 @@ class Reline::LineEditor
|
|||||||
finish
|
finish
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
old_line = @line.dup
|
||||||
@first_char = false
|
@first_char = false
|
||||||
completion_occurs = false
|
completion_occurs = false
|
||||||
if @config.editing_mode_is?(:emacs, :vi_insert) and key.char == "\C-i".ord
|
if @config.editing_mode_is?(:emacs, :vi_insert) and key.char == "\C-i".ord
|
||||||
@ -964,7 +965,7 @@ class Reline::LineEditor
|
|||||||
if not Reline::IOGate.in_pasting? and @just_cursor_moving.nil?
|
if not Reline::IOGate.in_pasting? and @just_cursor_moving.nil?
|
||||||
if @previous_line_index and @buffer_of_lines[@previous_line_index] == @line
|
if @previous_line_index and @buffer_of_lines[@previous_line_index] == @line
|
||||||
@just_cursor_moving = true
|
@just_cursor_moving = true
|
||||||
elsif @previous_line_index.nil? and @buffer_of_lines[@line_index] == @line
|
elsif @previous_line_index.nil? and @buffer_of_lines[@line_index] == @line and old_line == @line
|
||||||
@just_cursor_moving = true
|
@just_cursor_moving = true
|
||||||
else
|
else
|
||||||
@just_cursor_moving = false
|
@just_cursor_moving = false
|
||||||
|
@ -441,6 +441,17 @@ begin
|
|||||||
EOC
|
EOC
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_backspace_until_returns_to_initial
|
||||||
|
start_terminal(5, 30, %W{ruby -I#{@pwd}/lib #{@pwd}/bin/multiline_repl}, startup_message: 'Multiline REPL.')
|
||||||
|
write("ABC")
|
||||||
|
write("\C-h\C-h\C-h")
|
||||||
|
close
|
||||||
|
assert_screen(<<~EOC)
|
||||||
|
Multiline REPL.
|
||||||
|
prompt>
|
||||||
|
EOC
|
||||||
|
end
|
||||||
|
|
||||||
private def write_inputrc(content)
|
private def write_inputrc(content)
|
||||||
File.open(@inputrc_file, 'w') do |f|
|
File.open(@inputrc_file, 'w') do |f|
|
||||||
f.write content
|
f.write content
|
||||||
|
Loading…
x
Reference in New Issue
Block a user