Movatterモバイル変換


[0]ホーム

URL:


Skip to content
DEV Community
Log in Create account

DEV Community

Cover image for [PT-BR] O que é o Oh My Zsh e como ele pode melhorar a sua experiência com o Windows Terminal
Erick Garcia Godoy
Erick Garcia Godoy

Posted on • Edited on

     

[PT-BR] O que é o Oh My Zsh e como ele pode melhorar a sua experiência com o Windows Terminal

Windows terminal

Se você quer ter um terminal mais bonito e personalizado no seu Windows, este guia é para você. Neste guia, você vai aprender a:

  1. Instalar o Windows Terminal, um aplicativo que permite usar vários terminais em uma única janela
  2. Instalar o WSL (Windows Subsystem for Linux), um recurso que permite executar um ambiente Linux dentro do Windows
  3. Instalar o Zsh, um shell interativo que oferece recursos avançados como autocompletar, corretor ortográfico e temas
  4. Instalar o Oh My Zsh, um framework que facilita a configuração e o gerenciamento do Zsh
  5. Escolher e aplicar um tema do Oh My Zsh que combine com o seu estilo

Com esses passos, você vai transformar o seu terminal em uma ferramenta poderosa e divertida de usar. Vamos começar?

Status e testes

CIBuild StatusGitHub forksGitHub starsGitHub issuesInfrastructure Tests

Índice

Requisitos mínimos 🛠️

Para começar, você precisará baixar e instalar oVisual Studio Code, um editor de código-fonte popular e gratuito. Você pode fazer isso acessando o site oficial do VS Code e seguindo as instruções de instalação para o seu sistema operacional.

Visual Studio Code + Remote WSL 💻

Após instalar o VS Code, instale também um plugin chamadoRemote - WSL. Ele servirá para abrir e editar arquivos do Linux de forma visual, sem precisar utilizar nano, vim e afins. O atalho para salvar arquivos que fora editados éCtrl + S

Baixe e instale a fonte FiraCode Light TTF 🌟

Antes de tudo,instale o pacote de fontes Fira Code. Ela trará alguns efeitos bem legais ao utilizar símbolos no código ou no terminal. Você pode ver mais detalhes do projeto no perfil deles noGitHub - Fira Code.

Habilite o Hyper-V e o WSL via Powershell Admin ⚙️

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

Observação: Em algumas máquinas, pode ser necessário habilitar a virtualização na BIOS também.

Instale uma Distro Linux 🐧

Você pode escolher e instalar uma distribuição Linux de sua preferência.Clique aqui para baixar o Ubuntu.

Instale o Windows Terminal 🪟

OWindows Terminal é uma ferramenta poderosa para gerenciar terminais no Windows.

Atualizando o Kernel Linux no Windows 🔄

Atualize o Kernel do Linux no Windows,baixe o pacote de atualização do kernel do Linux para o WSL 2 para computadores x64.

Migrar a distro Existente para WSL 2 (Utilizará o Kernel nativo do Linux no Windows) 🚀

Após instalar a atualização, execute o PowerShell como Administrador e digite o seguinte comando para listar suas distribuições Linux instaladas e verificar qual versão do WSL estão usando:

wsl-l-v

Agora, migre sua distribuição Linux existente para o WSL 2 executando o comando:

wsl --set-version <distro name>2

Substitua<distro name> pelo nome da sua distribuição, sem os sinais<>. A migração para o WSL 2 começará e, ao terminar, você poderá usar o Linux no Windows 10 vezes mais rápido do que com a versão WSL 1 anterior. 🚀

Utilizando o Linux 🐧

Com todo o ambiente instalado e configurado, você já pode abrir o Windows Terminal e iniciar sua distribuição Linux preferida em novas abas.

Execute o script de instalação do ZSH 🖥️

bash -c"$(curl -fsSL https://raw.githubusercontent.com/ErickRock/oh-my-zsh-on-windows-terminal/main/zsh-install.sh)"

Após a execução do comando, feche o terminal e abra-o novamente.

Ao reiniciar, escolha a opção 2 e pressione Enter. Feche o terminal novamente e abra-o para continuar com os comandos a seguir.

Execute o script de instalação do ZSH Tools + Plugins 🛠️

bash -c"$(curl -fsSL https://raw.githubusercontent.com/ErickRock/oh-my-zsh-on-windows-terminal/main/tools-zsh-install.sh)" -y

Na tela seguinte, digiteexit e pressione Enter para permitir que o script continue.

Tema Spaceship 🌌

spaceship →~ prompt
🚀⭐ Spaceship ZSH

Zsh prompt for Astronauts.

