Destaque de preenchimento automático do caminho ZSH

Destaque de preenchimento automático do caminho ZSH

No ZSH, quando estou tentando cdentrar em um diretório e usar tab para obter a lista de diretórios, alguns deles têm um destaque verde muito brilhante. Percebi que o realce do plano de fundo é o mesmo dos diretórios em ls. Mudei LS_COLORna esperança de que isso resolvesse o problema, mas o destaque do preenchimento automático permanece o mesmo. Eu verifiquei as chaves/configurações de conclusão do zstyle também, mas não encontrei nenhuma para diretórios lá. Alguém poderia me ajudar a consertar isso?

1]

Obrigado

EDIT: Aqui está um link para o meu .zshrcarquivo:https://dpaste.org/V8oE

EDIT2: Consegui resolver isso alterando o tema no meu terminal (Konsole). Não acho que tenha sido problema do ZSH.

Responder1

A conclusão colorida do zsh é configurada com o list-colorszstyle (veja info zsh list-colorsdetalhes).

Seu ~/.zshrcou qualquer outro arquivo de personalização chamado pode ter algo como:

zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}

Para que isso seja baseado no conteúdo da $LS_COLORSvariável (para que você obtenha as mesmas cores nas conclusões zsh e na ls --colorsaída GNU).

$LS_COLORSé a variável usada pelo GNU lse geralmente é definida por uma chamada para algo como:

eval "$(dircolors --sh ~/.dircolors)"

(talvez anteriormente em seu ~/.zshrc, ou em seu ~/.zprofile).

Em

zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}

no entanto, o $LC_COLORSé expandido e dividido em: na época ~/.zshrcé interpretado.

Se você alterar $LS_COLORS, esse zstylecomando não será executado novamente automaticamente, e se você o originar ~/.zshrcnovamente após modificar $LS_COLORS, é possível que o dircolorscomando que se regenera $LS_COLORScom base na configuração armazenada ~/.dircolorstambém seja executado novamente, substituindo suas modificações.

Então aqui, o que você precisa fazer é:

  1. descubra onde o list-colorszstyle está definido em seus arquivos de inicialização
  2. se for baseado em $LS_COLORS, descubra como isso $LS_COLORSestá sendo definido e corrija. E se não, ajuste essa chamada para zstylecorresponder às suas preferências de cores.

informação relacionada