I have mappings to copy/cut/paste to/from register:
nnoremap <c-r><c-c>a "ayy -- copy current line into register a nnoremap <c-r><c-x>a "add -- cut current line into register a nnoremap <c-r><c-v>a "ap -- paste from register a
and same for all other registers and modes. I also have usual mappings for c-c/x/v to act as copy, cut and paste to/from unnamed register. Now if I press c-r c-v a quickly, then everything works, but if I press c-r c-v and pause to think which register to use, vim decides to act on c-v instead (performs paste from unnamed register).
Is there a way to make such mappings work without conflict in vim? So that when I press c-r c-v it won't timeout and become c-v.
In standard keymap I think this works via some "waiting-for-register-letter-mode". For instance if I use c-r in command line mode vim displays " and waits for a register letter indefinitely, same in normal mode when pressing ".
EDIT: vim help mentions that remapping c-c in normal mode breaks ability to interrupt scripts. True, but the question still applies when using something else like c-y.