proteanthread / vim

Automatically exported from code.google.com/p/vim
0 stars 0 forks source link

cursor jumps to the end of closed fold when executing a register #121

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

The following code shows how to reproduce this issue. I use netrw help file as 
an example because it's a large file with many folds.

"-----BEGIN-----------------------------
edit $VIMRUNTIME/doc/pi_netrw.txt
set fdm=marker fdl=0
" Position cursor on the first line of the first closed fold.
normal! ggzj
let @z = "echo line('.')"
echo line('.')
@z
echo line('.')
"-----END-------------------------------

What is the expected output? What do you see instead?

The cursor position should not change.
Insted, it jumps to the last line in the closed fold.

What version of the product are you using? On what operating system?

Vim 7.3.829 from Cream project, Windows XP.

Please provide any additional information below.

This is an issue with execution of registers (:help :@) and folding. When the 
cursor is on a closed fold and a register is executed, the cursor always jumps 
to the last line in the fold.

If an address is provided before the register and is anywhere in a closed fold 
(e.g., :28@z in the example above), the cursor also jumps to the last line in 
the fold.

Original issue reported on code.google.com by vlad.ir...@gmail.com on 12 Mar 2013 at 1:06