Não é que o autocompletar seja lento, é que o autocompletion faz com que cada comando pareça lento, porque você está esperando que ele forneça informações. Tentando comentar bash_completion completamente em seus arquivos zsh dot.
Meu Zsh é super lento dentro de um repositório do Git. Quando eu faço o "zsh git slow" do Google, recebo um monte de resultados sobre o autocompletar do Git sendo lento, mas o autocompletar não é necessariamente o meu problema; é tudo .
Eu tentei remover todos os plugins e, estranhamente, não fiz nada quando abri um novo shell. Zsh ainda faria coisas do Git dentro do repositório do Git.
Eu encontrei este trecho em esta página :
function git_prompt_info() {
ref=$(git symbolic-ref HEAD 2> /dev/null) || return
echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$ZSH_THEME_GIT_PROMPT_SUFFIX"
}
Isso tornou tudo mais rápido novamente, mas também me deu um aviso assim:
➜ snip git:(master
Observe o parêntese à direita ausente. Isso é meio chato. Além disso, a coisa toda parece um hack que eu não deveria ter que fazer.
Há também essa pergunta de SU promissora, mas os links da resposta aceita estão mortos.
Como posso fazer meu Zsh não ficar lento dentro de um repositório do Git?
Não é que o autocompletar seja lento, é que o autocompletion faz com que cada comando pareça lento, porque você está esperando que ele forneça informações. Tentando comentar bash_completion completamente em seus arquivos zsh dot.
Você pode executar o seguinte comando para desativar totalmente o recurso de status do git.
git config --global oh-my-zsh.hide-status 1
Ou adicionando a seguinte linha no seu ~/.zshrc
.
DISABLE_UNTRACKED_FILES_DIRTY="true"
Para rastrear os comandos do shell que são chamados enquanto está lento, você pode executar: set -x
ou adicionar em seus arquivos de inicialização. Ele mostrará todos os comandos, incluindo o responsável pelo preenchimento automático.
Se você acredita que alguns comandos git
estão lentos, você pode definir algumas variáveis extras, como:
exports GIT_TRACE=1
Para ver mais exemplos, consulte: Como depurar problemas relacionados ao git / git-shell?
Eu removi zsh-autosuggestions
como um plugin e depois foi mais rápido. No meu caso, não tinha nada a ver com o ˋgitˋ.