我使用Vim编辑带有> 10.000个单词和长段落的英文文本文件.文件格式为纯文本,每个段落都是一条长行.我使用wrap选项,我将j和k分别绑定到gj和gk,这样我就可以通过显示行移动了.
如果我的光标位于屏幕顶部(但不是文档的开头)并且我向上移动光标(使用gk),屏幕会向上滚动以显示整条长行(一个300字的段落).问题是由于线条的长度,这使得屏幕滚动屏幕的一半.这令人迷惑,因为我事先并不知道屏幕会移动多少.使用^ Y滚动具有相同的问题.
有没有办法让Gim在使用gk及其同类时只用一条显示行滚动?这对于编辑非源代码和大多数文本编辑器以及文字处理器中的默认行为更为自然,但在Vim中则不然.我认为这意味着Vim必须停止坚持显示我正在编辑的整行.
我已经通过切换到硬包裹的散文文件来亲自解决了这个问题.我不相信有任何其他解决方案.这是第一个让我接触到这个想法的文章之一:
http://alols.github.io/2012/11/07/writing-prose-with-vim/
原文链接:https://www.f2er.com/bash/384739.html我必须承认,在开始时,将我的所有文档转换为这种传统的文本文件编写方式的想法对我来说看起来很烦人,而且它也可能对你有用.但我很快意识到,通过尝试其他现代编辑,他们都没有像Vim那样强大和稳定.在我觉得完全自然的一些格式选项调整之前我所需要的一切.在我的情况下,这最好:
setlocal formatoptions=wat
此外,这是一个方便的功能,我发现可以随时回到软包装,你可能会发现它很有用:Unwrap text in vim