Подтвердить что ты не робот

Завершение кода Emacs для C/С++?

Что вы можете мне порекомендовать?

4b9b3361

Ответ 1

CEDET просто здорово, конечно, нужно некоторое время в начале, но стоит того, но.

Ответ 2

Вы можете попробовать company-mode. Это механизм завершения нескольких буферов в буфере.
Посмотрите screencast, чтобы получить представление о том, как это работает.

Некоторые из back-концов:

И он также доступен через ELPA.

Ответ 3

Вы также можете использовать плагин autocomplete для clang, пока ваш источник компилируется вместе с ним. Ссылки по теме:

Ответ 4

GCCSense

От автора Auto Complete Mode. Он использует gcc для поиска кандидатов на завершение кода, как следует из названия.

emacs gccsense screenshot

Ответ 5

Я стараюсь использовать etags.

Для интеграции emacs: http://www.gnu.org/software/emacs/emacs-lisp-intro/html_node/etags.html

Как запустить etags. http://www.delorie.com/gnu/docs/emacs/etags.1.html

В качестве бонуса это сообщение в блоге описывает немного больше настроек emacs и как использовать etags. http://tulrich.com/geekstuff/emacs.html

Изменить: Чтобы ответить на комментарий, после запуска etags через ваш код, вы можете заполнить слова с помощью C-x t (то, на что оно связано на моей машине.) Или вы можете вызвать метод поиска тегов.

Ответ 6

честно говоря, для меня, как простой старый dabbrev-expand (M-/), да, он не использует какую-либо контекстуальную информацию, отличную от того, какие символы смежны в открытых буферах, но с плюсовой стороны она не использует любая контекстная информация;) это означает, что вы можете заполнить текст, который вы написали сначала в тестах или комментариях.

для других опций http://www.emacswiki.org/emacs/CategoryCompletion

Ответ 7

Когда я редактирую код python в Emacs, мне нравится и использовать pysmell для завершения кода:

http://code.google.com/p/pysmell/

Ответ 8

Я нахожу, что изучение того, как быстро набирать (и иметь приличную память), каждый раз превосходит автоматическое завершение. Как далеко мы должны пойти, чтобы попытаться опустить программирование?