Мне не нужны специальные отступы для списков инициализации и объявлений областей действия, поэтому я имею в своем .vimrc set cinoptions=i-s,g0
(в соответствии с этот выпуск ).Это делает трюк:
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
, но это (очевидно) нарушает отступ строк продолжения.
Итак, что является причиной такого поведения икак это можно изменить?
Вим и Неовим одинаково справляются с этим.