我目前正在与Vim战斗,我似乎无法让缩进选项做我想要的。
以下是我的设置,我将它们放在.vimrc的底部,以确保它们优先。你可以看到我有点疯狂,所以我试着关掉几乎所有东西:
set cindent
set cinkeys=o,O
set cinoptions=
set cinwords=
set indentexpr=
在大多数情况下,它似乎工作正常,它打开一个块后做一个缩进,一切都很好。但是有一个案例让我发疯,当{
语句后有case
时,下一行太过于缩进:
switch () {
case CASE: {
// <-- next line gets indented to here, why??
// <-- should be indented to here
如何让它停止这样做? TIA
答案 0 :(得分:23)
:set cinoptions=l1
(这是字母后跟第一个字母)
查看:帮助cinoptions - 默认字符串的值和不同选项的描述。
答案 1 :(得分:1)
当我手动输入set
命令时,我没有任何缩进。您是否查看过:set all
的输出以确认您的设置未被覆盖?
注意:这应该在评论中,但目前我不允许使用该选项。
答案 2 :(得分:1)
如果缩进是N个空格(用实际值替换N),请尝试以下
{{1}}
:N - > place'case'标签来自switch缩进的0个字符
= 0 - &gt;缩进案例标签
中的陈述