<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Daniela Caus</title>
    <description>The latest articles on DEV Community by Daniela Caus (@danicaus).</description>
    <link>https://dev.to/danicaus</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F847614%2Ff4a0498a-037e-4dd8-9e1a-cd5f7d127afb.jpeg</url>
      <title>DEV Community: Daniela Caus</title>
      <link>https://dev.to/danicaus</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/danicaus"/>
    <language>en</language>
    <item>
      <title>Personalizando o Windows Terminal</title>
      <dc:creator>Daniela Caus</dc:creator>
      <pubDate>Sun, 17 Jul 2022 23:38:19 +0000</pubDate>
      <link>https://dev.to/danicaus/personalizando-o-windows-terminal-50ca</link>
      <guid>https://dev.to/danicaus/personalizando-o-windows-terminal-50ca</guid>
      <description>&lt;p&gt; 1. Programas&lt;br&gt;
       1.1. Windows Terminal&lt;br&gt;
       1.2. Powershell&lt;br&gt;
       1.3. Scoop&lt;br&gt;
 2. Aparência do Powershell&lt;br&gt;
       2.4. Oh-my-posh&lt;br&gt;
       2.5. Nerd Fonts&lt;br&gt;
       2.6. Terminal Icons&lt;br&gt;
 3. Extensões de autocomplete&lt;br&gt;
       3.7. Z&lt;br&gt;
       3.8. PSReadLine&lt;br&gt;
       3.9. Posh git&lt;br&gt;
 4. Conclusão&lt;/p&gt;




&lt;p&gt;Recentemente tive mais contato com outros desenvolvedores via &lt;em&gt;pair programming&lt;/em&gt;, e percebi o quanto o terminal deles era mais agradável de usar.&lt;/p&gt;

&lt;p&gt;Com isso, conheci alguns programas e extensões que tornam a experiência de navegação entre as pastas muito mais simples, além de deixá-lo visualmente mais agradável e informativo. Mesmo quando uso o terminal no VS Code, a diferença foi gritante:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkdowdpkf771sjxxzxt2c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkdowdpkf771sjxxzxt2c.png" alt="Terminal como usava antes, que era o bash no VS Code"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc4a7b8zh5r8gl8uuv1ja.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc4a7b8zh5r8gl8uuv1ja.png" alt="Meu terminal depois, usando o Powershell no Windows terminal"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ainda não parti para o lado Linux ou Mac da força, então fui pesquisar por soluções no &lt;del&gt;bom e tradicional&lt;/del&gt; Windows, mesmo.&lt;/p&gt;

&lt;p&gt;Se você tem interesse em ter uma experiência melhor no terminal usando Windows, dá uma olhada no que fiz por aqui e veja se tem algo que quer replicar por aí!&lt;/p&gt;

&lt;h2&gt;
  
  
  Programas
&lt;/h2&gt;

&lt;p&gt;Inicialmente eu usava só o git bash no próprio VS Code. Quando passei a usar mais de um repositório para rodar uma aplicação, senti a necessidade de ter um terminal onde eu pudesse acompanhar os comandos que eu rodava em cada um, de forma mais centralizada, sem que necessariamente eu tivesse que abrir a IDE. Pra isso, baixei programas que me permitisse usar abas (cada uma acessando um path independente, como o VS Code permite), e um terminal mais atualizado.&lt;/p&gt;

&lt;h3&gt;
  
  
  Windows Terminal
&lt;/h3&gt;

&lt;p&gt;Esse programa pode ser baixado na Microsoft Store, que geralmente vem com o Windows. &lt;a href="https://apps.microsoft.com/store/detail/windows-terminal/9N0DX20HK701?hl=en-us&amp;amp;gl=US" rel="noopener noreferrer"&gt;Segue aqui o link&lt;/a&gt; para te dar um atalho.&lt;/p&gt;

