Как правильно получить отступ Emacs внутри списка инициализации в C ++? - PullRequest
0 голосов
/ 25 ноября 2018

Я хочу инициализировать массив следующим образом:

int arr
{
    3,
    4
};

Но мой emacs неверно указывает на это:

int arr
{
    3,
        4
        };

Пожалуйста, обратите внимание на отсутствие "=".Я использую список инициализаторов здесь, и этот синтаксис правильный.

Ответы [ 3 ]

0 голосов
/ 27 ноября 2018

В качестве альтернативы я хотел бы предложить clang-формат с Emacs

Существует множество вариантов , с которыми можно поиграть.

Эти параметры должны быть определены в файле .clang-формата (в вашем домашнем каталоге или в корневых каталогах проекта C ++)

0 голосов
/ 10 мая 2019

А как насчет вложенных списков инициализаторов с завершающими запятыми, которые теперь поддерживаются (c ++ 11)?Скажем, я строил JSON.(cpprestsdk) то, что я вижу:

    using JsonValue = web::json::value;
    auto json = JsonValue::object({
            {"a", JsonValue("v")},
            {"b", JsonValue::array({
                        {JsonValue(1)},
                        {JsonValue::object({
                                    {},
                                    {},
                                        })},
                        {JsonValue(3)},
                            })},
            {"c", JsonValue::object()},
                });

то, что я хочу видеть

    auto json = JsonValue::object({
        {"a", JsonValue("v")},
        {"b", JsonValue::array({
            {JsonValue(1)},
            {JsonValue::object({
                {},
                {},
            })},
            {JsonValue(3)},
        })},
        {"c", JsonValue::object()},
    });

Предполагая, что я предпочитаю начинать с базового форматирования Allman / BSD ...

0 голосов
/ 27 ноября 2018

Использование более новой версии emacs может помочь.Отступ в списке фигурных инициализаторов был улучшен в https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24431.

Emacs 26.1 имеет тот же код, что и

int arr
    {
        3,
        4
    };

, что не совсем так, но, по крайней мере, лучше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...