Список инициализатора конструктора формата (перенос строки) в Eclipse CDT - PullRequest
10 голосов
/ 04 августа 2010

Я пытался найти решение сейчас ~ 30 минут и не смог найти ни одного.Я пытаюсь настроить стиль кода в CDT, чтобы он выдавал:

MyClass::MyClass() :    
var1(1), 
var2(2), 
var3(3){

}

вместо

MyClass::MyClass() :    
var1(1), var2(2), var3(3){

}

, но я не смог найти вариант для этого.

Единственный вариант «списка инициализаторов», который я мог найти, на самом деле предназначен для массивов и поэтому бесполезен для меня.

Мой вопрос: я пропустил правильное место?Существует ли плагин, который лучше форматирует код C ++, чем CDT?

Ответы [ 3 ]

2 голосов
/ 10 июля 2014

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

Нажмите:
Окно -> Настройки

Перейдите:
C / C ++ -> Стиль кода -> Форматер

Здесь, в первую очередь, вы должны создать новый профиль.

Выберите вкладку:
Перенос строки

Перейти к:
Объявления функций -> Список инициализатора конструктора

Внизу необходимо установить:

  • Политика переноса строк: Обернуть все элементы, каждый элемент на новой строке.
  • check «Принудительное разделение, даже если строка короче максимальной»
  • Политика отступов: Отступ в столбце
1 голос
/ 30 ноября 2011

Попробуй это.У меня нет пакета CDT, поэтому я не могу проверить это, но форматирование делает что-то похожее в Java.

Если вы добавите комментарий в конец строки, он будет содержать новую строку

MyClass::MyClass() : //
var1(1), //
var2(2), //
var3(3){ //

}
1 голос
/ 08 мая 2011

Ну, я не могу точно сказать вам, как это сделать, но если вы не возражаете против небольшого дополнительного пустого пространства, я могу приблизить вас. Введите пустую строку между каждой строкой. То есть:

MyClass::MyClass() :    
var1(1), 

var2(2), 

var3(3){
}

Теперь, когда вы переформатируете, этот макет будет прикреплен. Я знаю, что это не совсем то, что вы хотите, но я подумал, что опубликую на тот случай, если вы не знаете об этом обходном пути.

...