LINUX.ORG.RU

Реквестирую холивар на тему rtags vs gtags

 , ,


0

4

Нашел вот такое чудо, для парсинга использует clang.

https://github.com/Andersbakken/rtags/

Какие преимущества от этой фигни можно получить по сравнению с gtags(gnu global)? Я как ни вертел, разницы особой не увидел(по видео), к тому же у gtags есть поддержка vim, например через gtags-cscope, а тут её придется пилить с нуля.

По своему опыту знаю, что gtags работает лучше и более быстро, чем cscope, но там немного не удобно подключать теги пока что, надо сделать какой-то враппер.

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

https://github.com/OpenGrok/OpenGrok/wiki/Comparison-with-Similar-Tools

Я это всё завел потому что всю жизнь работал в основном с проектами на си, а что там чуваки предложат на практику(учебную) я хз, вполне вероятно на cpp, ковыряца в чужом коде без чего-то такого это мазохизм, надо сразу подобрать для этого какую-то альтернативу заранее пока есть время.

★★★★★

А насколько хорошо gtags умеет парсить C++? С++11 умеет? Полностью?

Begemoth ★★★★★ ()

надо сразу подобрать для этого какую-то альтернативу заранее пока есть время.

Eclipse и прочие тебе вообще сразу не подходят?

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

Уверенно сказать не могу, потому что я на практике с реальными проектами на cpp не работал, говорю же, только си. Работа с си меня полностью устраивала, не представляю что там можно было добавить ещё, использовать clang для парсинга сишного кода я смысла не вижу.

Кстати оказывается gtags двое: http://code.google.com/p/google-gtags/wiki/GTags

Тоже вариант попробовать. Вот тут достаточно полный список утилит такого рода, но нигде ничего не сказано про c++11: http://www.gnu.org/software/global/links.html

А какого-нибудь готового теста под это дело нет? В принципе, учитывая что щас я особо ничего не делаю можно попробовать всё это сравнить.

Есть ещё clang-ctags для вима. Но скорость генерации у него черепашья. Генерит вроде бы хорошо, но там меньше фич по описанию, чем в rtags, ну вот работы как cli и чего-то вроде «интеграции с башем» там точно нет.

Кстати что такого может оказаться в c++11 что нереально распарсить? Мне autocomplete не нужен, для этого есть ycm, он c++11 поддерживает в той мере, в которой его поддерживает clang, производительность отличная.

Нужна навигация по коду, вот я и пытаюсь наступить на все грабли заранее.

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

Eclipse и прочие тебе вообще сразу не подходят?

Ну хз, Autocomplete вима меня устраивал, вообще всё что связано c Си там идеально, а с ним(эклипсом) у меня были какие-то адские тормоза при работе с и c++ что standanole, что с eclim. Получится зоопарк из редакторов тогда, всё остальное-то всё равно в виме.

Плюс я уже привык к YouCompleteMe, насколько я знаю всё остальное такого не умеет.

Кстати eclipse и иже парсит на ходу как clang?

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

Кстати eclipse и иже парсит на ходу как clang?

Eclipse CDT парсит на ходу, конечно. Но там свой парсер.

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

Кстати оказывается gtags двое: http://code.google.com/p/google-gtags/wiki/GTags

Э, не, оно протухло.

------------------------------------------------------------------------
r63 | nig.dsouza | 2007-12-14 01:08:43 +0300 (Fri, 14 Dec 2007) | 2 lines

Upgrading to GTags 2.0.0
Removing old unittests
------------------------------------------------------------------------
e7z0x1 ★★★★★ ()
Ответ на: комментарий от Begemoth

А насколько хорошо gtags умеет парсить C++? С++11 умеет? Полностью?

Приведи пример убийства парсера, я потыкал код разных проектов, вроде бы вся навигация работает.

Я использовал unite+unite-gtags+«tranngocthachs/gtags-cscope-vim-plugin.git», вроде всё что пришло в голову работает. def/ref/grep/context и тп

e7z0x1 ★★★★★ ()
Последнее исправление: e7z0x1 (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.