Завершение табуляции, такое как вы описали, по крайней мере, для каталогов, должно выполняться zsh
без необходимости писать функцию zsh
.
Эта ссылка, например, отмечает, что набрав /u/l/b
, затем вкладка расширяется до /usr/local/bin
в приглашении.
Это работает для меня - если я сделаю каталог ~/code/rails-app
таким:
zsh% ls ~/code
another-app another-dir rails-app
zsh% ls ~/code/rails-app
one two
потом:
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
Я не могу указать, что это за вариант zsh
— я использую довольно сильно модифицированный ~/.zshrc
и немного oh-my-zsh
. Это может быть функциональностью, предоставленной zsh
, без необходимости включения; если нет, подробности либо в первой ссылке, либо где-то в oh-my-zsh
, либо даже в какой-то версии руководства по ZSH. помощь. (Я нахожу руководство немного... подавляющим, если не сказать больше).
Я не считаю, что вам нужно писать функцию для достижения такого поведения - zsh
определенно может это сделать.
person
simont
schedule
16.05.2012