Exuberant Ctags#
Program ctags#
--append#
Argument --append nakazuje programowi ctags, aby tagi z bieżącej generacji zostały dołączone do już istniejących tagów w pliku indeksu (to samo, co argument -a) lub całkowicie je zastępowały (domyślnie). Jeśli przekazano jakieś argumenty path to argument --append musi pojawić się jeszcze przed pierwszym takim argumentem, aby w ogóle zadziałał. Argument --append to jeden z odroczonych argumentów.
Opis działania#
Prawidłowe użycie argumentu najlepiej objaśnić na zapisie składniowym:
ctags --append[=value] [--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. value - jedna z dwóch wartości logicznych wpływająca na sposób dodawania tagów do pliku indeksu (wielkość znaków nie ma znaczenia):
"yes","on","1"lub""- dołącza tagi z bieżącej generacji do już istniejących tagów w pliku indeksu. Jeśli plik indeksu nie istnieje to najpierw zostanie on utworzony, ale bez początkowych pseudo tagów. Alternatywnie można skorzystać z identycznie działającego skróconego argumentu-a.Jeśli któryś z wygenerowanych tagów istniał już w pliku indeksu to nie zostanie do niego dodany, co ma zapobiec występowaniu zduplikowanych tagów. Warto podkreślić, że porównuje się całe tagi, a nie tylko ich nazwy i/lub ścieżki, dlatego dwa tagi różniące się choćby jednym znakiem stanowią osobne tagi.
"no","off"lub"0"- tworzy nowy plik indeksu dla tagów z bieżącej generacji (włącznie z początkowymi pseudo tagami). Jest to domyślne zachowanie i jest ono równoznaczne z brakiem przekazania argumentu--append.
- 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).
Trzeba wyraźnie zaznaczyć, że argument --append=yes nie zadziała w sytuacji, kiedy tagi z bieżącej generacji spróbujemy wyświetlić do standardowego wyjścia poprzez argument -f -, -o -, -x lub --filter, o czym zostaniemy poinformowani stosownym komunikatem "ctags: append mode is not compatible with tags to stdout".
Prosty przykład:
ctags --append=yes *
ctags --append=on *
ctags --append=1 *
ctags --append="" *
ctags --append= *
ctags --append *
ctags -a *
ctags --append=no *
ctags --append=off *
ctags --append=0 *
ctags *
ctags --append=yes -R
ctags -R --append=yes
ctags --append=yes test.js test.html
ctags --append=yes --append=no test.js
ctags --append=no --append=yes test.js
ctags --append=yes -Lpliki
ctags -Lpliki --append=yes
:: Błędne przypadki
ctags --append
ctags --append=cos
ctags --append=" "
ctags * --append=yes
ctags test.js --append=yes
ctags --append -f - *