gvim换行应该结束当前字符串并在下一行开始一个新字符串

时间:2012-11-19 09:39:11

标签: c++ editor word-wrap vim

我的.gvimrc文件中有以下行,以80个字符自动换行。

set textwidth=80 

我还有以下几行来控制C ++代码缩进。

set smartindent
set cindent

这在大多数情况下效果很好,但在键入长字符串时有一定的限制。由自动缩进添加的空格或制表符成为字符串的一部分。例如,换行符当前执行:

puts("I have put `set textwidth=80` in my `.gvimrc` file to make gvim
        automatically wrap long strings like this one.");

虽然我希望它能做到以下几点:

puts("I have put `set textwidth=80` in my `.gvimrc` file to make gvim "
        "automatically wrap long strings like this one.");

这将确保输出中没有虚假的空格,同时保持一致的代码缩进。

有没有办法配置gvim来做到这一点?我在互联网和StackOverflow上搜索过,但无法弄清楚如何做到这一点。

2 个答案:

答案 0 :(得分:1)

我担心没有内置的'formatoptions'设置(还)。但是,可以使用自定义gq自定义'textwidth'格式和'formatexpr'以外的文本格式,但我已经看到到目前为止很少使用。

如果您不想尝试这样的实现,一个简单的解决方法是设置'colorcolumn';视觉辅助将帮助您记住关闭字符串并在达到文本宽度之前按 Enter

答案 1 :(得分:-1)

查看this

您可以使用formatoption命令来解决您的问题