Exuberant Ctags#
Program ctags#
--sort#
Argument --sort
odpowiada za włączenie (domyślnie) lub wyłączenie (to samo, co argument -u
) sortowania tagów pochodzących z bieżącego wywołania programu ctags. Argument --sort
to jeden z odroczonych argumentów i jest on ignorowany w trybie etags.
Opis działania#
Prawidłowe użycie argumentu najlepiej objaśnić na zapisie składniowym:
ctags --sort=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 trzech wartości wpływająca na sposób sortowania wygenerowanych tagów (wielkość znaków nie ma znaczenia):
"yes"
- tagi z bieżącej generacji zostaną posortowane w kolejności alfabetycznej A-Z (z uwzględnieniem wielkości znaków). Jest to domyślne zachowanie i jest ono równoznaczne z brakiem przekazania argumentu--sort
."foldcase"
- tagi z bieżącej generacji zostaną posortowane w kolejności alfabetycznej A-Z (bez uwzględniania wielkości znaków)."no"
- tagi z bieżącej generacji nie podlegają sortowaniu. Alternatywnie można skorzystać z identycznie działającego skróconego argumentu-u
.
- 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).
Sortowanie # dla tagów z bieżącej generacji oznacza zarówno uporządkowanie ich w kolejności alfabetycznej A-Z (z/bez uwzględniania wielkości znaków), jak i usunięcie wszystkich duplikatów.
Jeśli przekażemy wiele argumentów --sort
(lub jego krótszej wersji -u
) to decydujący będzie tylko ten ostatni. Trzeba wyraźnie zaznaczyć, że pseudo tag !_TAG_FILE_SORTED dla pliku indeksu jest ustalany w oparciu o wartość ostatniego argumentu --sort
, który wystąpił przed argumentem path
, mimo że o sortowaniu i tak zadecyduje ostatni argument --sort
przekazany przy wywołaniu programu ctags. Z tego też względu zaleca się umieszczanie ostatniego argumentu --sort
jeszcze przed pierwszym użyciem argumentu path
.
Prosty przykład:
ctags --sort=yes *
ctags * --sort=yes
ctags *
ctags --sort=foldcase *
ctags * --sort=foldcase
ctags --sort=no *
ctags * --sort=no
ctags * -u
ctags --sort=no -R --sort=yes :: sortowanie włączone
ctags --sort=yes test.js test.html :: sortowanie włączone
ctags --sort=no --sort=yes test.js test.html :: sortowanie włączone
ctags --sort=no test.js --sort=yes test.html :: sortowanie włączone
ctags --sort=no test.js test.html --sort=yes :: sortowanie włączone
ctags --sort=yes -R --sort=no :: sortowanie wyłączone
ctags --sort=no test.js test.html :: sortowanie wyłączone
ctags --sort=yes --sort=no test.js test.html :: sortowanie wyłączone
ctags --sort=yes test.js --sort=no test.html :: sortowanie wyłączone
ctags --sort=yes test.js test.html --sort=no :: sortowanie wyłączone
:: Błędne przypadki
ctags --sort
ctags --sort=
ctags --sort=on
ctags --sort=1
ctags --sort=cos
ctags --sort=""
ctags --sort=" "
ctags --sort=off
ctags --sort=0