Status: New
Owner: ----
Labels: Type-Defect Priority-Medium
New issue 155 by gade...@gmail.com: feature request: Option for keeping
cursor position while scrolling by mouse
http://code.google.com/p/vim/issues/detail?id=155
Right now, vim always shows cursor in viewable part of window by changing
its position as viewport changes, even when user is scrolling by mouse
wheel. Personally, I hate this. I understand that vim's philosophy is that
you should never use a mouse, but mouse wheel is perfect for looking around
document and no keyboard key can replace this functionality properly: users
use mouse wheel to see what is out of the visible part of screen and no key
replaces this properly. I don't think anybody use mouse wheel scrolling in
vim for positioning cursor on exact line as they want as this method is
highly inaccurate or slow for this - user have to scroll very slow to not
overscroll desired line - if he does and still want to do this by mouse, he
will need to scroll back by all of the height of buffer + missed lines
because cursor stays on position if it does not reach border of viewport.
Because of this, if user want to go to new position below viewport, he
instead use mouse scrolling only to position viewport to part of document
where approximately is located line which user want to edit and then he
will most probably use mouse click (they are still holding mouse right?) or
use gg instead (or similar movement commands) as he now see line number.
I understand that some users maybe prefer it the way it is now - e.g.
people using relative line numbering thanks to this feature don't have to
type 1350gg to move to desired line, but instead 15+ as cursor is closer to
desired line. That's why I'm asking for option for us.
If this is implemented, people can use mouse wheel in vim not only for
changing cursor position to new unknown location (outside of view) but they
can use it too in a way that they can scroll down/up to see what is
below/above viewport, but when they want to continue in editing line they
were editing, they just do it and viewport automatically changes to cursor
position. If user want do this now without this proposed option, he has to
use mark - and if he is in other mode, he have to exit this mode and then
enter to this mode again (or use <C-o> in insert mode or key binding,
doesn't matter still a lot more unergonomic than doing nothing). Because
jumplist changes as cursor changes its position line by line when scrolling
out of viewport, it can't be used comfortably either - because user doesn't
know position of item in jumplist as it changed multiple times since then.
Also, it wouldn't manipulate with selection if user is in visual mode as it
is now.
As another added benefits, scrolling with this options would be faster and
more neat - without flickering cursor which position constantly changes. It
would be faster because vim won't have to:
- calculate new location of cursor (start/end of line, start/end of words
or similar behaviour which vim has now)
- move and display cursor to new position
- change active line background if option cursorline is set
- highlight current line number
- expand current visual selection
--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to vim_dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.