Exuberant Ctags#
Program ctags#
-x#
Argument -x
nakazuje programowi ctags, aby tagi z bieżącego wywołania programu ctags zostały wyświetlone do standardowego wyjścia w czytelnym formacie tabelarycznym. Jeśli przekazano jakieś argumenty path
to argument -x
musi pojawić się jeszcze przed pierwszym takim argumentem, aby zainicjować wyświetlanie danych do standardowego wyjścia.
Opis działania#
Prawidłowe użycie argumentu najlepiej objaśnić na zapisie składniowym:
ctags -x [--argument | -argument] [path]
gdzie poszczególne człony oznaczają:
- ctags - ścieżka względna lub bezwzględna do pliku binarnego programu ctags (
ctags.exe
). Wszystko zależy od sposobu uruchamiania programu ctags, np. z systemowej konsoli, ze skrótu do programu czy z innego programu/skryptu. - argument - jeden lub więcej dodatkowych argumentów dostrajających działanie programu ctags.
- path - jedna lub więcej dodatkowych ścieżek do plików/folderów, które będą analizowane przy generowaniu tagów (szczegóły).
Kilka uwag odnośnie stosowania argumentu -x
:
- Argument
-x
pozwala bardzo szybko wyświetlić tylko te tagi, które najbardziej nas interesują. Przykładowo wywołanie"ctags −x −−c−kinds=f *"
zwróci listę wszystkich funkcji ze wskazanych plików, a wywołanie"ctags −x −−c−kinds=v −−file−scope=no *"
zwróci listę wszystkich zewnętrznie widocznych zmiennych globalnych ze wskazanych plików. - Przekazanie wielu argumentów
-x
jeszcze przed pierwszym argumentempath
jest tożsame z przekazaniem jednego takiego argumentu. Ponadto argument-x
przekazany w ten sposób anuluje pozostałe akcje odpowiedzialne za zapisywanie tagów do pliku indeksu. - Przekazanie argumentu
-x
za pierwszym argumentempath
anuluje wyświetlanie danych do standardowego wyjścia. Ponadto tagi z bieżącej generacji zostaną zapisane do pliku indeksu, ale tylko te z argumentówpath
umieszczonych za argumentem-x
będą miały czytelny format tabelaryczny. - Raz włączonego czytelnego formatu tabelarycznego poprzez argument
-x
nie da się już zdezaktywować w bieżącym wywołaniu programu ctags. - Jeśli w bieżącym wywołaniu programu ctags prawidłowo użyjemy argumentu
-x
w połączeniu z argumentem--append
i/lub-a
to program ctags przerwie swoje działanie zwracając jedynie komunikat"ctags: append mode is not compatible with tags to stdout"
. - Argument
-x
zadziała także w sytuacji, kiedy użyty zostanie razem z jakimś argumentem pobierającym informacje ze standardowego wejścia, np.-L -
lub--filter
lub argumentem wyświetlającym informacje do standardowego wyjścia, np. -f - lub -o -. - Czytelny format tabelaryczny # dla wygenerowanych tagów to dodatkowy sposób zapisu tagów, który z perspektywy człowiek powinien ułatwić ich analizę. Kolejne kolumny tego formatu zawierają następujące informacje: nazwa znacznika (
tagname
), pełna postać rodzaju znacznika (kind
) oraz numer linii, ścieżka pliku i fragment kodu, dla których znacznik ten został utworzony.
Prosty przykład:
ctags -x *
ctags -x -R
ctags -R -x
ctags -x -f - * :: zadziała `-x`
ctags -f - -x * :: zadziała '-x'
ctags -x test.js test.html
ctags -x -x test.js test.html :: drugi '-x' jest ignorowany
ctags -x test.js -x test.html :: drugi '-x' jest ignorowany
ctags -x test.js test.html -x :: drugi '-x' jest ignorowany
ctags test.js -x test.html :: w pliku indeksu tagi dla pliku 'test.html' będą miały czytelny format tabelaryczny
ctags -x * > output.txt :: przekierowanie wyniku do pliku
:: Błędne przypadki
ctags -X
ctags -X *
ctags -x
ctags * -x
ctags -x -a
ctags -x --append
Pasek społecznościowy