Vim 7.2.1-79 WinXP SP3 The YankRing uses expression maps and omaps.
In order to handle the f, F, t, T (and some others) it has to prompt the user for the following key: df_ (delete forward to the _). When hitting . (to repeat) an action, the user does not want to be prompted again for the same action. So in this case, the YR temporarily removes the mapping, executes the command and re-adds it. Another case where this is necessary has been found and it deals with recording macros. qa df_ q @a When the df is entered, the YR once again prompts for the character (_). I have handled this by creating a normal map for @, and prompt the user for the register to run the macro from. This is working well so far, it can also handle counts 4...@a. I have run into a snag where I hope someone can help. If I user does this: 1,3normal! @a Everything works due to the use of the ! which prevents maps from firing. But if the user does: 1,3normal @a Things don't work since my mapping does not get the user input for which register to run the macro from. What I was hoping was there was some way from within an expression function to see the full normal command. Kind of like v:operator which allows me to see what came before the omap, but not after. So in my expression function, I could check if the user already entered the "a" and use it. Any suggestions? Thanks, Dave --~--~---------~--~----~------------~-------~--~----~ You received this message from the "vim_use" maillist. For more information, visit http://www.vim.org/maillist.php -~----------~----~----~----~------~----~------~--~---