Как изменить расширение C++ по умолчанию в Eclipse CDT при создании нового файла?
Моя команда получила мандат на использование определенного стандарта кодирования, и частью этого стандарта является использование.cc в качестве суффикса для файлов реализации класса C (в качестве аргумента это может быть.cxx,.C++ или любое другое число). другие суффиксы, которые не являются.cpp).
Мы используем Eclipse CDT (C/C++ Development Toolkit) для разработки, однако в диалоговом окне "Новый класс C++", например, когда вы вводите имя класса как Classname, он автоматически называет ваш исходный файл как Classname.cpp.,
Конечно, я мог бы снять флажок "использовать по умолчанию" и восстановить суффикс, но это несколько дополнительных шагов и много, чтобы попросить каждого инженера в крупномасштабном проекте не забывать делать каждый раз, когда они создают новый класс C++.
Однако я был в замешательстве, пытаясь найти вариант, позволяющий указать суффикс по умолчанию для файлов C++ в Eclipse CDT. Любой гуру Затмения знают это от руки?
4 ответа
См. Окно> Настройки> C/C++ > Стиль кода> Стиль имени> Файлы> Исходный файл C++> Суффикс
Я выкопал код Eclipse CDT и нашел решение:
присоединять
nameStyle.cpp.source.suffix=.cc
в
<workspace location>/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.cdt.ui.prefs
Вот как я это сделал:
- "Начал с разработки CDT", проверил org.eclipse.cdt.ui
- Открыл src / org.eclipse.cdt.internal.ui.wizards.filewizard / NewSourceFileGenerator.java (на самом деле я искал шаблон ".cpp" и нашел его)
- "public static String generateHeaderFileNameFromClass (String className)" сообщает нам о PreferenceConstants.NAME_STYLE_CPP_HEADER_PREFIX
- Мы переходим к PreferenceConstants.java и получаем путь IPreferencesService: nameStyle.cpp.source.prefix
- Эта статья хорошо объясняет, где хранятся префы
Ошибка, упомянутая Ogre Psalm33, была исправлена в 2013 году.
Расположение в Eclipse 4.4:
Window > Preferences > C/C++ > Code Style > Name Style > Files
Ответ: в настоящее время это невозможно сделать в Eclipse 3.6 (Helios) с CDT 7.0.0. Смотрите запись Eclipse Bugzilla. По-видимому, он зарегистрирован как ошибка / отсутствующая функция, но никто не назначен работать над этим.