Zsh: завершение каталога хеширования

Я настроил псевдоним каталогов с помощью команды hash -d hashname=/path/to/directory . Завершение для этих псевдонимов длится долгое время следующим образом:

 % hashn<TAB> # becomes hashname, pressing <ENTER> works like cd /path/to/directory 

Несколько раз назад это перестало работать. Теперь, когда псевдонимы являются завершаемыми, только если начинается с знака ~ :

 % ~hashn<TAB> # only this works 

Есть ли способ получить предыдущее поведение?

У вас были опции auto_cd и cdable_vars . С помощью auto_cd , если вы auto_cd каталог как имя команды, будет подразумеваться команда cd . С cdable_vars , если каталог не существует или команда не существует с auto_cd , тогда имя просматривается в хэш-таблице каталога.

Пока вы используете систему завершения «нового стиля» ( compinit ), в которой oh-my-zsh включается, имя будет предлагаться как завершение, если это необходимо.