Zsh achèvement des formules d'infusion

12

Sous OS X, existe-t-il un moyen d'avoir des formules Zsh (j'utilise Oh-my-zsh ) complètes?

Par exemple

$ brew install em<TAB>

pourrait s'étendre à:

$ brew install emacs
Josh
la source

Réponses:

4

Homebrew fournit sa propre réalisation. Vous avez juste besoin de lier le fichier $(brew --prefix)/Library/Contributions/brew_zsh_completion.zshà _brewquelque part dans votre $fpath. (Voir commentaire au début de https://github.com/Homebrew/homebrew/blob/master/Library/Contributions/brew_zsh_completion.zsh )

zsh-completionsa récemment supprimé son _brewachèvement en faveur de ce fichier, voir https://github.com/zsh-users/zsh-completions/issues/305 .


Mise à jour 2016-04-19: À un moment donné ( 1 ) Homebrew a de nouveau mis à jour sa gestion de l'achèvement de zsh. Maintenant, si vous installez zsh via Homebrew, cela devrait "simplement fonctionner". Le fichier est installé sur /usr/local/share/zsh/site-functions/_brew.

Orangenhain
la source
Pour toute personne intéressée par ces nouvelles fonctions d'achèvement $fpathet $FPATHpour les accueillir Zsh, ce Q&R peut être informatif.
Amelio Vazquez-Reina
12

Essayez d'installer la zsh-completionsformule.

$ brew info zsh-completions
zsh-completions: stable 0.10.0, HEAD
https://github.com/zsh-users/zsh-completions
Not installed
From: https://github.com/Homebrew/homebrew/commits/master/Library/Formula/zsh-completions.rb
==> Caveats
To activate these completions, add the following to your .zshrc:

  fpath=(/usr/local/share/zsh-completions $fpath)

You may also need to force rebuild `zcompdump`:

  rm -f ~/.zcompdump; compinit

Additionally, if you receive "zsh compinit: insecure directories" warnings when attempting
to load these completions, you may need to run this:

  chmod go-w /usr/local/share

Il semble également que zsh puisse avoir une certaine compatibilité avec les compléments bash . Vous pouvez essayer cela en conjonction avec la bash-completionsformule.

cpugeniusmv
la source
2
compinit -idevrait résoudre les avertissements "répertoires non sécurisés" plutôt que chmod.
Thomas Hughes
pour l'erreur "répertoires non sécurisés", utilisez compauditpour déterminer quels répertoires doivent voir leurs autorisations modifiées
user2561747