Esta solução tem a desvantagem de ter que especificar cada unidade, mas funciona para mim:
zstyle ':completion:*' fake-files '/:c' '/:d'
Estou no Win7 x64, no Cygwin 1.7 e no zsh (e usando oh-my-zsh). Novato Zsh aqui.
Eu testei o autocompletar do zsh que não está funcionando no cygwin e tentei solução lá, mas sem sorte.
Minha tabela de montagem:
C: on /c type ntfs (binary,posix=0,user,noumount,auto)
D: on /d type ntfs (binary,posix=0,user,noumount,auto)
F: on /f type ntfs (binary,posix=0,user,noumount,auto)
Como você pode ver, estou usando /c, /d and /f
para minhas unidades. Parte do motivo para mudar isso do prefixo /cygdrive
padrão é manter o compat com Msysgit
Infelizmente depois de alterar o prefixo da unidade, a conclusão do zsh não funciona
digitar cd /f/code/Por<tab>
não completa mais a pasta ou as opções presentes. Ele funciona bem no Bash: (
Se eu fizer o cd em /f
e, em seguida, digitar cd Por
- a conclusão funciona.
Como faço isso funcionar em qualquer lugar?
Eu tive um problema semelhante. Se descobrisse uma solução: link
Na minha situação, o problema ocorre apenas ao executar o cygwin como outro usuário quando você instalou o cygwin. E isso só pode ocorrer quando esse usuário em execução é um administrador (não testado com usuário não privilegiado). O problema pode ser: Como Administrador, você pode "sempre" modificar arquivos, mesmo se chmod não permitir isso. A compinit não sabe sobre essa situação (é um aplicativo unix), mas descobre que você tem acesso a ela - esse é o problema.