O terminal do linux é muito útil mas pra mim as vezes é muito chato em alguns aspectos, então há anos utilizo o ZSH com alguns plugins e um tema que acho ser bem mais produtivo, resolvi criar esse post para quem quiser utilizar essa mesma configuração ou se inspirar nela para criar a sua própria fique à vontade, o resultado final será esse:
Instalando o ZSH
Para começar vamos instalar o zsh, que é um interpretador de comandos assim como o bash mas vai nos possibilitar uma customização maior e mais fácil.
Vamos instalar, de acordo com sua distribuição linux:
Ubuntu:
apt install zsh
Fedora:
dnf install zsh
Arch:
pacman -S zsh zsh-completions
Instalando o Oh My Zsh
O Oh My Zsh é o que faz a mágica, ele é uma ferramenta para gerenciar as configurações do zsh de uma forma muito fácil. Basta instalar com:
curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh; zsh
Se essa mensagem apareceu ja temos o Oh My Zsh instalado, mas vamos agora precisar mudar o shell padrão para o Zsh:
sudo usermod --shell $(which zsh) $USER
Com isso temos o zsh como padrão mas não adianta fechar e abrir o terminal, para funcionar vai ter que fazer logout e login no seu usuário novamente.
Com isso já temos um terminal bem melhor enm mãos, tente digitar algum comando como o ls
e dar TAB
algumas vezes.
Plugins
Para qualquer coisa que você pensar existe um plugin no Oh My Zsh, e não é brincadeira, dá uma olhada na lista .
Você pode testar e ativar o plugins de acordo com suas necessidades, mas aqui iremos ativar os seguintes:
zsh-syntax-highlighting
Esse plugin deixa verde se o comando estiver certo ou vermelho caso tenha algum erro. Vamos instalá-lo com:
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
Para ativá-lo adicione zsh-syntax-highlighting
em plugins no aquivo ~/.zshrc
.
zsh-autosuggestions
Vai sugerir comandos de acordo com seu histórico, basta apertar seta para direita e ele completa o comando. Instale com:
git clone https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
Para ativá-lo adicione zsh-autosuggestions
em plugins no aquivo ~/.zshrc
.
fzf
Fzf é um fuzzy finder, um buscador de arquivos direto pelo terminal. Vamos instalar com:
git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf && ~/.fzf/install
Responda y
para todas as perguntas.
Agora você pode apertar CTRL+T
para buscar arquivos quando quiser.
E você também pode fazer o mesmo para buscar no seu histórico de comandos com o CTRL+R
.
Tema
Outra coisa maravilhosa que o Oh My Zsh adiciona são diversos temas, você pode escolher qualquer um, eu gosto do bira, é um tema simples mas me dá alguma informações, como com o plugin do git já vem ativado ele mostra a branch atual, diretório e usuário, o que pra mim é o suficiente.
Para ativar o tema adicione bira
(ou outro de sua escolha) em ZSH_THEME
no aquivo ~/.zshrc
.
Basta fechar o terminal e abrir novamente para ver seu tema aplicado.
Muito mais ainda pode ser feito, como aliases ou utilizando outro plugins que ache interessante, esse artigo é apenas uma dica e serve para mostrar as possibilidades, não pare por aqui e deixe seu terminal do jeito ideal para você.