Я создал zsh из источников и установил его в /usr/local/bin/zsh
. Была упакованная установка в /usr/bin/zsh
также.
Теперь, когда я устанавливаю некоторые другие пакеты, они иногда помещают свой файл завершения в /usr/share/zsh/vendor-completions/_toolname
. Проблема состоит в том, что мой пользовательский zsh не распознает те файлы. Я пытался сделать символьные ссылки на те файлы в /usr/local/share/zsh/vendor-completions
(Я должен был создать каталог также), но не имел никакого успеха.
При создании zsh я просто работаю ./configure
сценарий, таким образом, PREFIX
остался неизменным (и это /usr/local
) по умолчанию.
Как заставить завершения поставщика работать в моем случае?
Завершения загружаются из каталогов от fpath
массив. Так каталог /usr/share/zsh/vendor-completions
должен быть явно включен в него:
# do it before 'compinit' in ~/.zshrc
fpath=($fpath /usr/share/zsh/vendor-completions)
Я все еще понятия не имею, почему это не было включено по умолчанию.