Привет всем!
Хочу рассказать об одном очень интересном инструменте, который на ЛОРе, незаслуженно обходят вниманием. Старожилы, скорее всего, должны помнить его, так что для них новостью будет только то, что проект живет и потихоньку развивается, новая версия вышла где-то с год назад и присутствует активность в svn.
Source Navigator - это открытый (GPL2) инструмент для анализа кода. История его началась, с открытия исходных текстов компанией RH в 2000 году (о чем была новость на лоре), далее проект переехал на Source Forge где развивался на открытых началах до 2003 года и заглох.
Второе дыхание проекту дала команда Source Navigator NG, форкнула проект в виде Source Navigator NG, последняя версия которого вышла 29 марта 2010 года.
SN написан на C + Tk в качестве тулкита. Это очень быстрый и функциональный инструмент, который поможет разобраться в большом сложном проекте. SN поддерживает такие языки программирования как C, C++, Java, Python, Php, Tcl.
Интерфейс состоит из двух главных окон: окна с названием Symbols и окна «редактора».
Окно Symbols позволяет просматривать проект и всячески управлять им, к слову сказать, проект, в понятиях SN - это просто набор любых текстовых файлов. Проект можно просматривать в виде списка элементов, таких файлов, классов, функций, констант и т.д. При двойном щелчке по элементу списка открывается файл, где этот элемент находится.
Окно «редактора» не случайно взято в кавычки, кроме возможностей редактирования текста, там есть инструменты для Grep'а по всему проекту, инструменты для рисования диаграмм наследования классов, диаграмм include'ов (для C/C++ кода) и куча других возможностей, о многих из которых я не знаю :)
SN может выступать в качестве полноценной IDE, есть поддержка нескольких Build Target's, возможность подключения стороннего дебаггера.
В общем, это отличный инструмент для программистов, не страдающих тулкитофобией и боязнью сочетания tcl/tk.
На скриншоте Source Navigator NG 4.2 с открытым проектом python-gtkmvc, OpenSuSE 11.3, Gnome 2.30.
>>> Просмотр (1280x1024, 697 Kb)