cliente - Usa ag en ctrlp+vim
ctags vim (1)
Si está utilizando un buscador personalizado a través de ctrlp_user_command
, ctrlp_show_hidden
no usa varias opciones, como ctrlp_show_hidden
ctrlp_custom_ignore
y los patrones wildignore
de vim, (no se puede utilizar CtrlP) ( consulte la documentación ).
g: ctrlp_show_hidden
...
Nota: no se aplica cuando un comando definido con | g: ctrlp_user_command | esta siendo usado.
g: ctrlp_custom_ignore
...
Nota # 1: por defecto, | wildignore | y | g: ctrlp_custom_ignore | solo se aplica cuando | globpath () | se utiliza para buscar archivos, por lo tanto, estas opciones no se aplican cuando un comando definido con | g: ctrlp_user_command | esta siendo usado.
Así que te dejas a merced de tu herramienta de búsqueda, en este caso, ag. Afortunadamente, puedes hacer un par de cosas que deberían darte el comportamiento que deseas.
Para hacer que aparezcan los archivos de puntos ocultos, pero aún así respetar los archivos ignore
, use la opción --hidden
para ag:
let g:ctrlp_user_command = ''ag %s -l --nocolor --hidden -g ""''
Ahora, para definir patrones a ignorar, puede usar el propio archivo de ignorar .agignore . Esto puede ser una por directorio o una global que AG verificará en cada ejecución. Usted coloca eso en su ~/.agignore
inicio ~/.agignore
.
Entiendo que puede ser bueno tener a vims wildignore
se encargue de los patrones, pero con .agignore
obtienes el bono de esas restricciones cuando usas AG desde el cli. Si desea buscar todos los archivos, simplemente use el comando ag -u
que mencionó para omitir los archivos ignore
.
Como último dato, hay un formato de Diccionario que puede usar para definir g:ctrlp_user_command
que contiene una clave de ignore
que hará que CtrlP use patrones de wildignore
. Sin embargo, nunca he intentado esto y la documentación señala un posible impacto en el rendimiento. Puede probar este método si no le gusta mi otra solución propuesta ( consulte la documentación ).
Nota # 3: a menos que el | Diccionario | se usa el formato y ''ignorar'' se define y se establece en 1, el | wildignore | y | g: ctrlp_custom_ignore | las opciones no se aplican cuando se usan estos comandos personalizados. Cuando no está presente, ''ignorar'' se establece en 0 de forma predeterminada para conservar la ventaja de rendimiento del uso de comandos externos.
Quiero usar ag (buscador de plata) con ctrlp y vim. Tengo esto en mi .vimrc:
if executable("ag")
set grepprg=ag/ --nogroup/ --nocolor
let g:ctrlp_user_command = ''ag %s -l --nocolor -g ""''
endif
let g:ctrlp_show_hidden = 1
set wildignore+=*/tmp/*,*.so,*.swp,*.zip,*/.tmp/*,*/.sass-cache/*,*/node_modules/*,*.keep,*.DS_Store,*/.git/*
Quiero que ctrlp incluya archivos ocultos pero esos están ocultos. Si agrego -u
al comando ag, muestra todos los archivos ocultos pero no respeta el comodín o .gitignore. ¿Es posible hacer que se respeten estos?