🥸

PowerShell の見た目をイイ感じにする

2024/03/17に公開

Windows Terminal の見た目がイマイチイケてないなぁと思い、見た目をイイ感じにしてみました。
PowerShell 自体への設定のため、VSCode や IDE などのターミナルでも同じように表示されます。

設定完了後のターミナル

バージョン

  • Windows: 11
  • PowerShell: 7.4.1
  • Windows Terminal: 1.19.10573.0
  • posh-git: 1.1.0
  • oh-my-posh: 19.12.0

インストール方法

1. Git をインストール

Git が使えればなんでも良いと思います。
私は Git for Windows をインストールしました。

また、パスも合わせて通しておいてください。

2. Windows Terminal をインストール

Microsoft Store からインストールしてください。

3. PowerShell 7系をインストール

OS にデフォルトで入っている5系とは別に、新たに7系をインストールする必要があります。

以下のコマンドを実行してインストールします。

winget install --id Microsoft.Powershell --source winget

4. Powerline を使うためのモジュールをインストール

a. oh-my-posh

PowerShell のテーマ管理などを行うモジュールです。

以下のコマンドを実行してインストールします。

winget install JanDeDobbeleer.OhMyPosh -s winget

b. posh-git

Git ステータスの表示をいい感じにしてくれるモジュールです。

以下のコマンドを実行してインストールします。

PowerShellGet\Install-Module posh-git -Scope CurrentUser -Force

PSGallery のパッケージのインストールを求められた場合は yes を選択してください。

5. カスタムテーマの作成

テーマは paradox_dracula というカスタムテーマを新たに作成します。
既存のテーマの paradox をベースに、カラースキーマを dracula に寄せたものです。

C:\Users\{ User }\Documents\PowerShell\Modules\oh-my-posh\5.13.0\themes\paradox_dracula.omp.json を新規作成し、以下の JSON を記述してください。

{
  "$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
  "blocks": [
    {
      "type": "prompt",
      "alignment": "left",
      "segments": [
        {
          "type": "root",
          "style": "powerline",
          "powerline_symbol": "\uE70F",
          "foreground": "100E23_1",
          "background": "FFE9AA_1",
          "properties": {
            "root_icon": "\uE70F"
          }
        },
        {
          "type": "path",
          "style": "powerline",
          "powerline_symbol": "\uE0B0",
          "foreground": "100E23_1",
          "background": "BD93F9_1",
          "properties": {
            "folder_icon": "\uF115",
            "folder_separator_icon": " \uE0B1 ",
            "style": "full"
          }
        },
        {
          "type": "git",
          "style": "powerline",
          "powerline_symbol": "\uE0B0",
          "foreground": "193549_1",
          "background": "50FA7B_1"
        },
        {
          "type": "python",
          "style": "powerline",
          "powerline_symbol": "\uE0B0",
          "foreground": "100E23_1",
          "background": "906CFF_1",
          "properties": {
            "prefix": " \uE235 "
          }
        },
        {
          "type": "exit",
          "style": "powerline",
          "powerline_symbol": "\uE0B0",
          "foreground": "FFFFFF_1",
          "background": "FF8080_1",
          "properties": {
            "prefix": " \uE20F"
          }
        }
      ]
    }
  ],
  "final_space": true
}

6. PowerShell のプロファイルを設定

notepad $PROFILE を実行してエディタを起動し、以下を記述してください。

# bash風のtab補完
Set-PSReadLineKeyHandler -Key Tab -Function Complete

# モジュールを有効化
Import-Module posh-git

# カスタムテーマを有効化
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\paradox_dracula.omp.json" | Invoke-Expression

7. Powerline に対応したフォントをインストール

今回は HackGenNerd Console を使用します。

HackGen でなくても良いですが、Nerd が含まれているフォントか Nerd を別途インストールしてください。
アイコン (絵文字) の表示で文字化けしてしまいます。

8. Windows Terminal にフォントとカラースキーマを設定

設定ファイルに以下を記述してください。

"profiles":
{
    // 省略
    "defaults":
    {
        "colorScheme": "Dracula",
        "font":
        {
            "face": "HackGenNerd Console"
        }
    },
    // 省略
}

9. システム環境変数にパスを追加する (オプション)

デフォルトだとユーザー環境変数の Pathoh-my-posh のパスが追加されます。
ターミナルを管理者権限で実行するとパスが通ってないことによるエラーが出るため、必要であればコピペして通してください。

参考

https://www.beeete2.com/blog/?p=2619
https://learn.microsoft.com/ja-jp/powershell/scripting/install/installing-powershell-on-windows?view=powershell-7.4
https://ohmyposh.dev/docs/installation/windows
https://github.com/dahlbyk/posh-git

GitHubで編集を提案

Discussion