Question

Ce que je veux:

cd c/ra<tab> finalise à ~/code/rails-app et cd c/<tab> affiche une liste de répertoires dans les ~/code

Ce que j'ai actuellement:

c ra<tab> à c rails-app finalise si j'ai un ~/code/rails-app répertoire et c <tab> affiche une liste des répertoires dans les ~/code

En ayant dans mon .zshrc:

c() { cd ~/code/$1; }
_c() { _files -W ~/code -/; }
compdef _c c

Cet outil semble prometteur: https://github.com/flavio/jump mais je comme quelque chose de plus léger.

Était-ce utile?

La solution

fin Tab tels que vous avez décrit, au moins pour les répertoires, devrait être faisable par zsh sans qu'il soit nécessaire d'écrire une fonction zsh.

Ce lien , par exemple , les notes qui frappe /u/l/b puis onglet se développe pour /usr/local/bin à l'invite.

Cela fonctionne pour moi - si je fais un ~/code/rails-app de répertoire tel:

zsh% ls ~/code
another-app       another-dir rails-app
zsh% ls ~/code/rails-app
one two

alors:

zsh% cd c/ra<TAB> # this expands to 'cd code/rails-app'
zsh% cd c/<TAB><TAB> # Double tab, one to expand "c" to "code", 
zsh% #               # second gives me the zsh-completion menu

Je ne peux pas souligner l'option de zsh c'est - j'utilise un ~/.zshrc assez fortement modifiée et les bits de oh-my-zsh . Cette peut être une fonctionnalité donnée par zsh sans avoir besoin d'être activé; sinon, les détails soit dans le premier lien ou quelque part dans oh-my-zsh ou même une version du manuel zsh devrait Aidez-moi. (Je trouve le manuel un peu ... écrasante, pour le moins, cependant).

Je ne crois pas que vous devez écrire une fonction pour obtenir ce comportement -. zsh est certainement capable de le faire

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top