Vim 7.0 (1-109 patches) completion bug.

2006-10-04 Thread Igor Prischepoff
Hi, i think i have found a bug in vim 7.0
Patch level 1-109. 
Windows version +perl +python (i don't think this matters in this case)

here is how to reproduce:
gvim -u NONE -U NONE
:set complete-=t   " don't want complete from tags file - it's not
important, just to switch off message
:set complete+=longest " that's important
i "now we in insert mode

one two
o:t"now trying to complete second time -  no completion, nothing"
i.e. i've got resulting text in buffer like this:

one two
one:t

and no 'two' on second C-N when trying to complete 'two' and message "Back
at original"

(First completion works as expected, but second didn't shown and not
complete at all)
if remove 'longest' from 'complete' then everything works as expected.

Can you reproduce that bug? 
Or it's intended behaviour?

---

[EMAIL PROTECTED]




Re: Patch 7.0.111

2006-10-04 Thread Hari Krishna Dara

On Wed, 4 Oct 2006 at 10:30pm, Bram Moolenaar wrote:

>
> Fan Decheng wrote:
>
> > Bram Moolenaar wrote:
> > > Patch 7.0.111
> > > Problem:The gzip plugin can't handle filenames with single quotes.
> > > Solution:   Add and use the shellescape() function. (partly by Alexey
Froloff)
> > > Files:  runtime/autoload/gzip.vim, runtime/doc/eval.txt, src/eval.c,
> > > src/mbyte.c, src/misc2.c, src/proto/misc2.pro
> [...]
> > I wonder whether it is possible to use execv() instead of escaping the
> > command and then sending it to the shell. How do you think?
>
> Vim doesn't have an execv() function.  Implementing this properly for
> all systems isn't that simple.  At least you would need to take care of
> $PATH.

How about using the underlying execv() where it is supported, and when
it is not support just behave like system() does? This approach will
probably cover more than 95% of the vim users. The problems that exist
with using system() and different shells and environments is a huge
usability issue (this will also avoid the minimized window on windows
that most people feel bothered), and it might even make big difference
in the performance when external commands are executed often (like
using external commands to find matches for popup completion, everytime
a character is typed).

One caceat is that currently, if the external command execution takes a
lot of time, you want to terminate it, you can un-minimize the window
and kill it. If this window is avoided, Vim should still provide a means
to kill it (like doing an explicit kill() when user presses ^C while
waiting for the process).

-- 
Thanks,
Hari

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


Re: Gvim closing unexpectedly

2006-10-04 Thread Steve Hall

[cross-posting to connect threads]

On Thu, 2006-10-05 at 10:04 +1000, Robbie Gates wrote:
> Hi All,
>
> i was having problems with gvim hanging when i tried to edit my
> vimrc.
>
> After a bit of sleuthing, i tracked it down to has("tcl") hanging
> (called from syntax/vim.vim).

It appears your post and one on the vim list are related:

  http://tech.groups.yahoo.com/group/vim/message/74227
  http://tech.groups.yahoo.com/group/vimdev/message/45215

I'm not on a Windows box tonight to track this down, can anyone help
us figure out if this is in the binary or runtime?

1. Verify syntax/vim.vim is not corrupt

2. Test the binary:

 :echo has("tcl")

Greg, do you have Cygwin installed?

Interesting that this just cropped up twice in two hours, these
packages have been downloaded nearly 300 times over 8 days.



-- 
Steve Hall  [ digitect dancingpaper com ]



win32 gvim 7.0 (1-118) hang on has("tcl") with cygwin

2006-10-04 Thread Robbie Gates

Hi All,

i was having problems with gvim hanging when i tried to edit my vimrc.

After a bit of sleuthing, i tracked it down to has("tcl") hanging
(called from syntax/vim.vim). If i :echo has("tcl"), the gvim window
stops responding, and clicking the close box pops up the windows
"program not responding" dialog, etc. A bit more sleuthing revealed
that the culprit is the cygwin tcl84.dll which (in my setup) is in the
path visible to gvim. If i hide that (e.g. by putting an empty file
called tcl84.dll earlier in the path, or in the directory containing
gvim.exe), has("tcl") reports 0 as expected.

Note that i don't actually want tcl support, and certainly don't
expect the cygwin tcl84.dll to work - if i want tcl i can download the
windows version and put it earlier in my path.  The workaround of an
empty tcl84.dll in the vim directory works fine for me.

I just figured this was worth reporting, since hangs are annoying, and
i couldn't find anything in the archives about this (or the
workaround). I'm a little curious that the empty file hack worked - i
guess the cygwin dll looks enough like the real one that vim tries to
call something in it and gets hosed ? Sorry i haven't had a chance to
compile my own and take a look at it in a debugger yet.

