Я использую CEDET (последняя версия CVS) с несколькими умеренно большими проектами (несколько сотен kLOC в каждом, в основном C, но немного C ++) и иногда наблюдаю длинные паузы, в которых система полностью не отвечает на несколько секунд. Реже он полностью выходит из-под контроля, и мне приходится нажимать C-g
и пытаться переместить курсор или переключиться на другой буфер, чтобы вернуть контроль.
Я использую GNU Global для создания тегов для проектов, над которыми работаю, но иногда это все равно медленное, особенно для semantic-symref-symbol
и некоторых переходов, которые, кажется, требуют синтаксического анализа большого количества заголовков и исходных файлов. В некоторых случаях semantic-ia-fast-jump
ошибки с сообщением semantic-ia--fast-jump-helper: Tag SomeFunction has no buffer information
, даже если gtags-find-tag
находит его немедленно (в том же проекте), хотя, возможно, в устаревшем месте; это может быть временная ошибка, обычно semantic-ia-fast-jump
надежен.
Буду признателен за любые предложения о том, как
- Дросселируйте CEDET, не теряя семантического анализа.
- Узнайте, что привело к выходу CEDET из-под контроля, чтобы я мог исправить определения своего проекта или отправить отчет об ошибке.
- Определите, почему какой-то семантический анализ дает сбой.
- Получите семантику, чтобы кэшировать больше информации, чтобы сделать ее более отзывчивой, у меня много памяти, которую я хотел бы использовать.
- Управляйте GNU Global (создавайте и поддерживайте актуальность) для множества проектов в разных местах, включая системные каталоги.
- Управляйте зависимостями между проектами, которые я настроил с помощью
ede-cpp-root-project
. - Управляйте проектами, имеющими несколько конфигураций сборки, каждая из которых имеет свой «config.h» и каталог сборки.
В статье http://alexott.net/en/writings/emacs-devenv/EmacsCedet.html, я ищу что-нибудь помимо этой статьи.