Windows Custom Terminal
Tags: beginners, windows, spanish, tutorial
Published: 2021-11-05 01:35:20

Hace poco que volví a usar windows por el anuncio de W11.
Mientras buscaba terminales que funcionaran bien; me decidí por **Windows Terminal**, si bien esta ya cuenta con personalización de colores, no era exactamente lo que estaba buscando. Así que hoy te mostrarte como pasar de esto ->

![Terminal](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/20440dhtdn9f42lortxw.png)

a esto ->

![Custom Terminal](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/67soo4npzu3htb88sq6f.png)

### Paso 1

Asegurémonos de tener **winget** disponible en nuestra terminal, sino quizá deberías actualizar tu [App Installer](https://www.microsoft.com/store/productId/9NBLGGH4NNS1).

## Paso 2

Instalar [Oh My Posh](https://ohmyposh.dev/)

```shell
winget install JanDeDobbeleer.OhMyPosh
```

## Paso 3
Crear un perfil de powershell, para esto el mismo Microsoft nos da unos pasos muy sencillos a seguir.

- Para crear el perfil
````shell
if (!(Test-Path -Path $PROFILE)) {
  New-Item -ItemType File -Path $PROFILE -Force
}
```

- Para editar el perfil
```shell
notepad $PROFILE
```

## Paso 3
Agregar la configuración a $PROFILE para iniciar la terminal con oh-my-posh.

```shell
oh-my-posh --init --shell pwsh --config ~\AppData\Local\Programs\oh-my-posh\themes\jandedobbeleer.omp.json | Invoke-Expression
```

Quizá para este punto te gastaría reiniciar el perfil para ver el resultado.

```shell
. $PROFILE
```

> NOTE:
> Si no utilizas alguna [NERD FONT](https://www.nerdfonts.com/) es probable que no veas los iconos y solo veas unos cuadros feos por ahí.

## Paso 4 
Instala la nerd font de tu preferencia para este ejemplo usare la de Hack Nerd Font, por que se parece un poco a la Jetbrains Mono que es la que utilizo para mi editor. Si eres bastante nuevo en esto te recomiendo solo instalar la **regular complete**.

para abrir las configuraciones de la terminal usa `ctrl + ,` y busca **Abrir archivo json** y lo modificamos.

```json
"profiles":
    {
        "defaults":
        {
            "fontFace": "Hack Nerd Font" // AQUI VA TU FUENTE
        }
    }
```

## Paso 5
Busca el tema que mas te agrade y cámbialo a tu gusto.

```shell
Get-ChildItem -Path "~\AppData\Local\Programs\oh-my-posh\themes\*" -Include '*.omp.json' | Sort-Object Name | ForEach-Object -Process {
    $esc = [char]27
    Write-Host ""
    Write-Host "$esc[1m$($_.BaseName)$esc[0m"
    Write-Host ""
    oh-my-posh --config $($_.FullName) --pwd $PWD
    Write-Host ""
}
```

Una vez que te decidas que tema utilizar solo cambialo en tu $PROFILE.

```shell
notepad $PROFILE
```

````shell
oh-my-posh --init --shell pwsh --config ~\AppData\Local\Programs\oh-my-posh\themes\AQUI_VA_EL_NOMBRE_DEL_TEMA_QUE_TE_HAYA_GUSTADO.omp.json | Invoke-Expression
```

reinicia el perfil

```shell
. $PROFILE
```

## Paso 6
Quieres ir un poco mas allá? modifica el tema predeterminado a tu gusto. Exporta una copia del tema, haz todas las modificaciones que quieras y cambia la dirección del archivo a cargar en tu $PROFILE, mucha suerte.

```shell
Export-PoshTheme -FilePath "~/.AQUI_VA_EL_NOMBRE_DEL_TEMA_QUE_QUIERAS_MODIFICAR.omp.json" -Format json
```

Tienes alguna duda? Déjala en los comentarios 👀👀
Happy hacking 🧑‍💻