Статус CEDET и ECB в Emacs 24.2

Я немного запутался в том, что мне нужно сделать, чтобы запустить CEDET и ECB в Emacs 24.2.1.

В Emacswiki есть следующий текст:

Как включить инструменты CEDET, которые были объединены с Emacs

В Emacs 23.2 CEDET был объединен с основным дистрибутивом Emacs. Код конфигурации, описанный в руководствах по CEDET, больше не работает. Например, вы не можете использовать (semantic-load-enable-gaudy-code-helpers) для включения полезных функций.

ЗАДАЧА: объясните, пожалуйста, какой код вам нужен для загрузки наиболее полезных инструментов IDE, предоставляемых CEDET

Я получил базовую конфигурацию для работы со следующим в моем .emacs:

(global-ede-mode 1)
(require 'semantic/sb)
(semantic-mode 1)
  • Q1: Включены ли теперь CEDET и ECB вместе с Emacs? Если да, то почему для него есть отдельный проект на Sourceforge?
  • Q2: Как я могу включить CEDET и ECB в Emacs 24.2? Нужно ли мне по-прежнему загружать исходный код с соответствующих веб-сайтов и устанавливать их отдельно?

person Amelio Vazquez-Reina    schedule 03.10.2012    source источник


Ответы (3)


При этом нужно учитывать несколько вещей:

  • CEDET идет в комплекте с GNU Emacs 24.2, но он немного устарел ... CEDET 1.1 или CEDET от bzr лучше с функциональной точки зрения. Надеюсь, что в Emacs 24.3 будет свежая версия CEDET.
  • У меня есть вилка ECB, которая работает со свежим CEDET (1.1 или bzr) и с CEDET в комплекте с Emacs - но вам нужно установить его вручную
  • Вы можете включить CEDET в комплекте с GNU Emacs или CEDET из bzr с помощью после config, для CEDET 1.1 вы можете использовать следующую конфигурацию .

P.S. Я постараюсь ответить на дополнительные вопросы здесь, или вы можете написать мне напрямую по электронной почте

person Alex Ott    schedule 03.10.2012
comment
Теперь Emacs 24.3 отсутствует, я заметил, что связанная версия cedet - 2.0 (определенная cedet-version), но на sf.net последняя версия cedet - только 1.1 ... - person Kelvin Hu; 27.03.2013
comment
Если возьмешь версию с bzr, то там тоже будет 2.0 (если я правильно помню) ... - person Alex Ott; 27.03.2013
comment
Я больше не могу найти ваш модифицированный ECB. Хотите знать, где его сейчас скачать? Заранее спасибо. - person JohnX; 02.05.2013
comment
Что-то не так с github - я вижу репо в списке, но не могу получить к нему доступ :-( вы можете установить последнюю версию из архива MELPA - person Alex Ott; 03.05.2013

Q1: Да и нет: CEDET входит в комплект, а ECB - нет. Хотя CEDET входит в комплект, основная разработка продолжается за пределами репозитория Emacs по частично историческим, а частично техническим причинам.

Q2: (semantic-mode 1) и (global-ede-mode 1) должно быть достаточно для включения CEDET (нет необходимости (require 'semantic/sb)). Что касается ECB, поскольку он не входит в комплект, ...

person Stefan    schedule 03.10.2012
comment
DECET в первой строке - это опечатка? - person Tobias; 12.07.2016

Браузер кода Emacs великолепен, но мне потребовалось несколько дней, чтобы понять, как настроить его так, чтобы я был удовлетворен моим текущим Emacs 24.5.1. Надеюсь, следующие инструкции помогут сделать его более популярным в будущем.

Шаг 1: в Ubuntu: установите texinfo через:

sudo apt-get install texinfo

Это фактически устанавливает makeinfo, который необходим для установки ecb. На Mac может уже быть установлена ​​программа makeinfo - я не думаю, что мне приходилось устанавливать texinfo на моем Mac.

Шаг 2: Используйте el-get для установки ecb. Поищите в Интернете "el-get emacs", чтобы узнать больше об el-get. Преимущество использования el-get заключается в том, что он автоматически позаботится о добавлении ecb в ваш путь загрузки emacs.

Кстати, кажется, что установка ecb с помощью el-get занимает около 15 минут. Наберитесь терпения и не выходите из emacs, если он сообщает вам, что у него запущен активный процесс.

Когда el-get завершит работу, появится сообщение: ecb успешно установлен (или что-то в этом роде)

Шаг 3: Добавьте следующее в ваш файл инициализации emacs (либо ~ / .emacs.d / init.el, либо ~ / .emacs - внесите изменения в тот из этих двух файлов, который уже присутствует)

;; start of ecb configuration/customization:
;;
(require 'ecb)


(setq stack-trace-on-error t)
(setq ecb-version-check nil)
(setq ecb-layout-name "left15")
(setq ecb-tip-of-the-day nil)
(setq ecb-primary-secondary-mouse-buttons 'mouse-1--mouse-2)


(setq ecb-source-file-regexps
  '((".*" .     (("\\(^\\(\\.\\|#\\)\\|\\(~$\\|\\.\\(pyc\\|elc\\|obj\\|o\\|class\\|lib\\|dll\\|a\\|so\\|cache\\)$\\)\\)")
             ("^\\.\\(emacs\\|gnus\\)$")))))



;;
;; disable global semantic idle scheduler.
;; it doesn't really seem to work all that well in automatically
;; reparsing buffers and it's actually intrusive when i'm typing:

(add-hook 'ecb-activate-hook
          '(lambda()
             (semantic-mode t)
             (ecb-maximize-window-methods)
             (setq global-semantic-idle-scheduler-mode nil)
             ))



(add-hook 'after-save-hook
          '(lambda()
             (when (bound-and-true-p ecb-minor-mode)
               ;; this is to get the methods buffer to refresh correctly.
               ;; semantic idle mode refresh doesn't seem to work all that     well.
               (run-at-time 1 nil 'semantic-force-refresh)
               )
             ))


(set-face-attribute 'ecb-default-general-face nil
                    :inherit 'default)

(set-face-attribute 'ecb-default-highlight-face nil
                    :background "#464646")

(set-face-attribute 'ecb-tag-header-face nil
                    :background "#464646")
;;
;; end of ecb configuration/customization

Шаг 4: перезапустите emacs, откройте исходный файл python (в качестве тестового примера) в emacs, а затем введите: M-x ecb-activate

Если слева вы видите окно со списком методов, а справа - вид исходного файла, значит, все работает.

person Gino    schedule 08.07.2015