LINUX.ORG.RU

системы индексации/посказок/автодополнея кода с++ (в kdevelop ,emacs и вообще)


0

0

Hi all. Использую kdevelop версии 3.3.3 Насколькоя разобрался в kdevelop-е есть две независимые системы индексации кода, первая - внутренняя, она собсно и обеспечивает автодополнение - настраивается через опции проекта в разделе c++ specific, на закладке auto completion, на этой же закладке можно проиндексировать внешнюю либу. И вторая система чрез ctags - работа с ней через отдельный плагин с таким же названием.

1. Теперь вопрос - зачем две системы? Чего может одна из них и неможет другая?

2. Как заставть встроенную ситему индексировать файлы без расширения? (вся библеотека STL имеет хедеры без расширения).

3.В emacs какие системы авто дополниея есть (какие плагины)?

Какие вообще системы индексирования/автодополнения наиболее продвинуты? (поддержка областей видимости, уровней доступа, комментарии в подсказках,в общем на уровне NeatBeans в java)


>1. Теперь вопрос - зачем две системы? Чего может одна из них и неможет другая?

imho они обе работают через ctags. Просто в c++ specific -> auto completion задаются внешние либы, которые могут использоваться в нескольких проектах.

> 2. Как заставть встроенную ситему индексировать файлы без расширения? (вся библеотека STL имеет хедеры без расширения).

Шаблоны для индексации есть в kdevelop 3.3.91(kdevelop.org , в переведенном варианте этой новости еще нет) но он пока весьма глючный.

Еще есть cscope, который вроде парсит еще и cross-references(вызовы данной функции и т.д.). Но он только для C. Для него есть frontend к kde - kscope.

YesSSS ★★★
()
Ответ на: комментарий от YesSSS

>Шаблоны для индексации есть в kdevelop 3.3.91(kdevelop.org , в переведенном варианте этой новости еще нет) но он пока весьма глючный.

В смысле шаблоны поиска файлов для индексации(*.h * *.hpp ...).

YesSSS ★★★
()
Ответ на: комментарий от YesSSS

>1. Теперь вопрос - зачем две системы? Чего может одна из них и неможет другая?

>imho они обе работают через ctags. Просто в c++ specific -> auto completion задаются внешние либы, которые могут использоваться в нескольких проектах.

неа я ctags прибивал у себя полностью - всё равно первая работала.

stuav
() автор топика
Ответ на: комментарий от stuav

Буду знать про ctags. =)

Code-completion они сейчас там активно пилят(3.3.91) и меняют, вроде как-раз через свой парсер для C++. Он там сейчас уже весьма нормальный(осмысленный), но тормозной. Может к выходу 3.4 станет шустрее.

YesSSS ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.