I'm using the gvim-7-0-118.exe installer from the cream soruceforge
site. Note that i've not installed cream, just one of their plain vim
installers, as this seemed the easiest way to get a compiled, patched,
win32 vim. The download site i used was
 http://sourceforge.net/project/showfiles.php?group_id=43866&package_id=39721

- robbie


Re: [macvim] modifiers should be applied to special keys too (patch)

2006-10-04 Thread Nicolas Weber


Here is one key that doesn't work for me: Shift-Tab.  Most notably  
when

doing command line completion, where Tab gets the next match and
Shift-Tab goes to the previous match.


I can see it, I'll try to fix it tomorrow. I always use C-P for  
previous match (much easier to type imho ;-) ), so I didn't notice  
this...



Bye,
Nico




Re: Patch 7.0.118

2006-10-04 Thread Nikolai Weibull

On 10/4/06, Bram Moolenaar <[EMAIL PROTECTED]> wrote:


Nikolai Weibull wrote:



> Just a quick question: Wasn't "printf" a bit of a misnomer?



Why?  formattedprinting() would be a bit long, thus using the C library
name sounds logical to me.


Sprintf() would have been more logical to me, given that printf() in C
prints a formatted string to stdout, while printf() in Vim returns a
formatted string to its caller.  Format() is another name used in some
languages for this function.


It's too late to change anyway.


I realize that.

 nikolai


Re: [macvim] modifiers should be applied to special keys too (patch)

2006-10-04 Thread Bram Moolenaar

Nicolas -

> > I tried the patch, but it appears that CTRL-F and CTRL-B no longer  
> > work
> > in Normal mode.  They do something in Insert mode after CTRL-V.
> 
> CTRL-F and CTRL-B work for me in Normal mode (they scroll forward/ 
> backward). I'm using mac gvim svn (patches 1-110) and the second  
> version of my patch.
> 
> Can you give more detailed instructions on how to reproduce the problem?

I verified I had used your second patch and found a difference.
CTRL-F and CTRL-B are working now.

> > It looks like this patch needs more careful testing.  Perhaps you  
> > should
> > make a list of keys with various modifiers that need to be tried to
> > verify the code works correctly.
> 
> I made a small list ( http://macvim.blogspot.com/2006/10/keyboard- 
> handling-patch.html ), I'll add further items as problems arise.

Here is one key that doesn't work for me: Shift-Tab.  Most notably when
doing command line completion, where Tab gets the next match and
Shift-Tab goes to the previous match.

Note that in Insert mode you can use CTRL-K and then a key to find out
what Vim gets.

- Bram

-- 
A consultant is a person who takes your money and annoys your employees while
tirelessly searching for the best way to extend the consulting contract.
(Scott Adams - The Dilbert principle)

 /// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\download, build and distribute -- http://www.A-A-P.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///


Re: Patch 7.0.111

2006-10-04 Thread Bram Moolenaar

Fan Decheng wrote:

> Bram Moolenaar wrote:
> > Patch 7.0.111
> > Problem:The gzip plugin can't handle filenames with single quotes.
> > Solution:   Add and use the shellescape() function. (partly by Alexey 
> > Froloff)
> > Files:  runtime/autoload/gzip.vim, runtime/doc/eval.txt, src/eval.c,
> > src/mbyte.c, src/misc2.c, src/proto/misc2.pro
[...]
> I wonder whether it is possible to use execv() instead of escaping the 
> command and then sending it to the shell. How do you think?

Vim doesn't have an execv() function.  Implementing this properly for
all systems isn't that simple.  At least you would need to take care of
$PATH.

-- 
For society, it's probably a good thing that engineers value function over
appearance.  For example, you wouldn't want engineers to build nuclear power
plants that only _look_ like they would keep all the radiation inside.
(Scott Adams - The Dilbert principle)

 /// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\download, build and distribute -- http://www.A-A-P.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///


Re: Patch 7.0.118

2006-10-04 Thread Bram Moolenaar

Nikolai Weibull wrote:

> On 10/3/06, Bram Moolenaar <[EMAIL PROTECTED]> wrote:
> 
> > Problem:printf() does not do zero padding for strings.
> 
> Just a quick question: Wasn't "printf" a bit of a misnomer?

Why?  formattedprinting() would be a bit long, thus using the C library
name sounds logical to me.

It's too late to change anyway.

-- 
The process for understanding customers primarily involves sitting around with
other marketing people and talking about what you would to if you were dumb
enough to be a customer.
(Scott Adams - The Dilbert principle)

 /// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\download, build and distribute -- http://www.A-A-P.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///


Missing CursorHold after return from insert to normal ?

2006-10-04 Thread Yakov Lerner

CursorHold is suppsed to be triggered in normal mode
after &updatetime, correct ? But in the scenario below,
when vim gets into normal mode after insert mode,
CursorHold is not triggered:

