Как я могу заставить Emacs игнорировать определенные ключевые слова?
Я хотел бы сказать, что emacs должен обрабатывать некоторые ключевые слова (или даже регулярные выражения) как синтаксические пробелы, или, другими словами, игнорировать их. Например: подсветка emacs и неправильная интерпретация кода
void function() some_compiler_specific_modifier(){
...
}
как some_compiler_specific_modifier
будучи именем функции.
У меня есть список модификаторов, поэтому я был бы рад, если бы emacs мог просто игнорировать их, когда бы он их ни нашел.
РЕДАКТИРОВАТЬ: самая важная часть состоит в том, чтобы заставить синтаксический анализатор cedet игнорировать эти ключевые слова...
1 ответ
Для этого вы можете изменить semantic-lex-c-preprocessor-symbol-map
чтобы включить символы, которые вы хотите, чтобы они исчезли. Поскольку у вас много макросов, и некоторые из этих макросов, очевидно, принимают аргумент, вам, вероятно, лучше создать новый заголовок, такой как:
goofy.h:
#define some_compiler_specific_modifier(A)
#define some_other_compiler_modifier(B)
// ...
а затем добавить это к semantic-lex-c-preprocessor-symbol-file
,
После изменения этих переменных вам может понадобиться semantic-c-reset-preprocessor-symbol-map
чтобы изменения вступили в силу.
Альтернативно, используйте ede-cpp-root-project
введите и укажите вышеуказанную информацию через конфигурацию в этом стиле проекта. (Подробнее об этом см. В документе.)