exuberant-ctags - exuberant - ctags vim
Excluyendo directorios en CTG exuberantes (2)
En algún momento, puede ser más fácil definir la lista de archivos que desea indexar; guarde esa lista en un archivo y use ctags -L <filename>
para indexar solo unos pocos elegidos.
Esto le permite usar find(1)
para eliminar los directorios que no desea indexar, por ejemplo:
find . -path ./Documentation -prune -o -print > indexme
omitiría todos los archivos en todos los subdirectorios de ./Documentation
.
Estoy trabajando con una base de código muy grande y me resulta útil ser selectivo sobre qué directorios se incluyen para usar con Ctags exuberantes.
La opción --exclude
funciona bien para eliminar nombres de archivos y directorios individuales (con comodines globales), pero no puedo averiguar cómo hacer que se excluyan los patrones de ruta que contienen más de un directorio.
Por ejemplo, es posible que desee excluir las tests
un directorio, pero solo cuando se procesa thirdparty/tests
(bajo Windows). El problema es que si solo uso --exclude=tests
, excluyo demasiados directorios, incluido un directorio de prueba en el código en el que estoy trabajando activamente.
Aquí hay algunas cosas que he probado:
--exclude=thirdparty/tests
--exclude=thirdparty//tests
--exclude=*/thirdparty/tests
--exclude=*//thirdparty//tests
--exclude=thirdparty/tests
Ctags silenciosamente ignora todo esto como lo demuestra un examen del archivo de etiquetas.
¿Cómo puedo excluir un directorio solo cuando está precedido por un directorio principal dado?
ADICIONAL:
Aquí está mi ctags --version
salida:
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert
Compiled: Jul 9 2009, 17:05:35
Addresses: <[email protected]>, http://ctags.sourceforge.net
Optional compiled features: +win32, +regex, +internal-sort
ack -f | ctags -L -
ack
los archivos fuente en un directorio dado. Puede limitar el alcance a un lenguaje específico con ack -f --ruby
o ack -f --type=ruby
. También puede excluir dirs con --ignore-dir
.
Use ack --dump
para ver los tipos de archivos incorporados para ack.