如何在vim中更快地滚动

tcomlyy6  于 2022-11-11  发布在  其他
关注(0)|答案(4)|浏览(359)

按住jk的同时滚动太慢。多次执行10j也不理想。
如何在保持按键的同时加快速度?我在vscode中使用了vim,但我想这个解决方案可能也适用于那里。

gpnt7bae

gpnt7bae1#

如果您希望加快到达特定地点的时间,则可以使用多个页面。如果需要加快速度,这些命令支持保持按键按下:
ctrl + f(向下翻页)
ctrl + B(向上翻页)
ctrl + d(向下滚动窗口,通常为半个屏幕)
ctrl + u(向上滚动窗口,通常为半个屏幕)

deikduxw

deikduxw2#

我相信您正在寻找一种更好的方法来在代码块或类似的部分之间导航,而不必进行递归的j或k操作。以下是我个人最喜欢的方法:

  • 通过Ctrl+y和Ctrl+e滚动屏幕,光标停留在同一行/当前行
  • 在段落之间移动。对于在代码块之间移动非常有用(假设代码块中没有换行符:D),比如使用{和}键在不同的函数、类等之间移动。
  • 最好和最快的方法去移动是通过使用可用的视觉线索,如关键字上的某些行等,搜索和移动光标到该点。您可以使用/或?键搜索一个特定的词,或者按Esc键停止搜索并移动到原来的光标位置,或回车键转到该搜索的关键字。
  • 当然,您可以使用Ctrl+F和Ctrl+B全屏前进。
  • 您可以在正常模式下键入行号并按大写字母G直接转到特定行。例如:-10 G

如果您还想了解更多的导航技巧和命令,我强烈推荐您访问watch this wonderful talk

9njqaruj

9njqaruj3#

还有其他好的跳跃

} .......... jump paragraph forward
{ .......... jump paragraph above
H .......... top of the window
M .......... middle of the window
L .......... bottom of the window

Ctrl-d ...... jumps down half screen
Ctrl-u ...... jumps back half screen

如果您使用搜索/pattern进行跳转,则可以使用

Ctrl-o ...... jump to the last position (jump list)
Ctrl-i ...... jump to the next position (jump list)

相对于使用jk,它们不会向跳转列表(:h jumplist)添加任何条目,但您可以在~/.vimrc中执行以下操作:

" It adds motions like 25j and 30k to the jump list, so you can cycle
" through them with control-o and control-i.
" source: https://www.vi-improved.org/vim-tips/
nnoremap <expr> j v:count ? (v:count > 5 ? "m'" . v:count : '') . 'j' : 'gj'
nnoremap <expr> k v:count ? (v:count > 5 ? "m'" . v:count : '') . 'k' : 'gk'

在您的配置文件中有了上面的行,任何超过5行的跳转都会在跳转列表中创建一个新条目。
为了使我的搜索更快,因为我的笔记本电脑很难达到/我有这样的Map:

nnoremap <space> /

要在最后一个插入点开始键入,您可以键入:

gi

您可以重新选取并跳至上一个视觉选取范围,使用

gv

一旦你有了一个选择,你可以使用字母o来跳过选择的边缘,并可能增加或减少选择的距离。

gd  ............. jump to function definition

还有“更改列表”

g;  ................ goes to the older cursor position on the changlist
g,  ................ goes to the newer cursor postion on the change list

有时候你是在正确的点,但你想scrool寡妇没有移动cursror。

gg ............ beginning of the file
G .............. end of the file

zt  ............ puts the current line at the top
zz  ............ puts the current line at the middle
zb ............. puts the current line at the bottom

% .............. Jump to corresponding item, e.g. from an open brace to its matching closing brace.

如果你想在vim上打开你最后编辑的文件,你应该设置一个别名,如下所示:

alias lvim='vim -c "normal '\''0"'

过去我遇到的一个恼人的问题是我的Ctrl-d太快了。为了解决这个问题,现在我有了“vim-smoothie“插件-对于neovim来说,有karb94/neoscroll.nvim
vim-sneak是一个有趣的插件,它可以帮助你更快地跳转到文件,它会重新Map你的正常s键,并在你键入两个键的地方显示一个提示,它会跳转到它,允许你使用;跳转到下一个。(它有一个口号:vim)的缺失运动。

xlpyo6sf

xlpyo6sf4#

在键盘设置中增加重复频率

相关问题