我不需要初始化列表和作用域声明的特殊缩进,因此我在.vimrc set cinoptions=i-s,g0
中(根据this issue)。它可以解决问题:
class Proletariat {
public:
Proletariat();
private:
bool freedom;
int workShift;
}
Proletariat::Proletariat():
freedom(false),
workShift(12) {
pogrom();
}
但是它可以正常工作,直到代码包含在某个块中为止,例如:
namespace ClassWar {
class Proletariat {
public:
Proletariat();
private:
bool freedom;
int workShift;
}
Proletariat::Proletariat():
freedom(false),
workShift(12) {
pogrom();
}
}
如您所见,作用域声明仍然没有缩进,但初始化列表是。
我知道可以使用续行选项+N
,但是(显然)它会中断续行缩进。
那么这种行为的原因是什么以及如何改变呢?
Vim和Neovim对此处理相同。