1. vim -u NONE -U NONE
2. :let x=0
3. :let ut=200" just some low value
3. :au CursorHold * let x=x+1 | echo x
4.   -- watch CursorHold working
5. ii  wait  there's not CursorHold
   ii  wait  there's not CursorHold
   ii  wait  there's not CursorHold

Why ? Bug or feature ?

Yakov


Re: compilation of regular expressions/ enhancement?

2006-10-04 Thread Nikolai Weibull

On 10/4/06, Peter Hodge <[EMAIL PROTECTED]> wrote:


--- Nikolai Weibull <[EMAIL PROTECTED]> wrote:

> On 10/4/06, Peter Hodge <[EMAIL PROTECTED]> wrote:
> >
> > --- Nikolai Weibull <[EMAIL PROTECTED]> wrote:
> >
> > > > Great idea,
> > > > Nikolei!
> > >^- gaah!
> > >
> > >   nikolai
> > >
> >
> > iabbrev Nikolei Nikolai
> > match Error /Nikol[^a]i/
>
> I'd extended to
>
> match Error /\/
>
> You'd be surprised how often people come up with their very own
> spelling of my name.

It's alright, once your name has been out there for a couple thousand years
(like mine), people will start getting it right more often.


Given that both names are Greek in origin, I wouldn't say that either
has been around longer than the other, see, for example:

http://en.wikipedia.org/wiki/Nikolai
http://en.wikipedia.org/wiki/Peter_%28name%29

 nikolai


Re: compilation of regular expressions/ enhancement?

2006-10-04 Thread Mikolaj Machowski
Dnia wtorek, 3 października 2006 12:34, Marc Weber napisał:
> If this is an issue, there might be the solution introducing a compiled
> regular expression as used in python additional to Number, String,
> Funcref, List, Dictionary
>
> What do you think? Would this be an enhancement?

IMO compilation of only regexps isn't worth of time. Compilation of
whole scripts, THAT would be difference.

m.



Re: compilation of regular expressions/ enhancement?

2006-10-04 Thread David Brown
Nikolai Weibull wrote:

> match Error /\/

But that will only matches entries that mispell all three letters.  You
probably want something like:

  match Error /\/
  match Error /\/
  match Error /\/

David Brown



Re: Time to remove naming restrictions?

2006-10-04 Thread Peter Hodge
> 
> Seeing as you've identified the location and apparent fix, why not you?
>

Because I don't want to maintain my own set of patches, that would be more
tiring than using upper-case commands.






 
On Yahoo!7 
Messenger - IM with Windows Live™ Messenger friends. 
http://au.messenger.yahoo.com 



Re: compilation of regular expressions/ enhancement?

2006-10-04 Thread Peter Hodge

--- Nikolai Weibull <[EMAIL PROTECTED]> wrote:

> On 10/4/06, Peter Hodge <[EMAIL PROTECTED]> wrote:
> >
> > --- Nikolai Weibull <[EMAIL PROTECTED]> wrote:
> >
> > > > Great idea,
> > > > Nikolei!
> > >^- gaah!
> > >
> > >   nikolai
> > >
> >
> > iabbrev Nikolei Nikolai
> > match Error /Nikol[^a]i/
> 
> I'd extended to
> 
> match Error /\/
> 
> You'd be surprised how often people come up with their very own
> spelling of my name.

It's alright, once your name has been out there for a couple thousand years
(like mine), people will start getting it right more often.

- Peter




 
On Yahoo!7 
Fuel Price Watch: Find the cheapest petrol in your area 
http://au.maps.yahoo.com/fuelwatch/


Re: compilation of regular expressions/ enhancement?

2006-10-04 Thread Nikolai Weibull

On 10/4/06, Peter Hodge <[EMAIL PROTECTED]> wrote:


--- Nikolai Weibull <[EMAIL PROTECTED]> wrote:

> On 10/3/06, Marc Weber <[EMAIL PROTECTED]> wrote:
> > > parsed, it's just executed line-by-line.  What /would/ make sense is
> > > to cache the compiled regexes so that regexes used in a loop won't
> > > have to be compiled as often.  That's a fairly trivial fix, although
> > > I'm not going to perform it.
> > Great idea,
> > Nikolei!
>^- gaah!
>
>   nikolai
>

iabbrev Nikolei Nikolai
match Error /Nikol[^a]i/


I'd extended to

match Error /\/

You'd be surprised how often people come up with their very own
spelling of my name.

 nikolai


Re: Time to remove naming restrictions?

2006-10-04 Thread Nikolai Weibull

On 10/4/06, Peter Hodge <[EMAIL PROTECTED]> wrote:


There's about 4 lines of vim source code which you need to remove so that you
can have lower-case user commands.  You're not interested in making your own
patch?


Seeing as you've identified the location and apparent fix, why not you?

Anyway, I felt there was no need to provide a patch before a we had
discussion on the merit (or acceptance) of such a patch.

 nikolai