&lt;p&gt;Pra mim, ele tem sido melhor que o Windows Powershell, porque me permite abrir várias abas do terminal, assim como geralmente fazemos com abas de um navegador. Também é possível deixar a aparência dele mais bonitinha, se você gostar desses "fru-frus", como eu. Sem os outros programas que mencionarei mais pra frente, logo de início, já é possível deixá-lo assim:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3xbrl0vvzye1m6f8tdc5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3xbrl0vvzye1m6f8tdc5.png" alt="Windows terminal com letras todas cinza claro e fundo com transparência fosca"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para adicionar essa transparência é necessário mexer nas configurações, mas isso já te ensino, porque antes quero apresentar uma versão mais atualizada do terminal que vem com o Windows.&lt;/p&gt;

&lt;h3&gt;
  
  
  Powershell
&lt;/h3&gt;

&lt;p&gt;É uma versão mais atualizada do Windows Powershell que vem com o Windows (esse azul abaixo). A Microsoft fala que as duas versões podem ser usados em conjunto, fazendo com que a instalação de um não substitua o outro, mas não sei o porquê desse comportamento. Também é possível instalar o Powershell a partir da versão 7 na loja da Microsoft, &lt;a href="https://apps.microsoft.com/store/detail/powershell/9MZ1SNWT0N5D?hl=pt-br&amp;amp;gl=BR" rel="noopener noreferrer"&gt;nesse link&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faqup3s8aagnx8wobh9g9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faqup3s8aagnx8wobh9g9.png" alt="Windows Powershell, uma versão mais antiga"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora sim, vamos ver como deixar o Windows Terminal com uma aparência um pouco mais amigável, além de alterar o terminal padrão para o PowerShell.&lt;/p&gt;

&lt;p&gt;No Windows Terminal, selecione as configurações seguindo os caminhos a seguir:&lt;/p&gt;

&lt;p&gt;Inicialização &amp;gt; Perfil padrão: Powershell&lt;br&gt;
Aparência &amp;gt; Usar material acrílico [...]: Ativado&lt;br&gt;
Padrões &amp;gt; Aparência: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Esquema de cores: Vintage&lt;/li&gt;
&lt;li&gt;Transparência &amp;gt; habilitar material acrílico: Ativado&lt;/li&gt;
&lt;li&gt;Transparência &amp;gt; Opacidade de fundo: 70%&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Essas são algumas das configurações do meu terminal, mas é legal ir explorando para entender as suas preferências.&lt;/p&gt;

&lt;h3&gt;
  
  
  Scoop
&lt;/h3&gt;

&lt;p&gt;O Scoop é um "instalador" de programas, assim como o Winget (que geralmente já vem com o Windows). Esse é um programa opcional, não vou usá-lo para as extensões que eu mencionar nesse artigo, mas ele pode te ajudar a instalar vários outros programas via linha de comando, de uma forma mais rápida e simples, sem aquelas telinhas de download e instalação (dá até pra usá-lo para instalar o Spotify, por exemplo).&lt;/p&gt;

&lt;p&gt;A instalação do Scoop pode ser feita com os dois comandos abaixo: &lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Set-ExecutionPolicy&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;RemoteSigned&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Scope&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;CurrentUser&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;irm&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;get.scoop.sh&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;iex&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Obs.: O primeiro comando é uma configuração importante para que seja possível instalar coisas remotamente na sua máquina. Sem isso, pode ser que seu Windows não permita a instalação nesse formato.&lt;/p&gt;

&lt;p&gt;Em seguida, é necessário adicionar o diretório &lt;code&gt;C:\Users\&amp;lt;USERNAME&amp;gt;\scoop\shims&lt;/code&gt; (lembre de adaptar esse endereço para o seu username na sua máquina) como um novo diretório dentre as variáveis ambiente da máquina dentro de Path: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Clique na tecla Windows do teclado e busque por "variáveis ambiente". Deve aparecer a opção "Editar as variáveis ambientes do sistema". Selecione essa opção.&lt;/li&gt;
&lt;li&gt;Clique em "Variáveis ambiente"&lt;/li&gt;
&lt;li&gt;Selecione a opção "Path" dentro de "variáveis do Sistema", e depois clique em "editar"&lt;/li&gt;
&lt;li&gt;Selecione "novo", e digite o diretório informado acima. No meu caso, foi assim:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fitkio2q0fvb46ui041d2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fitkio2q0fvb46ui041d2.png" alt="Passo a passo para editar as variáveis ambientes no Windows 10"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Aparência do Powershell
&lt;/h2&gt;

