Consider the following script: ============================= :function Op(t) echom col("']") col("'>") endfunction :set operatorfunc=Op :redir! > messages.log i»»»»^[0v$g@0g@$:redir END :qa! ============================= (replace ^[ with actual escape or just use attached file). It will print «7 9» and «8 9» into messages.log, while expected either «9 9» and «8 9» (because «$» does not take EOL), «8 9» and «8 9» (so that «']» will always be positioned at the last byte of the last character), or «7 9» and «7 9» (if positioning on the last character on the text means positioning on its first byte). Tested on vim-7.3.75 from gentoo repos and vim-7.3.107 (revision 26fb122355d4).
test-operatorpastend.vim
Description: application/wine-extension-vim
signature.asc
Description: This is a digitally signed message part.