DEV Community

Cover image for Terminal do Windows com Oh My Posh
Mayanna Oliveira
Mayanna Oliveira

Posted on

Terminal do Windows com Oh My Posh

Conteúdo

Requisitos

Antes de iniciar a instalação é necessário configurar os pré-requisitos:

  1. Instalação do Winget via Microsoft Store.
  2. Baixar do Nerds Fonts as fontes MesloLGM, Fira Code Mono e Jet Brains Fonts Mono.
  3. Acessar a documentação do Oh My Posh e seguir o passo-a-passo.
  4. Lista de temas do Oh My Posh.
  5. Pode usar no Windows Terminal o tema Dracula ou customizar um de sua preferência.

Instalação do Winget

Toda a instalação no Oh My Posh é realizada via terminal utilizando o Winget para a instalação do pacote.
Apenas acesse a Microsoft Store diretamente da sua máquina, busque por Winget e clique em instalar.

Image description

Tema Dracula

A instalação do tema Dracula no Windowns Terminal é bem simples.

  1. Clique no terminal com o botão direito do mouse e vá em Configurações.
  2. Dentro das configurações acesse a opção Abrir com JSON.

Image description

  1. Insira dentro do bloco Schemes o tema do Dracula.

Image description

  • Código do tema do Dracula:
"schemes": [
    {
        "name": "Dracula",
        "cursorColor": "#F8F8F2",
        "selectionBackground": "#44475A",
        "background": "#282A36",
        "foreground": "#F8F8F2",
        "black": "#21222C",
        "blue": "#BD93F9",
        "cyan": "#8BE9FD",
        "green": "#50FA7B",
        "purple": "#FF79C6",
        "red": "#FF5555",
        "white": "#F8F8F2",
        "yellow": "#F1FA8C",
        "brightBlack": "#6272A4",
        "brightBlue": "#D6ACFF",
        "brightCyan": "#A4FFFF",
        "brightGreen": "#69FF94",
        "brightPurple": "#FF92DF",
        "brightRed": "#FF6E6E",
        "brightWhite": "#FFFFFF",
        "brightYellow": "#FFFFA5"
    }
]
Enter fullscreen mode Exit fullscreen mode
  • A partir do exemplo acima é possível também criar o seu próprio tema com suas cores favorias.
  • Para alterar o tema do Windows Terminal acesse novamente as Configurações > Esquema de Cores, selecione Dracula e salve.

Image description

  1. Caso o passo 4 não funcione acesse Configurações > PoweShell > Aparência > Esquema de Cores, selecione Dracula e salve.

Image description

  1. Aproveite que está no passo 5 e troque o Tipo de Fonte para FireCore Nerd Font e salve.

Instalação do Oh My Posh

Toda a instalação é feita via terminal graças ao Winget, siga o passos abaixo:

  1. Ter o Winget devidamente instalado.
  2. Instalar as fonts do Nerd Fonts.
  3. Acessar o Power Shell e digitar winget install JanDeDobbeleer.OhMyPosh -s winget.
  4. Instalar o temas
  5. Efetuar a instalação com o comando winget install JanDeDobbeleer.OhMyPosh -s winget.
  6. Insira o comando winget upgrade JanDeDobbeleer.OhMyPosh -s winget para verificar se tem atualização.
  7. Configure o tema usando o comando oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\jandedobbeleer.omp.json". o terminal vai retornar um outro comando (@(& 'C:/Users/Dev/AppData/Local/Programs/oh-my-posh/bin/oh-my-posh.exe' init pwsh --config='C:\Users\Dev\AppData\Local\Programs\oh-my-posh\themes\jandedobbeleer.omp.json' --print) -join "n") | Invoke-Expression` então use ele novamente como mostra abaixo:
  8. Após a instalação rode o comando notepad $PROFILE para configurar o perfil e insira as linhas:


import-Module oh-my-posh
Set-PoshPrompt -Theme JanDeDobbeleer

  1. JanDeDobbeleer é o nome do tema para conhecer mais acesse is temas no site ou acessar o repositório do Oh My Posh no GitHutb.

Oh My Posh e o Antivírus

O Oh My Posh passa por atualizações frequentes por isso, o antivírus pode ocasionalmente o sinaliza (falso positivo) então, acesse o seu antivírus e libere a execução do Oh My Posh. Para localizar o executável utilize o comando (Get-Command oh-my-posh).Source.

Posh Git e Oh My Posh

O Oh My Posh é um módulo do PowerShell que ajuda a decorar nossa janela do PowerShell usando diferentes temas integrados e personalizados.

O Posh Git é um módulo do PowerShell que integra Git e PowerShell, fornecendo informações resumidas de status do Git que podem ser exibidas no prompt do PowerShell, por exemplo, posh-git também fornece suporte para preenchimento de guias para comandos git comuns, nomes de ramificações, caminhos e muito mais.

Instale ambos através dos comandos Install-Module posh-git -Scope CurrentUser e logo após o comando Install-Module oh-my-posh -Scope CurrentUser.

Alterar o Tema

