Conteúdos

Maior produtividade no terminal com o Oh My ZSH

Turbine o seu terminal no linux

Se você, assim como eu, utiliza diariamente o terminal Shell no Linux para trabalho ou estudo, irá gostar de personalizar o seu shell para otimizar suas tarefas do dia a dia. Além de deixar o visual do modo que mais lhe agradar. Neste post, irei compartilhar o procedimento que utilizo para personalizar o meu Shell padrão com o Oh My ZSH.

ZSH e Oh My ZSH

O ZSH é basicamente um interpretador de comandos UNIX (Shell), assim como o famoso Bash. Já o Oh My ZSH é um framework para gerenciamento de configurações do ZSH. Ele possui milhares de funções, helpers, plugins, temas e possibilidade de personalizações.

Instalação e configuração

Em todas as distribuições Linux que utilizei o pacote se chama zsh

Distribuição Como instalar
Arch / Manjaro pacman -S zsh zsh-completions
CentOS / Red Hat / Fedora dnf install zsh
Debian / Ubuntu / Mint apt install zsh

Para instalar o Oh My Zsh via curl rode o seguinte comando:

1
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Após o processo de download e instalação, você verá a seguinte tela:

/produtividade-com-oh-my-zsh/install-ohmyzsh.png

Atenção:
Caso por algum motivo não apareça a mensagem de Shell changed., basta digitar zsh e teclar enter. Porém essa alteração valerá somente para a sessão atual.

Para definir o zsh como seu shell padrão, rode o seguinte comando:

1
sudo usermod --shell $(which zsh) $USER
Atenção:
Esta alteração valerá somente para as próximas sessões do shell.

Adicionando Plugins

Os plugins do Oh My Zsh possibilitam você a possibilidade de adicionar funcionalidades extras ao seu shell. Para verificar as inúmeras possibilidades, dê uma conferida na Wiki do repositório.

zsh-syntax-highlighting

Este plugin fornece destaque da sintaxe para o shell zsh. Ele permite realçar os comandos enquanto eles são digitados. Isso ajuda a revisar os comandos antes de executá-los, principalmente na detecção de erros de sintaxe.

Para instalar o plugin, basta rodar o seguinte comando:

1
2
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git \
${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

zsh-autosuggestions

Este plugin sugere comandos e baseado no seu histórico de comandos já executados. Este é como vinho 🍷, vai melhorando com o passar do tempo. 😉

Para instalar o plugin, basta rodar o seguinte comando:

1
2
git clone https://github.com/zsh-users/zsh-autosuggestions \
$ZSH_CUSTOM/plugins/zsh-autosuggestions

Agora, adicione o zsh-syntax-highlighting e o zsh-autosuggestions na lista de plugins do seu ~/.zshrc

1
2
3
4
5
plugins=(
  git
  zsh-syntax-highlighting
  zsh-autosuggestions
)

Carregue a nova configuração com o comando source ~/.zshrc

fzf

o FZF é um buscador de arquivos interativo para linha de comando que pode ser usado com qualquer lista; arquivos, histórico de comandos, processos, nomes de host, favoritos, git commits, etc.

Para instalar o plugin, basta rodar o seguinte comando:

1
git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf && ~/.fzf/install
Dica:
Responda sim (Y) para todas as perguntas.

Agora você já pode telcar Ctrl + R para acessar a busca pelo histórico:

/produtividade-com-oh-my-zsh/fzf-ctrl-r.png

E para acessar a busca por arquivos, basta teclar Ctrl + T ou Alt + C

/produtividade-com-oh-my-zsh/fzf-ctrl-t.png

Temas

Aqui temos uma grande variedade de opções, podendo personalizar cada um deles de acordo com o gosto do cliente. Eu tenho preferência pelo tema Agnoster, mas como disse, tem para todos os gostos. Veremos o procedimento para deixar do modo que eu utilizo. Mas recomendo fortemente uma analisada dos Temas disponíveis no Repositório Oficial.

Primeiramente, vamos instalar alguns requisitos:

1
sudo apt install fonts-powerline

Teste se as fontes estão corretas com o comando:

1
echo "\ue0b0 \u00b1 \ue0a0 \u27a6 \u2718 \u26a1 \u2699"

A saída do comando deve ser parecida com a seguinte: /produtividade-com-oh-my-zsh/icons.png

Agora edite o arquivo ~/.zshrc e altere o tema para agnoster

1
ZSH_THEME="agnoster"

Carregue a nova configuração com o comando source ~/.zshrc

Atenção:

Se você está utilizando o ZSH através do WSL 2 (Windows) clone o repositório com as fontes:

1
git clone https://github.com/powerline/fonts.git --depth=1

E execute o Script install.ps1 como administrador. Após a instalação, na janela do terminal ou WSL, selecione a fonte Ubuntu Mono for Powerline

Aliases

Outra facilidade é a configuração de aliases para personalização de comandos. Para isto, basta adicionar as suas customizações no final do seu ~/.zshrc

1
2
3
4
5
alias vi="vim"
alias c="clear"
alias ip="ip --color"
alias ipb="ip --color --brief"
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh

Conclusão

Com o passar do tempo, você vai percebendo o quanto o ZSH melhora a sua produtividade. Os plugins auxiliam muito no dia a dia, somando o fato você poder personalizar praticamente tudo, torna essa ferramenta fantástica.

Recomendo fortemente utilizar como shell padrão junto com o Tilix, turbinando ainda mais a produtividade. Já falei sobre a utilização do Tilix em outro Post.

Espero ter ajudado de algum modo! 🤓 e comenta aí o que você achou! 💬

Fontes