NPM VersionCI StatusZsh VersionSpaceship ZSH TwitterDonate


Website |
Instalando |
Opções |
API

Feito com ❤︎ por
Denys Dovhan e
colaboradores

Instalando 🚀

sudo gitclone https://github.com/denysdovhan/spaceship-prompt.git"$ZSH_CUSTOM/themes/spaceship-prompt"

Crie o link simbólico 🪝

sudo ln -s"$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme""$ZSH_CUSTOM/themes/spaceship.zsh-theme"

Ativando o tema 🌈

Digitecode ~/.zshrc e pressione Enter para abrir o VS Code e editar o arquivo. Altere o campoZSH_THEME="fino" paraZSH_THEME="spaceship" e salve. Pronto, você acabou de mudar o tema. 🌟

Editando o arquivo .zshrc

Plugins inclusos 🧩

Esses são os plugins inclusos, e abaixo explico como cada um deles funciona:

  • zdharma/fast-syntax-highlighting: Adiciona syntax highlighting na hora da escrita de comandos, facilitando principalmente o reconhecimento de comandos digitados incorretamente. 🎨
  • zsh-users/zsh-autosuggestions: Sugere comandos baseados no histórico de execução enquanto você digita. 💡
  • zsh-users/zsh-completions: Adiciona milhares de completions para ferramentas comuns como Yarn, Homebrew, NVM, Node, etc. Você só precisa apertar TAB para completar comandos. 🚀

Dicas 💡

Você pode acessar toda a estrutura de arquivos da distribuição Linux instalada no caminho\\wsl$, da mesma forma que acessa um servidor, pasta, etc. É possível deixar um mapeamento de rede deste caminho, caso prefira.

Changelog

[2.0.23] - 2023-09-06

Corrigido 🐛

  • Erro de ortografia na palavra "Pluguins", que agora está escrita corretamente como "Plugins" .
  • Erro de sintaxe no script de instalação do ZSH Tools + Plugins, que agora usa o operador&& em vez de|| para garantir a execução sequencial dos comandos .
  • Bug que impedia o início do ZSH ao fim do script de instalação, que agora usa o comandoexec zsh para substituir o shell atual pelo ZSH .

Melhorado 🚀

  • Processo de integração contínua (CI) no GitHub e no Azure, que agora usa o apt-fast para acelerar a instalação de pacotes no Linux .
  • Tema Spaceship para usar o novo projeto zdharma-continuum zinit, que é um fork do antigo projeto zdharma zinit que foi descontinuado .

Adicionado ➕

  • Temas padrões do Oh My Zsh, que são temas simples e elegantes para o ZSH. Você pode escolher entre os temas robbyrussell, agnoster, bira, candy, etc. .

¹:v.2.0.23 Fixed #8, #9
²:Sintaxe || corrigida para &&
³:Inicia o zsh ao fim do script
⁴:implementado apt-fast
⁵:Update to use new zdharma-continuum zinit project
⁶:🎨 Adicionado Temas Padrões

Créditos e links de referência:

Top comments(29)

Subscribe
pic
Create template

Templates let you quickly answer FAQs or store snippets for re-use.

Dismiss
CollapseExpand
 
ninjaazul profile image
Erick De Freitas Gonçalves
  • Joined

é aquilo nem todo herói veste capa

CollapseExpand
 
erickrock profile image
Erick Garcia Godoy
Entusiasta de tecnologias nativas.
  • Location
    São Paulo
  • Joined

O artigo foi atualizado recentemente, e já conta com 2 scripts que automatizam o processo dentro da distro Linux, pretendo em breve unificar em apenas 1 script, e ainda abranger o setup inicial de ativar o Hyper-V e o WSL.

Deixei varias issues abertas para facilitar a controbuição de quem puder ajudar!

CollapseExpand
 
eaeniko profile image
Nikolai Cinotti
  • Joined

Cara, eu to com um problema que as algumas cores nao mudam nem ferrando, por exemplo esse verde marca texto de fundo de algumas pastas não sae, não consigo mudar a cor e nem tirar, é claramente visivel que é ruim de ver. Poder me ajudar?
Me parece que só fica assim em pastas do windows, mas é meio bizarro. (Os tons de verde é pq estou com o tema Dracula, mas sem ele o verde fica ainda pior)

CollapseExpand
 
eaeniko profile image
Nikolai Cinotti
  • Joined

Link da imagem caso nao apareca abaixo:i.prntscr.com/aIgBEsJcQ1KF2OCRZlby...

CollapseExpand
 
guipatriota profile image
Guilherme D. Patriota
  • Joined
• Edited on• Edited