Para verificar todos os temas disponíveis use o comando Get-PoshThemes. Caso queira alterar é só seguir os passos já abordados:

  1. Acessar o terminal e usar o comando notepad $PROFILE ou code $PROFILE.
  2. Trocar JanDeDobbeleer no código abaixo pelo tema que mais agrada.


import-Module oh-my-posh
Set-PoshPrompt -Theme JanDeDobbeleer

Instalação do PSReadLine

O PSReadLine vai ajudar a otimizar a sua experiência no uso do terminal, a instalação é simples:

  1. Digite no terminal o comando: Install-Module PSReadLine -AllowPrerelease -Force.
  2. Use o notepad $PROFILE para acessar o perfil e inserir as linhas:


if ($host.Name -eq 'ConsoleHost')
{
Import-Module PSReadLine
}

Manipulando Segmentos

O Oh My Posh tem alguns seguimentos que podem ser instalados conforme sua rotina de trabalho, abaixo veja o exemplo de um usuário de Git:


{
"type": "git",
"style": "powerline",
"powerline_symbol": "",
"invert_powerline": false,
"foreground": "#193549",
"background": "#fffb38",
"leading_diamond": "",
"trailing_diamond": "",
"properties": {
"display_status": true,
"display_stash_count": true,
"display_upstream_icon": true
}

Os segmentos estão disponíveis no site do projeto e sao inseridos dentro do block conforme o exemplo abaixo:


{
"blocks": [
{
// positioning metadata (not shown)
"segments": []
}
]
}

Instalação do Terminal Icons

Toda vez que listar um repositório com o comando ls será exibido os ícones dos arquivos conforme suas extensões, a instalação do Terminal Icons é bem simples e també feita via terminal.

  1. Insira no terminal o comando Install-Module -Name Terminal-Icons -Repository PSGallery.
  2. Após instalado os ícones acesse o perfil do terminal notepad @=$PROFILE e insira a linha Import-Module -Name Terminal-Icons.
  3. Agora teste a instalação usando o comando ls.

Navegação com PSReadLine

O PSReadLine facilita a navegação poís tem um pacote de funções que ajudam o usuário a ter mais produtividade no uso do terminal, sua instalação é via terminao siga os passos:

  1. Efetue a instalção com a linha de comando Install-Module PSReadLine -AllowPrerelease -Force.
  2. Após instalado acesse o perfil do terminal notepad @=$PROFILE.
  3. Insira as linhas:


Import-Module PSReadLine
Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -PredictionViewStyle ListView
Set-PSReadLineOption -EditMode Windows

  1. Agora digite notepad e perceba que o histórico do que foi digitado antes é exibido.

Alterando as Cores

As cores padrão também podem ser alteradas conforme exemplo:


{
"type": "aws",
"style": "powerline",
"powerline_symbol": "\uE0B0",
"foreground": "#ffffff",
"background": "#111111",
"foreground_templates": [
"{{if contains \"default\" .Profile}}#FFA400{{end}}",
"{{if contains \"jan\" .Profile}}#f1184c{{end}}"
]
}

Corrigindo Fonts no Terminal

Caso o terminal não exiba das fonts é somente rodar o comando oh-my-posh font install --user e todas as fonts e icones irão aparece na linha de comando.
Caso continue aparecendo caracteres qubrados digite o comando notepade $PROFILE e insira a linha oh-my-posh config migrate glyphs --write veja o exemplo abaixo:


import-Module oh-my-posh
Set-PoshPrompt -Theme JanDeDobbeleer
oh-my-posh config migrate glyphs --write

Essa foi a recomendação da própria documentação no link After updating my Nerd Font to a newer version, the prompt displays unknown characters.

Tema Personalizado

É possível também criar o seu próprio tema e personalizar sua linha do terminal como achar melhor. Como foi abordado nos tópicos anteriores, tem na documentação do Oh My Posh a lista de Segments, Colors entre outros.

  1. Utilize o tema padrão JanDeDobbeleer como referência para as alterações.
  2. Acesse o site do Oh My Posh > Menu > Docs > Segments e busque pelo segmento que deseja utilizar.
  3. Copie o segmento e cole dentro do de blocks como mostra abaixo:


{
"$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
...
"blocks": [
{
...
"segments": [
{
"type": "path",
"style": "powerline",
"powerline_symbol": "\uE0B0",
"foreground": "#ffffff",
"background": "#61AFEF",
"template": " {{ .Path }}} ",
"properties": {
...
}
}
]
}
]
}

  1. Salve o arquivo na pasta que deseja e depois insira no perfil do Oh My Posh o diretório para esse arquivo customizado.
  2. Digite no terminal notepad $PROFILE.
  3. Insira a linha: oh-my-posh --init --shell pwsh --config C:\Users\Dev\PowerShell\mytheme.omp.json | Invoke-Expression

Terminal no Visual Studio Code

Para exibir seu terminal no VS Code da mesma forma que no Windows Terminal basta aplicar duas alterações nas configurações.

  1. Acesse: Menu > Settings.
  2. Efetue a pesquisa de terminal.integrated.fontFamily e insira a font "MesloLGM Nerd Font".
  3. Depois pesquise terminal.integrated.fontSize e insira o tamanho 12.

Anexo

No fim o profile do Oh My Posh ficará conforme o exemplo em anexo.

Top comments (0)