&lt;p&gt;Por mais que já tenha mencionado algumas configurações que personalizam a aparência do Windows terminal, agora vou especificar alguns programas que também personalizam o conteúdo dele.&lt;/p&gt;

&lt;h3&gt;
  
  
  Oh-my-posh
&lt;/h3&gt;

&lt;p&gt;Essa é uma extensão que personaliza a aparência e o conteúdo da linha de comando. Por aqui, incluí o nome do usuário, o caminho da pasta, a branch atual, e a hora, cada uma dessas partes com uma cor que gosto:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F31ghzxnqpcgrlm0etvlc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F31ghzxnqpcgrlm0etvlc.png" alt="Meu terminal com oh-my-posh, bem colorido"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para instalar o oh-my-posh, uma das opções é usar o winget:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;winget&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;install&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;JanDeDobbeleer.OhMyPosh&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-s&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;winget&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://ohmyposh.dev/docs/installation/windows" rel="noopener noreferrer"&gt;No site da aplicação&lt;/a&gt; tem outras opções de instalação (inclusive com scoop!), caso não queira usar essa, ou encontre algum tipo de problema.&lt;/p&gt;

&lt;p&gt;Depois dessa instalação, é necessário que o perfil do seu terminal identifique que ele precisa usar o oh-my-posh. Pra isso, vamos abrir o perfil do Powershell no VS Code com o comando abaixo &lt;sup id="fnref1"&gt;1&lt;/sup&gt;:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;code&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="bp"&gt;$PROFILE&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;ATENÇÃO&lt;/strong&gt;: É importante usar esse comando dentro do terminal Powershell, uma vez que é dele que estamos falando. Se abrir dentro do Windows Powershell, por exemplo, já será outro perfil.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;O Powershell lê e executa os comandos desse arquivo a cada vez que é aberto. Nele, copie e cole o seguinte comando:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\jandedobbeleer.omp.json"


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Salvando esse arquivo e abrindo uma nova aba no terminal, você já verá algo como a imagem abaixo. Pode ser que os ícones ainda não estejam aparecendo, mas isso está relacionado à fonte, que falarei na próxima aplicação:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl3dnvi8cwq4k268mf78i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl3dnvi8cwq4k268mf78i.png" alt="Terminal com o tema Jandedobbeleer"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Caso queira utilizar um dos temas incluídos na instalação do oh-my-posh, você pode explorar &lt;a href="https://ohmyposh.dev/docs/themes" rel="noopener noreferrer"&gt;nessa página&lt;/a&gt;. Basta substituir o nome do tema no comando do perfil do Powershell que você copiou acima. Se quiser usar o "M365Princess", por exemplo, é só trocar o comando no arquivo por:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\M365Princess.omp.json"


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;No meu caso, eu fiz um tema personalizado. Se quiser fazer o mesmo, você pode criar um arquivo JSON e informar o caminho até ele nesse comando para o oh-my-posh do perfil do Powershell. O Oh-my-posh ensina a fazer isso na seção de configuração de sua documentação. Se quiser usar o meu, &lt;a href="https://github.com/danicaus/dotfiles/blob/main/powershell/danicaus.omp.json" rel="noopener noreferrer"&gt;ele está aqui&lt;/a&gt;, lembrando eu posso tê-lo modificado dependendo do momento do futuro em que você estiver lendo isso.&lt;/p&gt;

&lt;h3&gt;
  
  
  Nerd Fonts
&lt;/h3&gt;

&lt;p&gt;Para que os ícones do seu terminal apareçam, o oh-my-posh precisa que você use uma fonte compatível com eles, e uma das recomendações da própria aplicação é instalar uma fonte dentre as "Nerd Fonts".&lt;/p&gt;

