From b358e634440e830856427bc5567eb51d48a378cf Mon Sep 17 00:00:00 2001
From: chylex <contact@chylex.com>
Date: Fri, 17 Nov 2023 07:32:27 +0100
Subject: [PATCH] Respect count with <Action> mappings

---
 .../main/kotlin/com/maddyhome/idea/vim/key/MappingInfo.kt   | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/MappingInfo.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/MappingInfo.kt
index c964af177..0fc368958 100644
--- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/MappingInfo.kt
+++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/key/MappingInfo.kt
@@ -260,7 +260,11 @@ class ToActionMappingInfo(
 
   override fun execute(editor: VimEditor, context: ExecutionContext, keyState: KeyHandlerState) {
     LOG.debug("Executing 'ToAction' mapping...")
-    injector.actionExecutor.executeAction(editor, name = action, context = context)
+    val commandBuilder = KeyHandler.getInstance().keyHandlerState.commandBuilder
+    for (i in 0 until commandBuilder.calculateCount0Snapshot().coerceAtLeast(1)) {
+      injector.actionExecutor.executeAction(editor, name = action, context = context)
+    }
+    commandBuilder.resetCount()
   }
 
   companion object {