отключить завершение cedet / семантического кода для режима lisp - PullRequest
5 голосов
/ 22 июля 2011

Я настроил завершение cedet / семантического кода для своих проектов на c ++ (используя это руководство: http://alexott.net/en/writings/emacs-devenv/EmacsCedet.html), но не хочу, чтобы все или его помощники (как мне кажется, автоматически) предлагались в режиме lisp.

Итак, мой вопрос: как отключить их в режиме lisp или включить их только в режиме c ++.

Спасибо, Рене.

1 Ответ

3 голосов
/ 22 июля 2011

Я думаю, что вам нужно немного изменить конфиг, который есть в статье - там используется много глобальных режимов, например:

(global-srecode-minor-mode 1)
(global-semantic-mru-bookmark-mode 1)

и т.д.. Вы можете включить соответствующие semantic-mru-bookmark-mode, srecode-minor-mode и т. д. в общем хуке режима C, например:

(defun my-c-mode-cedet-hook ()
  (semantic-mru-bookmark-mode 1)
  ;; .....
  )
(add-hook 'c-mode-common-hook 'my-c-mode-cedet-hook)

Или отключите эти режимы только для Lisp ... Другие режимы включают semantic-auto-parse-mode, semantic-idle-summary-mode, semantic-idle-scheduler-mode - вы можете получить этот список, используя M-x apropos semantic.*mode

И главное здесь - вам нужно использовать semantic-load-enable-minimum-features в вашей конфигурации, чтобы включить минимальное количество функций по умолчанию, и включить другие необходимые функции только в перехватчике режима C / C ++ ...

...