Я покопался в источнике для CDT и нашел недокументированную настройку предпочтений, которую можно использовать, чтобы изменить то, что генерируется ${include_guard_symbol}
.Для него также нет графического интерфейса, но если вы добавите параметр codetemplates.includeGuardGenerationScheme
в <projectpath>/.settings/org.eclipse.cdt.ui.prefs
, вы можете выбрать между именем файла (по умолчанию), путем к файлу или UUID .
.файл <projectpath>/src/include/Class.h
, следующие значения дают эти результаты:
- 0 дает имя файла в верхнем регистре, то есть
CLASS_H_
- 1 дает, например, UUID.
HC9ABE718_D04E_411C_B5A2_F9FE1D9F9409
- 2 дает путь к файлу в верхнем регистре, то есть
SRC_INCLUDE_CLASS_H_
Чтобы избежать каких-либо сомнений, вот содержимое нашего .settings/org.eclipse.cdt.ui.prefs
:
codetemplates.includeGuardGenerationScheme=2
eclipse.preferences.version=1
formatter_settings_version=1
Это, очевидно, не совсем то, что вы ищете, но мы используем 2
, чтобы дать нам приближение наших пространств имен, поскольку, вообще говоря, наши пространства имен следуют нашей структуре папок.код находится в этих файлах в источнике CDT:
core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/PreferenceConstants.java
для констант для каждой опции core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/corext/codemanipulation/StubUtility.java
для метода generateIncludeGuardSymbol()
, который выполняет работу.
Было бы неплохо добавить дополнительную опцию для использования пространства имен и графический интерфейс.