&lt;p&gt;Você pode baixar diretamente do &lt;a href="https://github.com/ryanoasis/nerd-fonts" rel="noopener noreferrer"&gt;repositório deles&lt;/a&gt;, ou usando um comando do oh-my-posh:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;oh-my-posh&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;font&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;install&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Essa última forma é bem intuitiva, basta selecionar uma das fontes e ele fará a instalação. Depois disso você precisará selecionar a fonte baixada nas configurações do Windows Terminal:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj35po5decro8r53rjeo1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fj35po5decro8r53rjeo1.png" alt="Seleção de fonte no terminal"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Caso tenha baixado a fonte de outra forma, você também deve encontrá-la nas configurações.&lt;/p&gt;

&lt;h3&gt;
  
  
  Terminal Icons
&lt;/h3&gt;

&lt;p&gt;Essa é mais uma extensão para melhorar a aparência do terminal, acrescentando ícones do tipo de arquivo ou pasta que está na lista:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F33hg32dqvfugd75rs3y2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F33hg32dqvfugd75rs3y2.png" alt="Comando "&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para instalar, basta rodar os seguintes comandos no seu terminal:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Install-Module&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Terminal-Icons&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Repository&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;PSGallery&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Force&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Import-Module&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Terminal-Icons&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;A cada vez que você abrir seu terminal, para ver o terminal Icons em funcionamento, você precisaria rodar novamente o comando &lt;code&gt;Import-Module Terminal-Icons&lt;/code&gt;. Para que isso não seja necessário, basta acrescentar esse comando no arquivo de perfil do Powershell. (Lembra como faz isso? -&amp;gt; &lt;code&gt;code $PROFILE&lt;/code&gt;).&lt;/p&gt;

&lt;h2&gt;
  
  
  Extensões de autocomplete
&lt;/h2&gt;

&lt;p&gt;Ok, já falei bastante de extensões que deixam o terminal mais bonito. A partir daqui, vou mostrar algumas que são mega úteis para facilitar o dia a dia, especialmente na navegação entre as pastas.&lt;/p&gt;

&lt;h3&gt;
  
  
  Z
&lt;/h3&gt;

&lt;p&gt;Essa extensão é um &lt;em&gt;intellisense&lt;/em&gt;  que consegue aprender com a navegação que você faz entre as pastas, possibilitando que não seja mais necessário digitar o caminho completo quando estiver navegando entre uma e outra.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftvaa2kwlw3fa6qxekqfu.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftvaa2kwlw3fa6qxekqfu.gif" alt="Gif do Z em ação no Windows Terminal"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Como se trata de um &lt;em&gt;intellisense&lt;/em&gt;, ele precisa que você faça algumas navegações entre as pastas para "aprender" os que mais acessa. Com isso, é natural que ele não aja conforme o gif acima das primeiras vezes, mas ele aprende bem rápido.&lt;/p&gt;

&lt;p&gt;Para instalá-lo, basta digitar o comando:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Install-Module&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Z&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Force&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;h3&gt;
  
  
  PSReadLine
&lt;/h3&gt;

&lt;p&gt;O PSReadLine é um módulo do Powershell que permite o autocomplete de uma forma inteligente, também. Algumas configurações interessantes podem ser usadas para visualizar e navegar pelo histórico de comandos similares ao que você está digitando:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fme30tqgjq4ukz3kiuwxv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fme30tqgjq4ukz3kiuwxv.png" alt="Histórico de comandos com PSReadline configurado"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para instalar, o comando é:&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Install-Module&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;PSReadLine&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-AllowPrerelease&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Force&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-SkipPublisherCheck&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Agora, para que as opções apareçam conforme a imagem acima, vamos colocar mais alguns comandos no perfil do Powershell (aquele &lt;code&gt;code $PROFILE&lt;/code&gt; maroto).&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Set-PSReadlineKeyHandler&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Tab&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;MenuComplete&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Set-PSReadLineOption&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-PredictionSource&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;History&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Set-PSReadLineOption&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-PredictionViewStyle&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;ListView&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Você pode aprender mais sobre esses comandos na &lt;a href="https://docs.microsoft.com/en-us/powershell/module/psreadline/?view=powershell-7.2" rel="noopener noreferrer"&gt;documentação do PSReadLine&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Posh git
&lt;/h3&gt;

