After execution of attached script I got [1, 1, 1, 1, 2, 3] in g:positions, while expected [1, 2, 3, 1, 2, 3].
Command: vim -u NONE -c 'so test-normalmove.vim' Tested on vim-7.3 from gentoo repository and on revision 073ff46fe397 from mercurial repository.
set nocompatible
let g:positions=[]
function EchoCurrentPosition(text)
call add(g:positions, col('.'))
return a:text
endfunction
inoremap <expr> a EchoCurrentPosition("a")
normal aaaa
normal! ggdG
normal Aa
normal Aa
normal Aa
signature.asc
Description: This is a digitally signed message part.
