aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/terminal.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2024-09-22 06:02:48 +0800
committerGitHub <noreply@github.com>2024-09-22 06:02:48 +0800
commite697c1b43dfbeab132fee4149157f7abd08c51a0 (patch)
tree4fb363d573f9606f7314799e03c6ba9e0f5fd0e1 /src/nvim/terminal.c
parent1d815acd78e5b961302985b80d2b625947902386 (diff)
downloadrneovim-e697c1b43dfbeab132fee4149157f7abd08c51a0.tar.gz
rneovim-e697c1b43dfbeab132fee4149157f7abd08c51a0.tar.bz2
rneovim-e697c1b43dfbeab132fee4149157f7abd08c51a0.zip
fix(paste): improve repeating of pasted text (#30438)
- Fixes 'autoindent' being applied during redo. - Makes redoing a large paste significantly faster. - Stores pasted text in the register being recorded. Fix #28561
Diffstat (limited to 'src/nvim/terminal.c')
-rw-r--r--src/nvim/terminal.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c
index ea3617098b..b916660024 100644
--- a/src/nvim/terminal.c
+++ b/src/nvim/terminal.c
@@ -748,6 +748,10 @@ static int terminal_execute(VimState *state, int key)
}
break;
+ case K_PASTE_START:
+ paste_repeat(1);
+ break;
+
case K_EVENT:
// We cannot let an event free the terminal yet. It is still needed.
s->term->refcount++;