#zshrc
#zshrc
Вопрос:
Я пытаюсь настроить свой ~/.zshrc, чтобы завершение кода в файлах / каталогах работало так, как мне нужно. Я нашел в Интернете различные источники по синтаксису завершения zstyle и пример кода, но некоторые его части по-прежнему являются для меня черной магией.
Пока что я здесь, после некоторой возни и тестирования :
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' 'm:{a-zA-Z}={A-Za-z} l:|=* r:|=*'
Вот что я понял из этого :
zstyle ':completion:*'
означает, что мы собираемся определить значение конфигурации для завершенияmatcher-list
это конфигурация, которую мы обновляем, здесь она определяет, как zsh сопоставляет файлы / каталог, чтобы предложить'm:{a-zA-Z}={A-Za-z}' 'm:{a-zA-Z}={A-Za-z} l:|=* r:|=*'
являются ли аргументы (значения) для передачи вmatcher-list
конфигурацию.- Здесь у меня есть два аргумента, разделенных пробелом. Это означает, что zsh сначала попытается найти файлы, соответствующие первому аргументу, и, если он ничего не нашел, попробует файлы, соответствующие второму аргументу
И здесь это становится нечетким :
- Я понимаю, что
'm:{a-zA-Z}={A-Za-z}'
это делает совпадение нечувствительным к регистру, но я не совсем понимаю синтаксис. - Я также понимаю, что
'm:{a-zA-Z}={A-Za-z} l:|=* r:|=*'
по-прежнему не чувствителен к регистру, но также ищу совпадение во всей строке, а не только в начале. Но я тоже не понимаю синтаксис.
Может ли кто-нибудь подтвердить мои предыдущие утверждения и исправить их, если это необходимо, а также подробно описать синтаксис аргументов voodoo?
Спасибо
Редактировать: О, и извините, если вопрос больше подходит для superuser.com Мне было трудно понять, какой сайт лучше подходит для этого.
Ответ №1:
Привет, документ zsh для этого находится по адресу
http://zsh.sourceforge.net/Doc/Release/Completion-Widgets.html#Completion-Matching-Control