我们来谈谈相关措施.我的Vim看起来像:
aaaaaaaaaaaaa bbbbbbbbbbbbb ccccccccccccc etc
我希望它更小:
aaaaa aaaaa bbbbb bbbbb ccccc ccccc etc
我怎么才能得到它?我如何管理设置这样一个块的长度?
你实际上可以做两件事:
通过插入换行符,让vim格式化(即更改)您的文本以获得更短的行
保持原样,但显示它们已包装
你要哪个?
选项1将通过设置textwidth
(例如:set textwidth=30
(来自Swaarop的答案))来实现.然后,您可以通过突出显示文本(在可视模式下)并键入来重新格式化文本gq
.(textwidth
可缩写为tw
,从而:set tw=30
.)
可以通过运行:set wrap
/ 来切换选项2 :set nowrap
.这将包裹对于窗口来说太长的行.
两者都是独立的.
设置'textwidth'后,您可以选择具有可视模式的文本并按gq以很好地包装它(您也可以在某些旧/旧配置上使用Q).
一些有用的提示:
gqq (wrap the current line) gq} (wrap this 'paragraph', i.e. until the next blank line) :h gq
使用fold(1)是一种可能性:
:%!fold -w5
结果:
aaaaa aaaaa aaa bbbbb bbbbb bbb ccccc ccccc ccc
:set textwidth=30
如果你有没有空格的文本要打破一定的长度,既不需要使用外部fold
也不需要编写自己的文本formatexpr
.
:%s/\(.\{80\}\)/\1\r/g
将打破80个字符的所有行.