Olá, Nikolai. Sugiro que você veja o seguinte link:askubuntu.com/questions/466198/how...

Simplificando, insira a seguinte linha no seu ~/.bashrc (antes de chamar exec zsh) ou no ~/.zshrc (antes da instalação do zinit e do spaceship-prompter, se você tiver ):

LS_COLORS=$LS_COLORS:'tw=30;45:ow=30:44' ; export LS_COLORS

Isso já deve resolver.
Explicação:
LS_COLORS contém todos os padrões de cores que serão usados em todo o terminal. Os números vão de 0 a 107, sendo de 0 a 8 os formatos, 40 a 47 e 100 a 107 as cores de fundo e de 30 a 97 as cores das letras.

tw são as pastas do windows que seu usuário não tem permissão de acesso e ow são as pastas que tem. di são as pastas do wsl.

Veja no link as combinações de cores de fundo e letra que mais te agradarem e faça a alteração na variável LS_COLORS. Sugiro não apenas adicionar os dados, mas alterar ela completamente como abaixo:

printf -v LS_COLORS '%s' \
'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01' \
':mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;45:ow=30;44:st=37;44:ex=01;32:.tar=01;31:.tgz=01;31' \
':.arc=01;31:.arj=01;31:.taz=01;31:.lha=01;31:.lz4=01;31:.lzh=01;31:.lzma=01;31' \
':
.tlz=01;31:.txz=01;31:.tzo=01;31:.t7z=01;31:.zip=01;31:.z=01;31:.dz=01;31' \
':.gz=01;31:.lrz=01;31:.lz=01;31:.lzo=01;31:.xz=01;31:.zst=01;31:.tzst=01;31:.bz2=01;31' \
':.bz=01;31:.tbz=01;31:.tbz2=01;31:.tz=01;31:.deb=01;31:.rpm=01;31:.jar=01;31' \
':
.war=01;31:.ear=01;31:.sar=01;31:.rar=01;31:.alz=01;31:.ace=01;31:.zoo=01;31' \
':.cpio=01;31:.7z=01;31:.rz=01;31:.cab=01;31:.wim=01;31:.swm=01;31:.dwm=01;31' \
':
.esd=01;31:.jpg=01;35:.jpeg=01;35:.mjpg=01;35:.mjpeg=01;35:.gif=01;35:.bmp=01;35' \
':.pbm=01;35:.pgm=01;35:.ppm=01;35:.tga=01;35:.xbm=01;35:.xpm=01;35:.tif=01;35:.tiff=01;35' \
':.png=01;35:.svg=01;35:.svgz=01;35:.mng=01;35:.pcx=01;35:.mov=01;35:.mpg=01;35' \
':
.mpeg=01;35:.m2v=01;35:.mkv=01;35:.webm=01;35:.ogm=01;35:.mp4=01;35:.m4v=01;35' \
':.mp4v=01;35:.vob=01;35:.qt=01;35:.nuv=01;35:.wmv=01;35:.asf=01;35:.rm=01;35' \
':
.rmvb=01;35:.flc=01;35:.avi=01;35:.fli=01;35:.flv=01;35:.gl=01;35:.dl=01;35' \
':.xcf=01;35:.xwd=01;35:.yuv=01;35:.cgm=01;35:.emf=01;35:.ogv=01;35:.ogx=01;35' \
':
.aac=00;36:.au=00;36:.flac=00;36:.m4a=00;36:.mid=00;36:.midi=00;36:.mka=00;36' \
':.mp3=00;36:.mpc=00;36:.ogg=00;36:.ra=00;36:.wav=00;36:.oga=00;36:.opus=00;36' \
':
.spx=00;36:*.xspf=00;36:'

export LS_COLORS

Deixei em anexo (dev-to-uploads.s3.amazonaws.com/up...) um print do antes e depois desta config. Espero que ajude...

CollapseExpand
 
erickrock profile image
Erick Garcia Godoy
Entusiasta de tecnologias nativas.
  • Location
    São Paulo
  • Joined

Cara, perdão pela demora, talvez nem esteja mais precisando de apoio.
Mas tive este problema também, a maioria dos problemas diferentes que tive, normalmente consegui resolver utilizando os terminais tudo via Windows Terminal e com uma das variações da font "FiraCode" ou "Cascadia Code Mono".

CollapseExpand
 
d3lmaschio profile image
Matheus Delmaschio
I'm learning Python to build my own website and I want to learn about machine learning.

Valeu, ficou show de bola.

CollapseExpand
 
yagomaia profile image
Yago
  • Joined

