如何在屏幕上将当前行居中?


23

有没有办法让我在屏幕上编辑的行居中?有时需要查看当前行上下的更多上下文。

Answers:


28

z.zz命令将recenter线光标位于。 z.还将光标移动到该行的第一个非空白字符,同时zz将光标保持在原处。

窗口的顶部(z<CR>/ zt)和底部(z-/ zb)也有类似的命令。

这些以字母结尾的命令的版本保留在光标列中,而以标点结尾的命令的版本则移动光标。


6

键入zz以使当前行在屏幕中居中:

在此处输入图片说明


完善!我将此添加到了BufReadPost autocmd中,因此我恢复了光标所在的行并在屏幕上居中地继续编辑:au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | "normal! g'\"zz"
John P

为动画

2

是的,在正常模式下,您可以zz这样做。但是正如文档所预告的那样,请谨慎使用capslock,因为ZZ它将缓冲区写入文件并退出。


无论出于何种原因,这都成为另一个SO / SE线程上的一个争论焦点……共识似乎是,您应根据需要无限期按住shift键,并在系统级别重新映射caps键,以消除诱惑,等等。 ,再也没有大写锁定whoopsies。否则,这是您自己的错。我猜他们不必处理预处理器宏了……
John P

1

在正常模式下,zz将当前光标下方的行移动到屏幕中心。

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.