Подтвердить что ты не робот

Vim indent: выровнять аргументы функции

Выравнивание по умолчанию в vim (используя "=" ) выравнивает мой код как:

void my_loooong_function (int arg1,
        int arg2,
        int arg3
        )

Тем не менее, я хочу выровнять все аргументы, начинающиеся с той же строки, что и:

void my_loooong_function (int arg1,
                          int arg2,
                          int arg3
                         )

Как это можно сделать?

4b9b3361

Ответ 1

Чтобы сделать == работать по вашему желанию, вам необходимо установить cinoptions соответствующим образом:

:set cino+=(0

Полная документация о возможных значениях может быть найдена через :help cinoptions-values и, в частности, :help cino-( для управления отступом внутри закрытых круглых скобок.

Этот параметр также влияет на поведение автоподразделения (например, когда вы вводите возврат каретки после открытия скобки).

Это можно, конечно, добавить к вашему vimrc или ftplugin, чтобы автоматически установить это значение для определенных типов файлов.