"Inicializando coisas como fasd etc." - bem, fazer coisas complexas pode levar algum tempo.
Aqui estão algumas dicas genéricas para acelerar a inicialização do zsh:
- Apenas execute os comandos que você realmente precisa. Não use estruturas genéricas como oh-my-zsh que definem ainda outra camada de configuração que pretende atender a todos (mas na verdade não, de qualquer forma).
- Evite executar subprocessos. Para manipulação de strings curtas, use as construções internas do zsh, não
cut
,sed
,awk
, etc. - Use arquivos compilados em bytes para qualquer coisa grande.
- Verifique se as informações de conclusão estão em cache: passe
-d
paracompinit
. - Carregue as coisas preguiçosamente, ou seja, no primeiro uso. Use
autoload
liberalmente.
Para descobrir o que está demorando tanto, crie um perfil do seu .zshrc
.
- Você pode obter algumas medições do perfilador zsh. Adicione
zmodload zsh/zprof
na parte superior de seu.zshrc
e executezprof
. - Você pode rastrear o que o zsh está fazendo (observe que o próprio rastreio reduzirá a velocidade, mas de maneira quase uniforme). Adicione
setopt prompt_subst; zmodload zsh/datetime; PS4='+[$EPOCHREALTIME]%N:%i> '; set -x
no topo do seu.zshrc
.