On Tue, Mar 3, 2009 at 2:25 PM, Andy Wokula <[email protected]> wrote:
>
> avid Fishburn schrieb:
>> Unusual situation here.
>>
>> Vim 7.2.1-127 WinXP SP3
>>
>> :map @
>> n  @  MapsExpression("<SID>", "@", "1")
>>
>> Now I perform a recorded action to delete a word:
>> qadwq
>>
>> Add a breakpoint to my function:
>> :breakadd func MapsExpres*
>>
>> :normal @a
>> This breaks inside my function as expected, good.
>
> .... caused by the above mapping for "@"?
> What happens if you do
>    :normal @aFoo
>
>> :normal! @a
>> This also breaks inside my function, bad.
>
> .... caused by the "w" in the recorded "dw", I suppose.

Yes, certainly a possibility, will investigate.
...
> What about feedkeys(@a, "n")?

This seems to have run into a inclusive vs exclusive behaviour I was
trying to avoid by using expression maps.


> What is the final goal of your research?

For the YankRing plugin, using @@ (or @a..) would not work.
I have corrected that now, but find that:
:1,2normal @a
Does not work and was trying to find some work arounds.  The first
problem is it hits the @ and the expression map takes over.  It sees
the user has entered a @ and prompts them for which register to use,
even though the register has already been provided.

When I call getchar() it doesn't pull the "a" from the command line
but expects new input.

This is the real problem.



:1,2normal! @a
Still double prompted me, but it would be a slight limitation if I
cannot remove it completely.  I guess I am not cleaning up all my maps
correctly.  So thanks for pointing me in a direction.


Dave

--~--~---------~--~----~------------~-------~--~----~
You received this message from the "vim_use" maillist.
For more information, visit http://www.vim.org/maillist.php
-~----------~----~----~----~------~----~------~--~---

Reply via email to