&lt;p&gt;O PSReadLine e o Z conseguem dar conta de facilitar o uso de vários comandos, no entanto o posh-git ajuda particularmente no autocomplete dos comandos do git. Um simples "tab" após digitar &lt;code&gt;git checkout&lt;/code&gt;, por exemplo, faz com que apareçam todas as opções de branches existentes no projeto.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fylrhwyiu2ynjntoxna7u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fylrhwyiu2ynjntoxna7u.png" alt="Autocomplete com Posh Git"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Não só isso, mas existem outros &lt;a href="https://github.com/dahlbyk/posh-git" rel="noopener noreferrer"&gt;vários benefícios&lt;/a&gt; que essa extensão pode trazer. &lt;/p&gt;

&lt;p&gt;Para usar, basta rodar o comando:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Install-Module&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;posh-git&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Scope&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;CurrentUser&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Force&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;h2&gt;
  
  
  Conclusão
&lt;/h2&gt;

&lt;p&gt;Com essas configurações, a linha de comando fica mais apresentável e fácil de navegar. Ela pode até mesmo se tornar mais informativa, caso sejam incluídos alguns segmentos específicos do oh-my-posh.&lt;/p&gt;

&lt;p&gt;Para as configurações de aparência, acrescentamos basicamente algumas cores e ícones, mas também adicionamos blocos de conteúdo baseados no diretório em que você se encontra na navegação de pastas e arquivos.&lt;/p&gt;

&lt;p&gt;Já as extensões de autocomplete permitem que ferramentas inteligentes usem o seu histórico de comandos para diminuir o tanto que você digita no terminal.&lt;/p&gt;

&lt;p&gt;Além das configurações que ensinei por aqui, também é possível dar até mesmo um "apelido" para alguns comandos, como por exemplo para o &lt;code&gt;git&lt;/code&gt;, usando: &lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Set-Alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;g&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;git&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Usando esse &lt;code&gt;Set-Alias&lt;/code&gt; no seu perfil do Powershell, você pode escrever &lt;code&gt;g&lt;/code&gt; no lugar de &lt;code&gt;git&lt;/code&gt;, e economizar umas letrinhas.&lt;/p&gt;

&lt;p&gt;Por fim, compartilho com você o meu arquivo de perfil do Powershell:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="c"&gt;# Prompt&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="c"&gt;# Import-Module oh-my-posh&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Import-Module&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;posh-git&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Import-Module&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Terminal-Icons&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="c"&gt;# Carrega configurações do prompt&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;oh-my-posh&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;init&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;pwsh&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;--config&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;~\Documents\PowerShell\danicaus.omp.json&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;|&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Invoke-Expression&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="c"&gt;# Navegação com autocomplete&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Set-PSReadlineKeyHandler&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Tab&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;MenuComplete&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Set-PSReadlineKeyHandler&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;UpArrow&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;HistorySearchBackward&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Set-PSReadlineKeyHandler&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Key&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;DownArrow&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;HistorySearchForward&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Set-PSReadLineOption&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-PredictionSource&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;History&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Set-PSReadLineOption&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-PredictionViewStyle&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;ListView&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="c"&gt;# Adaptando comandos do teclado&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Set-Alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;vim&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;nvim&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Set-Alias&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;g&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;git&lt;/span&gt;&lt;span class="w"&gt;


&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Espero que essas informações tenham sido uteis pra você! &lt;/p&gt;

&lt;p&gt;Caso tenha alguma dúvida ou sugestão de mais extensões para deixar o Powershell ainda melhor, comente aí embaixo! 💻&lt;/p&gt;




&lt;ol&gt;

&lt;li id="fn1"&gt;
&lt;p&gt;Também é possível usar o bloco de notas, trocando a palavra "code" por "note". ↩&lt;/p&gt;
&lt;/li&gt;

&lt;/ol&gt;

</description>
      <category>beginners</category>
      <category>tutorial</category>
      <category>powershell</category>
      <category>windows</category>
    </item>
  </channel>
</rss>
