Я хочу добиться того, чтобы длина переменной/функции/и т. д. никогда не влияла на отступ следующих строк или, по крайней мере, как можно реже. Например, у меня уже есть AlignAfterOpenBracket: AlwaysBreak, который перемещает все параметры на следующую строку, если, например. имя функции слишком длинное:
const auto result = SomeVeryLooooooonFunctionName(
parameter1,
parameter2,
parameter3,
parameter4,
parameter5,
parameter6,
parameter7);
Примечательно: если что-то меняется в первой строке, это никак не повлияет на следующие строки (если только весь вызов не станет настолько коротким, что уместится в одну строку, но это нормально).
Но когда я сразу добавляю (или любую другую бинарную операцию) что-то, это становится нежелательным:
const auto result = SomeVeryLooooooonFunctionName(
parameter1,
parameter2,
parameter3,
parameter4,
parameter5,
parameter6) +
1;
Похоже, что параметры теперь соответствуют имени функции (плюс ContinuationIndentWidth: 4). Меня бы устроил большой отступ (хотя, по моему мнению, это некрасиво), но моя проблема в том, что сейчас, когда я, например, измените имя результата, все последующие строки изменят свой отступ, а это именно то, чего я не хочу.
Это было бы желательно :
const auto result =
SomeVeryLooooooonFunctionName(
parameter1,
parameter2,
parameter3,
parameter4,
parameter5,
parameter6) +
1;
Но на самом деле все в порядке, если изменение имени в первой строке не приводит к изменению отступов всех последующих строк.
Это это мой файл в формате .clang:
---
Language: Cpp
BasedOnStyle: Mozilla
AlignAfterOpenBracket: AlwaysBreak
AlignOperands: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
PenaltyReturnTypeOnItsOwnLine: 0
ColumnLimit: 100
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
IndentWidth: 2
...
Подробнее здесь: https://stackoverflow.com/questions/791 ... vious-line
Clang-format: Как никогда не выравнивать токен из предыдущей строки? ⇐ C++
Программы на C++. Форум разработчиков
1730498879
Anonymous
Я хочу добиться того, чтобы длина переменной/функции/и т. д. никогда не влияла на отступ следующих строк или, по крайней мере, как можно реже. Например, у меня уже есть AlignAfterOpenBracket: AlwaysBreak, который перемещает все параметры на следующую строку, если, например. имя функции слишком длинное:
const auto result = SomeVeryLooooooonFunctionName(
parameter1,
parameter2,
parameter3,
parameter4,
parameter5,
parameter6,
parameter7);
Примечательно: если что-то меняется в первой строке, это никак не повлияет на следующие строки (если только весь вызов не станет настолько коротким, что уместится в одну строку, но это нормально).
Но когда я сразу добавляю (или любую другую бинарную операцию) что-то, это становится нежелательным:
const auto result = SomeVeryLooooooonFunctionName(
parameter1,
parameter2,
parameter3,
parameter4,
parameter5,
parameter6) +
1;
Похоже, что параметры теперь соответствуют имени функции (плюс ContinuationIndentWidth: 4). Меня бы устроил большой отступ (хотя, по моему мнению, это некрасиво), но моя проблема в том, что сейчас, когда я, например, измените имя результата, все последующие строки изменят свой отступ, а это именно то, чего я не хочу.
Это было бы желательно :
const auto result =
SomeVeryLooooooonFunctionName(
parameter1,
parameter2,
parameter3,
parameter4,
parameter5,
parameter6) +
1;
Но на самом деле все в порядке, если изменение имени в первой строке не приводит к изменению отступов всех последующих строк.
Это это мой файл в формате .clang:
---
Language: Cpp
BasedOnStyle: Mozilla
AlignAfterOpenBracket: AlwaysBreak
AlignOperands: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
PenaltyReturnTypeOnItsOwnLine: 0
ColumnLimit: 100
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
IndentWidth: 2
...
Подробнее здесь: [url]https://stackoverflow.com/questions/79148714/clang-format-how-to-never-align-with-any-token-from-the-previous-line[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия