Команда ctags
создаёт файл тегов для использования с редакторами ex и vi из указанных исходных файлов C, Pascal, FORTRAN, yacc, lex и LISP.
![Использование в Linux команды ctags с примерами](/sites/default/files/images/2024-07/ctags-command-1.png)
Содержание
Основы
Команда ctags
в операционной системе Linux используется для работы с классическими редакторами. Это обеспечивает быстрый доступ к файлам (например, быстрый просмотр определения функции).
Файл тегов состоит из локаторов объектов, специфичных для языка программирования (таких, как функции и определения типов) в исходных файлах.
Пользователь может запускать теги или ctags
внутри каталога, чтобы создать простой индекс исходных файлов во время работы. Редакторы с поддержкой тегов, такие как vi/vim, могут затем обращаться к индексному файлу этих тегов, чтобы вы могли следовать ссылкам. По сути, эта команда генерирует файлы тегов для исходного кода.
Утилита также используется для создания файла перекрёстных ссылок, в котором перечислены и содержатся сведения о различных исходных объектах, найденных в наборе удобочитаемых языковых файлов.
Синтаксис
$ tags [опции] [файл(ы)]
Параметры
-a
Используется для добавления тегов к существующему файлу тегов. Эквивалентно
–append
. [Игнорируется с-e]
-B
Используется для шаблонов обратного поиска (например,
?regexp?
). [Игнорируется с-e
]-e
Используется для вывода файла тегов для использования с Emacs. Если эта программа запускается с помощью
etags
имени, эта опция уже включена по умолчанию-F
Используется для поиска по шаблонам (например,
/regexp/
) (по умолчанию). [Игнорируется с-e
]-i
Аналогичен параметру
–c-types
и сохраняется для обеспечения совместимости с более ранними версиями-n
Эквивалентен
–excmd=number
-N
Эквивалентен
–excmd=pattern
-o
Эквивалентен
-f
файлу тегов-p
Используется в качестве каталога по умолчанию для каждого предоставленного исходного файла, если исходный файл еще не указан как абсолютный путь
-R
Эквивалентен
–recurse=yes
-u
Эквивалентен
–sort=no
(то есть «несортированный»)-V
Включает подробный режим. При этом выводится краткое сообщение, описывающее, какое действие предпринимается для каждого файла, рассматриваемого
ctags
--help
Выводит общий синтаксис команды вместе с различными параметрами, которые можно использовать с командой
ctags
, а также дает краткое описание каждого параметра
Примеры использования в Linux команды ctags
ctags с Vim
Переходим в выбранный каталог, где находится файл. Например:
$ /home/algoscale/Desktop/pers/angularapp
Запускаем ctags
рекурсивно по всему каталогу по выбору, чтобы создать файл тегов:
$ ctags -R *
Для поиска определённого тега и отображения выходных данных в Vim для его определения, выполняем в своей оболочке следующую команду:
$ vim -t "тег"
В результате появляется экран с соответствующим результатом.
Тегом может являться, например, заголовок.
Заключение
В Linux команда ctags
, собирающая информацию об именах и позициях переменных, функций и процедур, встречающихся в исходном коде компьютерных программ, может оказаться очень полезной. Формат сгенерированного утилитой тег-файла поддерживается большим количеством текстовых редакторов.