Indeksowanie kodu#

Z racji tego, że moim roboczym systemem operacyjnym jest Windows 7, to dalsze opisy dla wszystkich systemów indeksujących kod źródłowy utworzono i zweryfikowano tylko i wyłącznie w tym jednym systemie operacyjnym.

Spośród wszystkich dostępnych wariantów nawigacji po kodzie najbardziej wyspecjalizowane są systemy indeksujące kod źródłowy #(source code tagging/indexing system). Są to narzędzia analizujące kod źródłowy i oznaczające pewne kluczowe jego elementy za pomocą tagów # (lub też stosujące inną formę indeksacji), które na potrzeby późniejszego przetwarzania zwykle umieszcza się w jakimś indeksie # (np. pliku lub bazie danych). W zależności od danego języka i przyjętego rozwiązania indeksowane mogą być funkcje, zmienne, stałe, klasy, referencje, deklaracje, makra, nazwy symboli, komentarze, ścieżki plików itd. Następnie indeks taki można szybko przeszukiwać, a zwracane wyniki mogą posłużyć do nawigacji po kodzie w konkretnym już edytorze tekstu (np. dzięki wtyczkom z wygodnym GUI).

Z uwagi na sposób analizowania kodu źródłowego wszystkie systemy indeksowania można podzielić na dwie główne grupy:

Obecnie mamy też dostęp do uniwersalnych narzędzi działających w różnych systemach operacyjnych, które pozwalają wybrać dowolny system indeksowania kodu źródłowego (pod warunkiem, że będą one ze sobą zgodne), jak w przypadku bardzo popularnego GNU Global (patrz "Using rtags ang gtags for coding Ruby").

W programie Notepad++ nie ma żadnego wbudowanego mechanizmu indeksowania kodu, ale przy użyciu wtyczek utworzono front-end dla kilku rozwiązań z grupy pierwszej. Obsługa LSP/LSIF to wciąż pieśń przyszłości (bug 4440, dyskusja na forum), dlatego też dalsze opisy dotyczyć będą tylko tych systemów indeksowania kodu, które możemy wypróbować bezpośrednio w programie NPP. W przypadku pozostałych rozwiązań należy poszukać dodatkowych informacji na własną rękę. Oto kilka przydatnych materiałów:

Pasek społecznościowy

SPIS TREŚCI AKTUALNEJ STRONY

Indeksowanie kodu (H1)