farmacos cliente vim ctrlp

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?