如何跳到缓冲区中间


17

通过按ggG您可以跳到缓冲区的两端。

42G 跳到第42行。

是否有任何快速g捷径可跳到缓冲区的中间。大概是round(number of lines/2)G什么?

Answers:


33

您可以使用N%跳到文件的N%。因此,例如,50%大致跳到缓冲区的中间。请参阅以下网址的帮助:h N%


3

我在自己的设置中使用以下映射:

nnoremap <expr> M (line('$')/2).'G'
xnoremap <expr> M (line('$')/2).'G'
onoremap <expr> M (line('$')/2).'G'

这很简单,它只(line('$')/2).'G'在运行映射之前就对表达式求值。line('$')是缓冲区中最后一行的编号,我们将其除以2。然后.'G'将“ G”附加到结果字符串中。

如果您喜欢使用默认设置M(可见屏幕的中部),则可以将其设置为领导者映射,以免覆盖它。例如:

nnoremap <expr> <leader>m (line('$')/2).'G'
xnoremap <expr> <leader>m (line('$')/2).'G'
onoremap <expr> <leader>m (line('$')/2).'G'

-1

您可以使用N%跳到文件的N%。因此,例如,50%大致跳到缓冲区的中间。

请参阅以下网址的帮助 :h N%


我编辑了答案,因为它出现在“第一篇文章”队列中以使其可读(格式很糟糕),但我没有看到它只是克里斯蒂安答案的重复。
statox
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.