patch 9.0.0387: repeat <ScriptCmd> mapping doesn't use right script context
Problem: repeating a <ScriptCmd> mapping does not use the right script
context.
Solution: When using a mapping put <SID>{sid}; in the redo buffer.
(closes #11049)
diff --git a/src/keymap.h b/src/keymap.h
index 6350772..910df7d 100644
--- a/src/keymap.h
+++ b/src/keymap.h
@@ -277,6 +277,7 @@
, KE_COMMAND = 103 // <Cmd> special key
, KE_SCRIPT_COMMAND = 104 // <ScriptCmd> special key
, KE_S_BS = 105 // shift + <BS>
+ , KE_SID = 106 // <SID> special key, followed by {nr};
};
/*
@@ -483,6 +484,7 @@
#define K_COMMAND TERMCAP2KEY(KS_EXTRA, KE_COMMAND)
#define K_SCRIPT_COMMAND TERMCAP2KEY(KS_EXTRA, KE_SCRIPT_COMMAND)
+#define K_SID TERMCAP2KEY(KS_EXTRA, KE_SID)
// Bits for modifier mask
// 0x01 cannot be used, because the modifier must be 0x02 or higher