Если вы используете пользовательский искатель через ctrlp_user_command
несколько вариантов, в том числе ctrlp_show_hidden
ctrlp_custom_ignore
и wildignore
моделей VIM, в которые не используются CtrlP (see documentation).
г: ctrlp_show_hidden
...
Примечание: не применяется, когда команда определяется с | г: ctrlp_user_command | используется.
г: ctrlp_custom_ignore
...
Примечание # 1: по умолчанию | wildignore | и | g: ctrlp_custom_ignore | только применяется, когда | globpath() | используется для сканирования файлов, поэтому эти параметры не применяются, когда команда, определенная с помощью | g: ctrlp_user_command | есть используется.
Таким образом, вы остаетесь на милость своего поискового инструмента, в данном случае, ag. К счастью, вы можете сделать пару вещей, которые должны дать вам поведение, которое вы хотите.
Чтобы получить ваши скрытые точечные файлы появляться, но по-прежнему уважать ignore
файлов, используйте опцию --hidden
для ая:
let g:ctrlp_user_command = 'ag %s -l --nocolor --hidden -g ""'
Теперь для определения шаблонов, чтобы игнорировать, вы можете использовать AG собственных игнорировать файл .agignore. Это может быть каталог или глобальный, который будет проверяться при каждом запуске. Вы помещаете это в свой домашний каталог ~/.agignore
.
Я понимаю, что может быть приятно иметь vims wildignore
позаботиться о шаблонах, но с .agignore
вы получаете бонус этих ограничений при использовании ag из cli. Если вы хотите искать все файлы, просто используйте команду ag -u
, которую вы упомянули, чтобы обойти любые файлы ignore
.
В качестве окончательного словаря есть формат словаря, который вы можете использовать для определения g:ctrlp_user_command
, который содержит ключ ignore
, который заставит CtrlP использовать шаблоны wildignore
. Тем не менее, я никогда не пробовал это, и в документации указывается потенциальный удар производительности. Вы можете попробовать этот метод, если вам не нравится мое другое предлагаемое решение (see documentation).
Примечание № 3: если только Словарь | формат, а «ignore» - , заданный и установленный в 1, | wildignore | и | g: ctrlp_custom_ignore | Параметры не применяются, когда эти пользовательские команды используются.Когда нет, по умолчанию «ignore» устанавливается в 0, чтобы сохранить преимущество в использовании внешних команд.
Отвечает ли мой ответ на вашу проблему? или вам нужна дополнительная информация? – mcanfield
Это точно! Забыл отметить ваш ответ как принято, извините за это. Большое спасибо! – Richard