Avatar do Rodrigo Rogovski

Rodrigo RogovskiSoftware Engineer

Um pouco sobre tecnologia e hobbies.

← Voltar na listagem

Alterando o visual do terminal

Terminal com um visual mais bonito utilizando Oh My Zsh, Nerd Fonts e Powerlevel10k

Terminal

Quem desenvolve e tem um ambiente todo configurado, alias(apelidos) para os comandos mais utilizados, variáveis de ambientes, gerenciadores de versões como o asdf ou nvm. Sabe como é desanimador pensar em configurar tudo isso de novo. Boa parte dá para fazer com um script sh, desde que se manteha na mesma distro. Eu particularmente gosto muito de Manjaro e Ubuntu. Mas inevitavelmente chega o momento, que por necessidade ou "frescura" mesmo, de uma atualização mais drástica ou mudar de distro. Então quero deixar registrado alguns passos que faço para deixar meu ambiente de desenvolvimento como gosto. Nesse caso, vamos começar pelo terminal.

Usarei como exemplo o Ubuntu versão:

Terminal

Mas vou deixar os comandos equivalentes para o Arch/Manjaro e algumas outras distros.

ZSH

Primeiro vamos instalar o ZSH:

Para Debian/Ubuntu:

sudo apt install zsh

Para Arch/Manjaro:

sudo pacman -Sy zsh

Para RedHat/CentOS:

sudo yum install zsh

Para Fedora:

sudo dnf install zsh

Para OpenSUSE

sudo zypper install zsh

Terminal

Oh My Zsh

Segundo passo instalar o Oh My Zsh:

Mas precisaremos do git instalado, então execute:

Para Debian/Ubuntu:

sudo apt install git

Para Arch/Manjaro:

sudo pacman -Sy git

Para RedHat/CentOS:

sudo yum install git

Para Fedora:

sudo dnf install git

Para OpenSUSE

sudo zypper install git

E depois:

sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Terminal

Será solicitado se você deseja alterar o seu shell padrão para o zsh, digite y e pressione enter e informe a senha sudo solicitada.

No entanto, o gnome-terminal será irá executar como bash sendo o shell. Para contornar isso, nas Preferências, edite o perfil atual, e na aba Comandos, selecione a opção Executar um comando personalidado e em Comando personalizado informe zsh. Assim toda vez que abrir o terminal o zsh será executado.

Terminal

Nerd Fonts

Terceiro passo, instalar a Nerd Fonts.

Clique aqui para baixar apenas a fonte ttf que precisaremos, no caso escolho e Hack, mas é recomendado a Meslo.

Abra o arquivo com duplo clique e clique em instalar:

Terminal

Powerlevel10k

Quarto passo, vamos "instalar" o Powerlevel10k:

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k

Na verdade estamos fazendo um clone do projeto para um diretório de themes do Oh My Zsh.

Agora edite o arquivo .zshrc:

vi ~/.zshrc

Comente a linha com #:

ZSH_THEME="robbyrussell"

E inclua:

ZSH_THEME="powerlevel10k/powerlevel10k"

Agora execute:

p10k configure

Aqui será solicitado as cofigurações que deseja para o visual do seu terminal. Ao final, se querer alterar ou testa outras configurações/visual, basta execuart o comando novamente.

Plugins (Opcional)

Agora vamos instalar alguns plugins para ajudar no autocomplete dos comandos e syntax highlighting e mais alguns outros que geralmente uso:

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone https://github.com/agkozak/zsh-z ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-z

Agora vamos incluir esses plugins no arquivo de configuração do zsh:

vi ~/.zshrc

E altere a linha:

plugins=(git)

Para:

plugins=(
        git
        zsh-autosuggestions
        zsh-syntax-highlighting
        zsh-z
        history-substring-search
        colored-man-pages
)

Os plugins history-substring-search e colored-man-pages já vem inclusos, por isso não precisamos fazer o clone.

Se quiser conhecer mais plugins, verifique aqui.

E voilá, tá aí um terminal, mais bontinho. 🤓

No caso dessa versão Ubuntu o shell padrão era o bash, caso queira voltar para ele:

chsh -s $(which bash)

E também recomendo o Terminator,que permite ter vários terminais numa única janela.

Para Debian/Ubuntu:

sudo apt install terminator

Para Arch/Manjaro:

sudo pacman -Sy terminator

Para RedHat/CentOS:

sudo yum install terminator

Para Fedora:

sudo dnf install terminator

Para OpenSUSE

sudo zypper install terminator

That's all folks! 🖖