Cscope
Cscope je nástroj umožňující programátorům nebo vývojářům prohledávat zdrojové kódy v jazyce C nebo C++ (s omezenou podporou i pro jiné jazyky). Často se používá ve velmi rozsáhlých projektech pro prohledávání zdrojových kódů, vyhledávání funkcí, deklarací, definic a textových řetězců zadaných pomocí regulárních výrazů. Cscope je svobodný software dostupný pod licencí BSD. Základní program pracuje v konzolovém režimu nebo v textovém rozhraní. Původním vývojářem cscope je Joe Steffen.

Historie 

Historie cscope sahá do doby počítačů PDP-11, ale je stále používán vývojáři, kteří dávají přednost textovým editorům pracujícím v textovém prostředí, jako je vi nebo vim, před editory používajícími grafické uživatelské rozhraní (GUI). Funkcionalita cscope je však dostupná v různé míře i v mnoha moderních editorech používajících GUI.

Použití 

Před používáním cscope je nutné vytvořit cscope databázi. Pro získání seznam jmen souborů, ze kterých se má vytvořit indexový soubor nazývaný cscope.files, se často používá příkaz find nebo jiný unixový nástroj. Pak se příkazem cscope -b -q -k vytvoří vlastní databáze pro cscope. Volba -k způsobí, že se nebude prohledávat adresářový podstrom /usr/include, který obsahuje hlavičkové soubory jádra operačního systému nebo standardní knihovny libc jazyka C. Oindexované soubory pak lze prohledávat pomocí příkazu cscope -d. Pokud dojde ke větší změně zdrojových kódů, je nutné index vytvořit znovu.

Při vývoji softwaru je velmi užitečná možnost vyhledávat, odkud se určitá funkce volá, protože tím lze zjistit, co ostatní části programu od funkce očekávají. Cscope umí najít jak místa, odkud se funkce volá, tak jaké funkce volá ona sama. Cscope ale není překladač a analýzu textu provádí hledáním klíčových slov, což může působit potíže, protože makra a duplicitní jména mohou generovat chybné výsledky. Existují jiné programy, které umí získat tyto informace syntaktickou analýzou zdrojového kódu nebo čtením vygenerovaných cílových souborů.

Cscope byl vytvořen pro prohledávání obsahu zdrojových kódů v jazyce C, ale může být používán (s určitými omezeními) i pro zdrojové kódy v jazyce C++ a Java.

GUI 

Cscope může v prostředí KDE používat grafické uživatelské rozhraní nazývané Kscope, které navíc pro ulehčení použití integruje textový editor Kate. Projekt KScope však není od roku 2012 udržovaný.

Další grafické uživatelské rozhraní využívající PyQT4 se nazývá Seascope; pro ulehčení použití integruje editor založený na editační komponentě Scintilla.

CCTree je nativní zásuvný modul pro Vim, který integruje scsope do editoru Vim a nabízí funkcionalitu podobnou Kscope a Seascope.

Odkazy

Reference

Související články 

 ctags
 Křížový odkaz
 LXR Cross Referencer – nástroj pro procházení zdrojových kódů pomocí webového prohlížeče s použitím hypertextových odkazů.
 OpenGrok

Externí odkazy 

 Stránka projektu cscope na SourceForge (včetně podrobné historie)
 Nástroje pro navigaci ve zdrojových kódech

Programovací software
Unixové programátorské nástroje