我在非常小的屏幕设备(7英寸)上使用vim;我使用wrap和linebreak,你可以想象滚动(通过键盘和鼠标)是一场噩梦,因为如果你有一条很长的线,它可以包裹在可见的下方屏幕。
我查看了很多帖子,没有提供除gj和gk之外的明确解决方案。
澄清一下:只是尝试写一个低于可见窗口的长行:ctrl-e或jk将转到下一行的开头,你将看不到第一行的最后一个字符。
有没有找不到的东西?似乎真的有很多人对此感兴趣,但没有一个开发人员想要解决这个问题: - (
感谢
http://vim.1045645.n5.nabble.com/Scrolling-screen-lines-I-knew-it-s-impossible-td3358342.html
答案 0 :(得分:5)
gj 和 gk 将在一行内滚动,而不是移动到下一行。这可能会帮助你。如果是,您可能想要暂时执行:
:nmap j gj
:nmap k gk
答案 1 :(得分:1)
我能得到的最接近的是,无论如何都没有鼠标支持:
Traversing text in Insert mode
http://vim.wikia.com/wiki/Move_cursor_by_display_lines_when_wrapping
"use up and down to move by screen line
map <Up> gk
map <Down> gj
vmap <Up> gk
vmap <Down> gj
inoremap <Up> <C-o>gk
inoremap <Down> <C-o>gj
" make hjkl movements accessible from insert mode via the <Alt> modifier key
inoremap <A-h> <C-o>h
inoremap <A-j> <C-o>gj
inoremap <A-k> <C-o>gk
inoremap <A-l> <C-o>l