home/test/normal
Johannes Altmanninger 8427379a5d Tweak selection-undo interaction with WinDisplay hooks
Each selection undo operation is surrounded by pair of
begin_edition()/end_edition() calls.
The original reason for adding these was that in one of my preliminary
versions, a WinDisplay hook could break an undo chain, even if the
hook did not affect selections at all. This has since been fixed.

By surrounding the undo with begin_edition()/end_edition(), try to
ensure that any selection modification that happens in a WinDisplay
hook would not break the undo chain. Essentially this means that,
after using <c-h> to undo a buffer change, this was meant to
make sure that <c-k> could redo that buffer change.

However, it turns out this actually doesn't work.  The attached test
case triggers an assertion.  As described in the first paragraph,
the only real-world motivation for this is gone, so let's simplify
the behavior.
The assertion fix means that we can test the next commit better.
2022-12-27 18:24:55 +01:00
..
align Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
align-tab Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
all test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
append test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
append-at-eol Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
change Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
clear-selections test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
codepoint-width test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
concat-paste-line Expand env vars as list of strings 2020-03-02 20:53:28 +11:00
convert-spaces-to-tabs Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
convert-tabs-to-spaces Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
copy-sel-above test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
copy-sel-below test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
copy-sel-below-multi-line test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
deindent Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
delete Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
extend-lines Make x just select the full lines 2022-07-05 08:43:40 +10:00
extra-word-chars test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
facedesc-invalid-syntax Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
find-char-backward test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
find-char-backward-extending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
find-char-forward test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
find-char-forward-extending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
goto test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
goto-extending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
indent Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
insert Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
insert-at-line-start Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
insert-replace Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
jump Add count support to jumps (<c-o> and <c-i>). Add jumps tests 2017-11-13 08:38:43 +01:00
keep-cmd Use grep -E as OpenBSD grep does not like | in regexp otherwise 2021-12-14 15:27:27 +05:30
keep-cmd-reg Use grep -E as OpenBSD grep does not like | in regexp otherwise 2021-12-14 15:27:27 +05:30
lower-case test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
match-char test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
move test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
next-big-word test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
next-big-word-extending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
next-match test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
next-match-appending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
next-word test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
next-word-extending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
object Support count argument for [s and ]s 2020-08-02 11:30:14 +02:00
open-above Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
open-below Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
open-multiple-above Insert: Do not move end of line on open line (o/O) 2018-03-04 10:32:21 +11:00
open-multiple-below Insert: Do not move end of line on open line (o/O) 2018-03-04 10:32:21 +11:00
paste-after Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
paste-all-after Add tests for <a-p>/<a-P>/<a-R> 2021-09-30 20:12:48 +10:00
paste-all-before Add tests for <a-p>/<a-P>/<a-R> 2021-09-30 20:12:48 +10:00
paste-all-replace Add tests for <a-p>/<a-P>/<a-R> 2021-09-30 20:12:48 +10:00
paste-before Remove avoidance of end of lines 2018-02-25 00:05:05 +11:00
pipe Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
pipe-reg Support explicit register for :, |, ! and $ commands 2020-10-20 21:56:51 +11:00
pipe-to Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
pipe-to-reg Support explicit register for :, |, ! and $ commands 2020-10-20 21:56:51 +11:00
previous-big-word test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
previous-big-word-extending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
previous-word test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
previous-word-extending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
previous-word-no-underscore test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
record-macro Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
redo Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
reload Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
repeat-insert Change a on end of line behaviour to be consistent 2018-07-05 08:00:14 +10:00
repeat-select Expand env vars as list of strings 2020-03-02 20:53:28 +11:00
replace Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
replace-lines Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
replay-complex-insert Add test case for replaying insert with normal mode commands 2017-11-08 14:49:19 +08:00
replay-macro Change a on end of line behaviour to be consistent 2018-07-05 08:00:14 +10:00
restore-selections test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
rotate Move user mappings to <space> and keep/remove selection to , 2022-07-05 08:43:40 +10:00
rotate-content Move rotate selection and rotate selection contents to ) and <a-)> 2018-03-25 11:39:26 +11:00
save-selections test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
search test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
search-extending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
search-reverse test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
search-reverse-extending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
search-reverse-rightmost test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
select test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
select-horizontal-whitespace Add test for selecting horizontal whitespace 2021-02-25 11:03:18 -05:00
select-line test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
selection-undo Tweak selection-undo interaction with WinDisplay hooks 2022-12-27 18:24:55 +01:00
split test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
split-at-begin test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
split-multiple-lines test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
switch-case test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
to-char-backward test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
to-char-backward-extending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
to-char-forward test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
to-char-forward-extending test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
trim test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
trim-drop-empty test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
trim-lines Make x just select the full lines 2022-07-05 08:43:40 +10:00
undo Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
undo-after-replace-lines Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00
upper-case test: Allow expect-style UI tests, testing any var 2019-10-13 14:57:24 -04:00
user-modes Remove <scope> from user-modes commands 2018-03-02 09:28:27 +01:00
yank Rename 'unit' test directory to 'normal' as they are the normal mode tests 2017-06-09 10:48:37 +01:00