Temas
Uma das partes mais legais de customizar o shell é definir um tema para o prompt! Existem diversos frameworks para isso.
Neste capítulo, vamos tratar sobre o Starship, um prompt minimalista, rápido e extremamente customizável.
E, dessa vez, os usuários do Windows não ficarão de fora, pois o Starship é multiplataforma, e funciona no PowerShell e no Zsh!
Fontes
Para que o Starship funcione corretamente, é necessário instalar uma fonte que suporte ícones no terminal. Existe um padrão de fontes chamado Nerd Fonts que é muito utilizado para esse fim.
Acesse o site nerdfonts.com e escolha a que mais lhe agradar.
Neste exemplo, vamos instalar a fonte Fira Code. Encontre-a na lista de fontes e clique no botão Download.
Instalando as fontes
O pacote Zip contém vários arquivos, que definem variações da fonte. Extraia o conteúdo do pacote em uma pasta de sua escolha.
As variantes que nos interessam são as terminadas em Mono.
Windows
No Windows, selecione-as e pressione o botão direito do mouse. Então, clique em Abrir.
Isso abrirá uma janela do instalador para cada fonte. Não tem jeito, tem que clicar em Instalar em cada uma delas.
Linux
No Linux, isso é mais fácil.
Após extrair o pacote, basta copiar os arquivos das variações para a pasta ~/.local/share/fonts
.
Se quiser fazer pelo terminal, abra-o na pasta em que estão os arquivos descompactados e execute o comando:
Você também pode copiar e colar graficamente pelo gerenciador de arquivos.
Definindo a fonte no terminal
Além de instalar a fonte, é necessário configurar o terminal para usá-la.
Já acessamos as configurações de fonte do GNOME Terminal e do Windows Terminal anteriormente.
Windows
Pelo Windows Terminal, acesse Configurações > Perfis > Perfil padrão > Aparência.
Linux
Pelo GNOME Terminal, o passo a passo é :
Instalando o Starship
Para instalar o Starship, vamos seguir as instruções do site oficial.
Tanto no Windows como no Linux (e WSL), parte do processo é editar o arquivo de configurações do shell. Vamos tratar sobre os detalhes de como fazer isso para o PowerShell e para o Zsh.
PowerShell
O Starship pode ser instalado no Windows através do PowerShell.
Para obter o instalador e executar o script de instalação, rode o seguinte comando:
Após a instalação, é necessário adicionar o script de inicialização do Starship ao seu perfil do PowerShell.
O arquivo de configuração do PowerShell tem o nome Microsoft.PowerShell_profile.ps1
.
Seu local de armazenamento pode variar de acordo com a versão do PowerShell.
O arquivo para o PowerShell 5 é encontrado em $HOME\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
.
Já para o PowerShell 7, o arquivo é encontrado em $HOME\Documents\PowerShell\Microsoft.PowerShell_profile.ps1
.
Felizmente, o Windows provê uma variável de ambiente chamada $PROFILE
que aponta justamente para esse arquivo.
As instruções deste capítulo valem para qualquer uma das duas versões. Basta executar os comandos no terminal da versão que você utiliza.
Vamos abrir o arquivo de configuração com o VSCode, executando o comando:
Adicione as seguintes linhas ao arquivo:
Salve o arquivo e feche o editor. Para que as alterações tenham efeito, feche e abra o terminal novamente.
Possivelmente, você verá uma mensagem de erro ao abrir o PowerShell.
Essa mensagem é exibida porque o Windows não permite a execução de scripts por padrão. Precisamos alterar a política de execução de scripts para que o Starship funcione.
Para isso, execute o comando:
Esse comando define que scripts que sejam assinados por fontes confiáveis podem ser executados.
Feche e abra o terminal novamente.
Para verificar se o Starship foi instalado corretamente, execute o comando starship
.
Zsh
No Linux e no WSL, o Starship pode ser instalado no Zsh.
Para instalar o Starship, execute o comando:
Quando perguntado se deseja prosseguir com a instalação, pressione a tecla y. O instalador exibirá uma mensagem informando que o Starship foi instalado com sucesso, e que é necessário adicionar o script de inicialização ao arquivo de configurações do shell.
O arquivo de configurações do Zsh é o ~/.zshrc
.
Vamos editá-lo usando o VSCode com o seguinte comando:
Adicione as seguintes linhas ao arquivo logo antes da seção de plugins:
O resultado final deve ser similar a este:
Salve o arquivo e feche o editor. Para que as alterações tenham efeito, feche e abra o terminal novamente.
Para verificar se o Starship foi instalado corretamente, execute o comando starship
.
Configurando o Starship
O starship não é um tema, mas um framework para criar e definir temas. Ele é extremamente customizável, e você pode definir o prompt do jeito que quiser. Se quiser aprender mais sobre, acesse a documentação oficial.
Neste capítulo, vamos utilizar um dos temas já prontos, os quais são chamados de presets. Acesse o link e escolha o tema que mais lhe agrada. Vamos utilizar o tema Gruvbox Rainbow, mas o passo a passo é similar para qualquer outro.
O Starship também tem um arquivo de configuração chamado starship.toml
, que é onde você pode definir as configurações do prompt.
Por padrão, este arquivo pode não existir.
Para criar um no Ubuntu, Fedora ou WSL, execute o comando:
Já no Windows, execute os comandos:
Depois de criado, precisamos copiar o conteúdo de um preset para dentro desse arquivo. O starship oferece um comando para fazer justamente isso.
No Ubuntu, Fedora ou WSL, execute o comando:
Já no Windows, execute o comando:
Considerações
O Starship é um framework novo e em constante desenvolvimento. Uma funcionalidade que foi implementada para o PowerShell, mas ainda não para o Zsh, é a de definir o prompt de forma transitória.
Isso significa que apenas a linha atual terá todos os detalhes do prompt, e as demais linhas terão um prompt mais simples.
Caso você não goste de tantos detalhes nas linhas anteriores no Zsh, você pode escolher um tema mais simples.
Eu particularmente me incomodo com o prompt cheio de coisas, então vou trocar o tema para o Nerd Font Symbols. O processo é o mesmo, bastando trocar o nome do tema no comando de configuração.