DEV Community

Lucas Souza
Lucas Souza

Posted on • Updated on

Um terminal funcional e de respeito

O que você vai encontrar aqui ?

Olá meu caros! Hoje venho trazer para vocês um tutorial rápido para quem curte personalizações em terminal ou um shell diferente. Nesse tutorial, vou ensinar apenas a instalar o zsh e o oh-my-zsh no linux e também falarei um pouco sobre ambos.

Em outro artigo explicarei sobre os plugins que utilizo bem como os meus scripts personalizados e em outro ensinarei como instalar algo similar no Windows utilizando o oh my posh.

Vamos lá deixar esse terminal bonitão, boa leitura!

Imagem do meu terminal

Antes de começar...

Vou deixar o link para meus dois gists que possuem minha configuração tanto para Windows(utilizando o oh-my-posh para personalização) quanto para Linux que será o ponto do artigo de hoje.

Nesses gist's encontra-se detalhadamente minha configuração para cada ambiente e também os plugins que utilizo.

Oque é zsh e oh-my-zsh ?

Zsh

Bom o zsh é um shell personalizado, por padrão todos os sistemas operacionais vem com um shell. Linux com o bash, Mac o mesmo e o Windows com o powershell.

Se vem por padrão um, porque eu utilizaria um shell personalizado ?

Essa é uma pergunta excelente e com uma resposta simples. Depende do seu uso e qual tipo de usuário você é.

O seu shell vai ser útil para todas as suas tarefas, não existe diferença discrepante entre o default e um que você venha instalar como o zsh, fish etc. Um shell custom vai te possibilitar ter uma experiencia diferente e diversas utilidades para o dia a dia como:

  • Autocomplete
  • Syntax higlight
  • Scripts personalizados
  • etc...
oh-my-zsh

O oh-my-zsh vai ser uma ferramenta que possibilita a configuração e gerenciamento do seu zsh. Podendo auxiliar na configuração de novos plugins, temas e dependências.

Um shell personalizado é para mim ?

Tendo isso tudo em mente você deve se perguntar se vale a pena ou não migrar de shell. O lado negativo disso é que algumas empresas podem barrar o uso de shell personalizado ou qualquer tipo de modificação no sistema operacional, normalmente empresas grandes dão uma máquina para o funcionário para que ele possa trabalhar e desenvolver.

Caso você esteja pensando em fazer isso no seu computador de trabalho, primeiro converse com seu gestor. Eu recomendo que seja feito na sua máquina pessoal.

Agora vamos para a melhor parte!

Começando!

Antes de tudo vamos utilizar o linux como primeiro exemplo. Para instalar o zsh vamos adicioná-lo a nossa maquina.

sudo apt install zsh -y
Enter fullscreen mode Exit fullscreen mode

Nesse comando estamos instalando o shell zsh e passando a flag -y que não pedirá para confirmar a instalação.

Após isso vamos instalar o Oh-My-Zsh que permitirá personalizar de forma mais fácil o nosso novo shell.

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

Quando você rodar o script de instalação do oh-my-zsh, vai aparecer uma tela perguntando se você quer adicionar o zsh como shell padrão, basta digitar y e será feito.

Com o zsh e o oh-my-zsh instalado, se você der um ls -la na sua home, vai encontrar os seguintes arquivos:

overview das pastas

Aqui encontramos a pasta de instalação do oh-my-zsh e também o .zshrc que para nós no momento é o mais importante.

Vamos configurar o terminal!

Com o passo anterior concluído chegamos na parte mais legal, configurar o seu terminal. Para iniciar vamos digitar o seguinte comando no termnal

zsh
Enter fullscreen mode Exit fullscreen mode

Isso vai possibilitar a incialização do shell no seu terminal, na finalização de todo o processo vai ser necessário reiniciar a sua máquina para ele ficar como padrão.

Então vamos inciar a configuração. Para isso é necessário abrir o arquivo .zshrc com o seu editor de texto, para usuários de base ubuntu vamos possuir o gedit.

gedit ~/.zshrc
Enter fullscreen mode Exit fullscreen mode

Com o seu editor aberto você vai encontrar algo parecido com isso:

visualização do arquivo zshrc

Aqui é onde vamos adicionar a partir de agora todas as nossas configurações, scripts, plugins etc.

Abaixo pode-se perceber onde ocorre a conexão entre o seu shell(zsh) e o nosso "gestor" desse shell o oh-my-zsh.

conexão entre o zsh e o oh-my-zsh

Alterando nosso tema!

O oh-my-zsh te proporciona milhares de temas para adicionar ao seu terminal, você pode visualizar todos clicando aqui.
No meu caso vou instalar um chamado Spaceship que é o meu tema favorito.

Para alterar o seu tema do shell basta escolher um e altera-lo aqui:

Imagem da seção de alteração do tema

Basta remover o tema padrão que é o robbyrussell e adicionar o seu escolhido na wiki do Oh-My-Zsh(disponibilizado no começo desse tópico).

Nesse ponto você já terá um terminal com um novo shell e um tema personalizado, para finalizar 100% será necessário reiniciar a sua máquina e então o seu shell padrão será o zsh. Mas caso queria seguir com o mesmo tema que utilizo basta prosseguir com a leitura!

Instalando e configurando o Spaceship

Clone o repositório

git clone https://github.com/spaceship-prompt/spaceship-prompt.git "$ZSH_CUSTOM/themes/spaceship-prompt" --depth=1
Enter fullscreen mode Exit fullscreen mode

Symlink spaceship.zsh-theme para seu diretório de temas personalizados do oh-my-zsh:

ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"
Enter fullscreen mode Exit fullscreen mode

Coloque ZSH_THEME="spaceship" no seu .zshrc como foi explicado no tópico anterior.

Com ele instalado você vai possuir algo parecido com isso:

Spaceship default

E tadaaaaaaa!! Está ai seu terminal completamente personalizado e agora podendo visualizar versão do node, pacote do projeto e muito mais. Para finalizar 100% será necessário reiniciar a sua máquina e então o seu shell padrão será o zsh.

Caso queira ter acesso a minha personalização do tema Spaceship basta acessar meu gist

Muito obrigado e até a próxima!

Top comments (4)

Collapse
 
sso profile image
Sall

🧙‍‍♀️z.digitalclouds.dev/ 🧙‍‍♀️

Collapse
 
deverebor profile image
Lucas Souza

That Cool! I didn't know the project, I'll look and maybe contribute!

Collapse
 
sso profile image
Sall

Your are more than welcome to join. Z-Shell has many projects, you also welcome to bring your own projects - as Z-Shell is very powerful scripting language - And I can prove it :)

Collapse