cscope

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

cscope
Тип инструмент навигации по исходному коду
Написана на Си[1]
Операционные системы Unix-подобные операционные системы, Microsoft Windows
Последняя версия 15.9 (24 июля 2018)
Лицензия Лицензия BSD
Сайт cscope.sourceforge.net

cscope — утилита, предназначенная для навигации по исходному коду. Используется для поиска в исходном коде функций, объявлений, определений и регулярных выражений по заданной строке текста.

Хотя история этой программы начинается во времена PDP-11[1], она до сих пор применяется разработчиками, привыкшими к использованию редактора vi или vim, а также теми разработчиками, которые предпочитают использовать редакторы с текстовым интерфейсом вместо графического. Большая часть функциональности cscope перенесена в современные редакторы с графическим интерфейсом.

Cscope применяется в два этапа. Сначала разработчик создает базу данных cscope. Разработчик может часто использовать find или другую утилиту Unix для получения списка имен файлов, нужных для индексации, в файле cscope.files. Затем разработчик строит базу данных при помощи команды cscope -b -q -k. На втором этапе, разработчик может искать внутри этих файлов при помощи команды cscope -d. Иногда индексацию требуется обновлять, если в файлы были внесены какие-либо изменения.

В разработке программного обеспечения cscope часто является весьма полезной благодаря возможности поиска вызовов функций, так как иногда это единственный способ понять, как работает данный код и что ожидают от функции остальные части программы. cscope может находить вызовы функций, но она не является компилятором и поэтому производит простой поиск в тексте по ключевым словам. Это вызывает некоторые неудобства, связанные с тем, что макросы и повторяющиеся символьные имена могут создавать весьма запутанный граф. Другие программы способны извлекать эту информацию проверкой исходного кода [2] или просмотром сгенерированных объектных файлов [3].

cscope часто используется для поиска содержимого внутри программных файлов, написанных на языках программирования Си/C++, но она также может быть использована и для файлов, написанных на других языках, например, Java, Python, PHP и Perl.

cscope является свободной программой и доступна под лицензией BSD.

Первоначальным разработчиком cscope является Джо Стеффен.

Примечания

[править | править код]