To add to this, I am surprised that ^C in macro recording is ignored.
Since the first ^P was taking a long time scanning all buffers, I
inserted a ^C after the first ^P to stop scanning (so the macro becomes,
cw^P^C^P^[), and insert the word that comes before the space, but this
got ignored while replaying. Don't know how Vim 6.3 behaves in this
respect, but it doesn't seem generic (like recording only ^C and
replaying it).

-- 
Thanks,
Hari

On Tue, 16 May 2006 at 6:51pm, Hari Krishna Dara wrote:

>
> Very often, I record changes that involves i_^P, and see an issue
> replaying them in Vim7. Say, you have text such as:
>
> aaa bbb ccc
> ddd eee fff
> so on
>
> Now, if I want to change all the 3rd columns to same as the first
> column, I usually do this by recording the cw^P^P^[ while on the 3rd
> column and replay it on the rest (the convenience might not be obvious
> in this example, but for a small set of lines, this approach many
> times, is way more convenient than createing a substitute command using
> sub-expressions).
>
> I see two issues with Vim7.
> - Even with vim started using -u NONE (and 'nocp' set), repeating this
>   macro works as if ^P is pressed only once (that is replaces with "eee"
>   instead of "ddd" on the second line). If I set 'completeopt' to
>   empty string, then it starts working again.
> - Happily, I came back to my regular vim session and tried again with
>   'completeopt' set to "", but it still behaves as if only one ^P is
>   pressed. Didn't know what other setting could have made this
>   difference, but I observe another issue here. In my Vim 6.3, pressing
>   ^P after a space would immediately return the word before the space,
>   and another ^P will be as quick, unless there are no more words in
>   that buffer. But in Vim 7, this results in scanning all the open
>   buffers (causing unnecessary delays). When 'completeopt' is empty,
>   shouldn't it just complete the word in front of the space? Is this
>   probably causing the second ^P from getting ignored? To validate this,
>   I repeated my earlier experiment (-u NONE), but while several other
>   buffers are also loaded, and reproduced the same problem. Setting
>   'completeopt' to "" will still not make the macro to work (which it
>   did, when there were no other buffers).
>
> To summarize, I think there are two issues compared to Vim 6.3:
> - i_Ctrl-P in macro recording is broken.
> - i_Ctrl-P is scanning too much, and is too slow.
>
>

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

Reply via email to