summaryrefslogtreecommitdiff
path: root/test/normal/repeat-insert
diff options
context:
space:
mode:
authorTobias Pisani <topisani@hamsterpoison.com>2024-02-23 16:53:30 +0100
committerTobias Pisani <topisani@hamsterpoison.com>2024-02-24 05:18:56 +0100
commitdbe8528231f61717210f796c93c85b852b760b33 (patch)
treea89cf707517da5c1b57710927d5acc889f2dcab8 /test/normal/repeat-insert
parent2d9c84e363d499eb699540c53d9f912f446a4d30 (diff)
Make insert repeat (.) more consistent
Insert repeat will now only record non-synthesized keys, and when played back execute mappings as well. Constructing some tests, and with the specific goal of fixing https://github.com/alexherbo2/auto-pairs.kak/issues/38, this appeared to be the best approach. Other options could be evaluating the maps only when recording, but this gave other issues (see tests/normal/repeat-insert/repeat-insert-mapped) At this point, repeat-insert may be essentially just a hardcoded macro, at least I haven't identified the difference. If this really is the case, it may make sense to give it a dedicated register, and implement it as a macro. Fixes #3600
Diffstat (limited to 'test/normal/repeat-insert')
-rw-r--r--test/normal/repeat-insert/repeat-insert-hooks/cmd1
-rw-r--r--test/normal/repeat-insert/repeat-insert-hooks/out1
-rw-r--r--test/normal/repeat-insert/repeat-insert-mapped/cmd1
-rw-r--r--test/normal/repeat-insert/repeat-insert-mapped/out1
-rw-r--r--test/normal/repeat-insert/repeat-insert-mapped/rc1
-rw-r--r--test/normal/repeat-insert/repeat-insert/cmd (renamed from test/normal/repeat-insert/cmd)0
-rw-r--r--test/normal/repeat-insert/repeat-insert/out (renamed from test/normal/repeat-insert/out)0
-rw-r--r--test/normal/repeat-insert/repeat-normal-exec/cmd1
-rw-r--r--test/normal/repeat-insert/repeat-normal-exec/out1
-rw-r--r--test/normal/repeat-insert/repeat-normal-movement/cmd1
-rw-r--r--test/normal/repeat-insert/repeat-normal-movement/out1
11 files changed, 9 insertions, 0 deletions
diff --git a/test/normal/repeat-insert/repeat-insert-hooks/cmd b/test/normal/repeat-insert/repeat-insert-hooks/cmd
new file mode 100644
index 00000000..a72627ce
--- /dev/null
+++ b/test/normal/repeat-insert/repeat-insert-hooks/cmd
@@ -0,0 +1 @@
+:hook -group h g InsertChar f %{exec FINSERTED}<ret>ifoo<esc>.\.\ifoo<esc>.
diff --git a/test/normal/repeat-insert/repeat-insert-hooks/out b/test/normal/repeat-insert/repeat-insert-hooks/out
new file mode 100644
index 00000000..7f03fc89
--- /dev/null
+++ b/test/normal/repeat-insert/repeat-insert-hooks/out
@@ -0,0 +1 @@
+fFINSERTEDoofFINSERTEDoofoofoofoo
diff --git a/test/normal/repeat-insert/repeat-insert-mapped/cmd b/test/normal/repeat-insert/repeat-insert-mapped/cmd
new file mode 100644
index 00000000..d29da756
--- /dev/null
+++ b/test/normal/repeat-insert/repeat-insert-mapped/cmd
@@ -0,0 +1 @@
+ixyz<esc>.
diff --git a/test/normal/repeat-insert/repeat-insert-mapped/out b/test/normal/repeat-insert/repeat-insert-mapped/out
new file mode 100644
index 00000000..37718976
--- /dev/null
+++ b/test/normal/repeat-insert/repeat-insert-mapped/out
@@ -0,0 +1 @@
+zzxx
diff --git a/test/normal/repeat-insert/repeat-insert-mapped/rc b/test/normal/repeat-insert/repeat-insert-mapped/rc
new file mode 100644
index 00000000..6c1d2d04
--- /dev/null
+++ b/test/normal/repeat-insert/repeat-insert-mapped/rc
@@ -0,0 +1 @@
+map global insert y '<a-;>gh'
diff --git a/test/normal/repeat-insert/cmd b/test/normal/repeat-insert/repeat-insert/cmd
index 607416f6..607416f6 100644
--- a/test/normal/repeat-insert/cmd
+++ b/test/normal/repeat-insert/repeat-insert/cmd
diff --git a/test/normal/repeat-insert/out b/test/normal/repeat-insert/repeat-insert/out
index 55b5f1fc..55b5f1fc 100644
--- a/test/normal/repeat-insert/out
+++ b/test/normal/repeat-insert/repeat-insert/out
diff --git a/test/normal/repeat-insert/repeat-normal-exec/cmd b/test/normal/repeat-insert/repeat-normal-exec/cmd
new file mode 100644
index 00000000..d077660b
--- /dev/null
+++ b/test/normal/repeat-insert/repeat-normal-exec/cmd
@@ -0,0 +1 @@
+i<a-;>:execute-keys foo<ret><esc>.
diff --git a/test/normal/repeat-insert/repeat-normal-exec/out b/test/normal/repeat-insert/repeat-normal-exec/out
new file mode 100644
index 00000000..55b5f1fc
--- /dev/null
+++ b/test/normal/repeat-insert/repeat-normal-exec/out
@@ -0,0 +1 @@
+foofoo
diff --git a/test/normal/repeat-insert/repeat-normal-movement/cmd b/test/normal/repeat-insert/repeat-normal-movement/cmd
new file mode 100644
index 00000000..5a536286
--- /dev/null
+++ b/test/normal/repeat-insert/repeat-normal-movement/cmd
@@ -0,0 +1 @@
+ifoo<a-;>ghbar<esc>.
diff --git a/test/normal/repeat-insert/repeat-normal-movement/out b/test/normal/repeat-insert/repeat-normal-movement/out
new file mode 100644
index 00000000..8faa240e
--- /dev/null
+++ b/test/normal/repeat-insert/repeat-normal-movement/out
@@ -0,0 +1 @@
+barbarfoofoo