Я работаю над большим проектом C ++. Я работаю с Emacs в течение последних шести месяцев. Я попытался настроить CEDET, чтобы иметь возможность легко ориентироваться, но я обнаружил некоторые проблемы.
1.- Иногда семантика не находит некоторые символы, а иногда нет ... Я не знаю четко, какие файлы это семантическая индексация. Я пытался использовать EDE (следуя инструкциям в этой статье http://alexott.net/en/writings/emacs-devenv/EmacsCedet.html ), но я также нашел некоторые проблемы ...
2.- Я работал с vim + cscope некоторое время назад, и я помню, что был способ вернуться назад в стек символов (Ctrl-T). Есть ли что-то подобное в emacs?
PD> Некоторые данные, чтобы прояснить вопрос.
У меня есть несколько выпусков одного и того же проекта. У каждого есть свой корневой каталог. Каждый проект имеет несколько модулей, каждый из которых находится внутри подкаталога. В каждом модуле есть файл заголовков.
/home/user/
|
\Release-001
| |
| \makefile
| \ Module-001
| | |
| | \makefile
| | \subdir-001
| | | \header-001.h
| | | \header-002.h
| | \subdir-002
| | | \header-003.h
| \ Module-002
| | |
| | \makefile
| | \subdir-003
| | | \header-004.h
| | | \header-005.h
| | \subdir-004
| | | \header-006.h
|
\Release-002
| |
| \makefile
| \ Module-001
| | |
| | \makefile
| | \subdir-001
| | | \header-001.h
| | | \header-002.h
| | \subdir-002
| | | \header-003.h
| \ Module-002
| | |
| | \makefile
| | \subdir-003
| | | \header-004.h
| | | \header-005.h
| | \subdir-004
| | | \header-006.h
Это конфигурация о EDE, которая есть в моем .emacs
;; Cedet load commands
(add-to-list 'load-path "~/emacs-dir/cedet/cedet")
(load-file "~/emacs-dir/cedet/cedet/common/cedet.el")
;; EDE: activating mode.
(global-ede-mode t)
;; Projects definition
(ede-cpp-root-project "Release-001"
:name "Release-001"
:file "~/Release-001/makefile"
:include-path '("/"
)
:system-include-path '("~/exp/include")
:spp-table '(("SUSE9" . "")
)
)
(ede-cpp-root-project "Release-002"
:name "Release-002"
:file "~/Release-002/makefile"
:include-path '("/"
)
:system-include-path '("~/exp/include")
:spp-table '(("SUSE9" . "")
)
)
Просто чтобы сообщить вам ... Я работаю с консольной версией (-nw) emacs.