Well, i still don't understand vim logic behind that process.
Let's see more realistic example.
gvim -U NONE -u NONE
Let's suppose that I am a poor pascal programmer and typing code like this:
:set completeopt+=longest
:set complete-=t
i
var one : byte;
two : byte;
two_and_three : byte;
three : byte;
// may be this is a word?
one:=three;
// or next one is a a word?
one:=two_and_three;
oC-N:=tC-n
// completion in second C-N still not working here...
// so there is no word? not 'one:=t*' or 't*' words in buffer?
// I still thinks it should be considered as a bug.
Vim is still in completion mode and there is no word matching one:t
Okay, in above example there is 'one:=three' word specially for vim, but
still no completion.
And why vim looks for 'one:=t' word? ':' and '=' should not be in the
'word', right?
I think that vim should looks for 't' words. Because '=' and ':' is not
word, it's not part of identifier.
Part of line -may be, but not words.
thus you don't get any completions. If you type CTRL-N one more time
then it works.
Sorry,it's not working for me. (1-105 patches)
I mean that I'm typing Ctrl-N many times in desperate attempts to get some
completion and: no completion absolutely :(.
Even when there is multiply matches for t -starting words.
And what more strange is that if I'm switching to normal mode and then
switch back in insert mode then
completion on the same construction
one:=tc-n works as expected.
Now vim guesses right about ':' and '=' not being parts of a word, but why
not from the first attempt?
--
Igor.