6

我有编写代码行太长的坏习惯,所以我终于开始在我的 .vimrc 中设置“colorcolumn=101”和 textwidth=100。

我希望能够追溯地将这些线宽限制应用于我已经编写的文件,并且我发现从文件顶部开始并按 gqG 可以解决问题。它将正确拆分太长的行,但如果它们适合 100 个字符,它也会将它们连接在一起。

所以如果一开始我有:

import java.io.File;
import java.io.IOException;
import java.util.Map;

它会变成:

import java.io.File; import java.io.IOException; import java.util.Map;

不过,我真的不想要加入线路的行为。

4

2 回答 2

5

要打破长行,您可以使用gqq. 仅在长于 100 ( :help /\%v) 的行上将其与条件执行结合起来:global,如下所示:

:%global/\%>100v/normal! gqq

// ...请注意,这可能仍会引入语法错误,例如在评论前导后换行时。

于 2012-12-10T14:50:11.283 回答
2

或者,您可以使用外部程序来格式化您的代码。我建议结合 vim 插件vim-autoformat (https://github.com/Chiel92/vim-autoformat)使用astyle (http://astyle.sourceforge.net/ 以及 ubuntu repo)。

后者将第一个集成到 vim 中,这样当你按下 astyle 就会格式化你的代码gqG

于 2012-12-11T17:12:32.050 回答