Onde devo colocar configurações dependentes do ambiente para o zsh?

1

Eu tenho um repositório no github que consiste na maioria dos meus arquivos de ponto, incluindo arquivos como .zshrc .

Quando eu preciso mudar para um novo ambiente de desenvolvimento, eu só preciso puxar meus arquivos de pontos do github e ter certeza de que eles estão nos lugares corretos.

Mas às vezes o novo ambiente é bem diferente do antigo, por exemplo, talvez eu precise migrar do MacOS para alguma distribuição do Linux.

Essas diferenças podem tornar minhas configurações incorretas, então estou pensando se posso mover todas essas configurações dependentes de ambiente de .zshrc e salvas em alguns arquivos externos.

    
por Satoru.Logic 22.07.2014 / 03:56

1 resposta

2

Você pode carregar arquivos adicionais no seu ~/.zshrc com source FILENAME .

Eu tenho o seguinte em ~/.zshrc para fazer isso em todos os arquivos com extensão .zsh in ~/.zshrc.d

# load additional configuration
if [[ -d ~/.zshrc.d ]]; then
    for file in ~/.zshrc.d/*.zsh; do
        source "$file"
    done
    unset file
fi

Você pode colocar apenas os arquivos necessários para um ambiente específico.

Você pode até dar um passo adiante e criar um subdiretório para cada ambiente e carregar apenas o necessário. Por exemplo, com base no conteúdo de $OSTYPE :

if [[ -d ~/.zshrc.d/${OSTYPE} ]]; then
    for file in ~/.zshrc.d/${OSTYPE}/*.zsh; do
        source "$file"
    done
    unset file
fi
    
por 22.07.2014 / 11:05

Tags