Respostas:
Supondo que você esteja usando o GNU ls, você pode especificar as cores com a variável de ambiente LS_COLORS (observe que esse é um lsrecurso do GNU e não é específico do zsh).
O GNU Coreutils possui um programa chamado dircolorspara ajudá-lo a converter um arquivo de configuração fácil de editar em uma variável LS_COLORS adequada (complicada). Consulte man dircolorso comando e man dir_colorsa sintaxe do arquivo de configuração.
Você pode
dircolors --print-database >! dircolors.defaultpara salvar os padrões (ele contém algum texto de explicação) e modifique-o.Uma vez feito, você precisará dircolorstransformar isso em um LS_COLORS adequado. Observe que as dircolorssaídas nos formatos bash e csh, pois zshvocê deve usar a bashsaída-formatada.
PS: Use em ls --color=autovez de ls --color=tty.
LS_COLORnão funciona por padrão no zsh por algum motivo. Veja as inúmeras outras postagens queixam-se disso: 1) superuser.com/questions/700406/zsh-not-recognizing-ls-colors 2) github.com/robbyrussell/oh-my-zsh/issues/5349