Wednesday, March 28, 2012

Re: buggy behavior when changing 'virtualedit' inside scripts?

Wow. Yeah, what are the chances someone would have stumbled on that bug? :)

- Aaron

On Wed, Mar 28, 2012 at 7:00 AM, Bram Moolenaar <Bram@moolenaar.net> wrote:
>
> Aaron Bohannon wrote:
>
>> I apologize.  I couldn't reproduce my problem either...because I
>> apparently left out a critical piece when condensing my much larger
>> example.  The real problem seems to also involve 'opfunc'.  If you
>> source the following function definitions and mappings, you will see
>> that -$ and +$ inexplicably behave differently.
>>
>> I tested it on Vim 7.3 (with patches 1-244,246-462) on OS X (10.7) and
>> Vim 7.3 (with patches 1-62) on Linux (kernel 2.6).  In both cases, I
>> ran vim in a terminal, using the command line "vim -u NONE -NX".
>>
>>  - Aaron
>>
>> ----
>> function Foo1(type)
>>   set ve=onemore
>>   silent execute "normal! `[v`]dix\e"
>>   set ve=
>> endfunction
>>
>> function Foo2(type)
>>   set ve=all
>>   silent execute "normal! `[v`]dix\e"
>>   set ve=
>> endfunction
>>
>> nmap - :set opfunc=Foo1<cr>g@
>> nmap + :set opfunc=Foo2<cr>g@
>> ----
>
> Still can't reproduce it, both -$ and +$ do the same thing.  Oh wait,
> the -X argument is essential.  Weird.
>
> OK, I tracked it down.  I'll send out a patch.  A workaround is to set
> 'virtualedit' to "all,onemore" instead of "all".
>
> --
> hundred-and-one symptoms of being an internet addict:
> 269. You receive an e-mail from the wife of a deceased president, offering
>     to send you twenty million dollar, and you are not even surprised.
>
>  /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
> ///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
> \\\  an exciting new programming language -- http://www.Zimbu.org        ///
>  \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

No comments: