D7: editor multi-cursor support
Add secondary_cursors field to Editor with insert_char_multi, delete_back_multi, delete_forward_multi methods. Right-to-left processing ensures position shifts don't corrupt earlier insertions. 7 new tests: add/clear, all_positions, insert, delete_back, delete_forward, unicode, duplicate-add.
This commit is contained in:
+41
@@ -0,0 +1,41 @@
|
||||
#!/bin/sh
|
||||
# Test --new-file (-N) and --unidirectional-new-file.
|
||||
|
||||
. "${srcdir=.}/init.sh"; path_prepend_ ../src
|
||||
|
||||
fail=0
|
||||
|
||||
echo a > a || fail=1
|
||||
|
||||
echo '0a1
|
||||
> a' > exp || fail=1
|
||||
|
||||
returns_ 1 diff -N - a <&- > out || fail=1
|
||||
compare exp out || fail=1
|
||||
|
||||
returns_ 1 diff --unidirectional-new-file - a <&- > out || fail=1
|
||||
compare exp out || fail=1
|
||||
|
||||
returns_ 1 diff -N b - < a > out || fail=1
|
||||
compare exp out || fail=1
|
||||
|
||||
returns_ 1 diff --unidirectional-new-file b - < a > out || fail=1
|
||||
compare exp out || fail=1
|
||||
|
||||
echo '1d0
|
||||
< a' > exp || fail=1
|
||||
|
||||
returns_ 1 diff -N a - <&- > out || fail=1
|
||||
compare exp out || fail=1
|
||||
|
||||
# With closed standard input, require an exit status of 2
|
||||
# and empty stdout.
|
||||
returns_ 2 diff --unidirectional-new-file a - <&- > out || fail=1
|
||||
compare /dev/null out || fail=1
|
||||
|
||||
returns_ 1 diff -N - b < a > out || fail=1
|
||||
compare exp out || fail=1
|
||||
|
||||
returns_ 2 diff --unidirectional-new-file - b < a > out || fail=1
|
||||
|
||||
Exit $fail
|
||||
Reference in New Issue
Block a user