Muito bom Erick !! Ficou melhor que o cmder que estava utilizando.. Gostaria de tirar uma dúvida, como você fez para o zsh reconhecer as variáveis de ambientes configuradas no path? Tem alguma forma se não inseri-las todas no .zshrc ?

CollapseExpand
 
erickrock profile image
Erick Garcia Godoy
Entusiasta de tecnologias nativas.
  • Location
    São Paulo
  • Joined

Vlw!

Está se referindo a literalmente utilizar os path como configuração de algum software ou voce quer rodar algo instalado no Windows apenas?

CollapseExpand
 
jeanfuchs profile image
Jean Carlos Fuchs Cordeiro
  • Location
    Joiville, SC
  • Work
    Student
  • Joined

Show! Encontrei dificuldade no passo de tornar o terminal linux padrão dentro do Windows Terminal no lugar do PowerShell, mas foi o único tutorial que segui a risca e consegui fazer funcionar tudo direitinho.

CollapseExpand
 
geovanek profile image
Geovane Krüger
  • Location
    São José, SC, BR
  • Joined
• Edited on• Edited

Estranho, pra mim continuava abrindo o bash como padrão no Windows Terminal.
Tive que alterar manualmente nas configurações do windows terminal

CollapseExpand
 
naygo profile image
Nayla Gomes
Information Systems Student and Development Intern
  • Location
    Brazil, BR
  • Education
    PUC Minas
  • Work
    Development Intern at Squadra Tecnologia
  • Joined

Ficou muito show aqui, obrigada :D
Só não estou conseguindo usar os comando do node, tenho que instalar ele pelo terminal para que funcione? E assim para outros demais pacotes?

CollapseExpand
 
erickrock profile image
Erick Garcia Godoy
Entusiasta de tecnologias nativas.
  • Location
    São Paulo
  • Joined
• Edited on• Edited

De nada poxa! Fico feliz que gostou.
Sim, o bash ou o zsh vão buscar os comandos e alias todos daquele sistema linux, se o node estiver no Windows apenas não vai funcionar.
É possível realizar alguns comandos Windows diretamente pelo linux, mas é necessário criar um alias no linux que invoque comandos Windows. Me manda msg no twitter pra me lembrar de como fazer isso, posso ajudar.

CollapseExpand
 
g4brielpeixoto profile image
Gabriel Peixoto
Studing to be a Sênior Web Developer.
  • Education
    Computer Science
  • Work
    Web Developer at Tek-System Ubá-MG, Brazil
  • Joined

Muito fera, obrigado pelo conhecimento compartilhado! Aqui no meu caso toda vez que abro o terminal recebebo isso: "/home/gabriel/.zshrc:123: command not found: zinit
/home/gabriel/.zshrc:145: command not found: zinit". Poderia me ajudar como resolver? Segui todo o passo a passo

CollapseExpand
 
rruffer profile image
Rodolfo Ruffer
  • Joined
• Edited on• Edited

Fala Gabriel.

Eu coloquei essas linhas antes da linha que dá o erro e funcionou (arquivo .zshrc):

ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git"#mkdir -p "$(dirname $ZINIT_HOME)"#git clone https://github.com/zdharma-continuum/zinit.git "$ZINIT_HOME"source "${ZINIT_HOME}/zinit.zsh"
Enter fullscreen modeExit fullscreen mode

As duas linhas do meio eu comentei prq toda vez que eu abro o terminal ele tentava substituir a pasta já existente e ficava aparecendo um erro. mas pode ser que no primeiro momento vc tenha que habilitar as duas.

Fonte:github.com/zdharma-continuum/zinit...

CollapseExpand
 
g4brielpeixoto profile image
Gabriel Peixoto
Studing to be a Sênior Web Developer.
  • Education
    Computer Science
  • Work
    Web Developer at Tek-System Ubá-MG, Brazil
  • Joined

Muito obrigado Rodolfo! Deu certo aqui.

CollapseExpand
 
ruandev profile image
Ruan Victor
  • Location
    Salvador
  • Work
    Software Engineer at Nubank
  • Joined

Show demais!!! Muito obrigado! Apenas a parte da configuração que não totalmente certo aqui, creio que por causa dosguid mas tirando isso funcionou tudo de boa

CollapseExpand
 
michellelira profile image
Michelle Lira (she/her)
  • Joined

Este tutorial definitivamente me salvou. Super obrigada!

Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment'spermalink.

For further actions, you may consider blocking this person and/orreporting abuse

Entusiasta de tecnologias nativas.
  • Location
    São Paulo
  • Joined

Trending onDEV CommunityHot

DEV Community

We're a place where coders share, stay up-to-date and grow their careers.

Log in Create account

[8]ページ先頭

©2009-2025 Movatter.jp