次の方法で共有


チュートリアル - Oh My Posh を使用して PowerShell または WSL のカスタム プロンプトを設定する

Oh My Posh は、Git ステータスの色分けとプロンプトを提供する、完全にカスタマイズされたコマンド プロンプト エクスペリエンスのテーマ機能を提供します。

ターミナルの配色またはアプリケーションをカスタマイズするだけの場合は、Windows ターミナル設定で行うことができます (Oh My Posh テーマをインストールする必要はありません)。

このチュートリアルでは、次の作業を行う方法について説明します。

Windows ターミナルのカスタム プロンプト

Nerd Font をインストールする

カスタマイズされたコマンド プロンプトでは、多くの場合、グリフ (グラフィック シンボル) を使用してプロンプトのスタイルを設定します。 フォントに適切なグリフが含まれていない場合は、プロンプトに Unicode 置換文字 '▯' が複数表示されることがあります。

ターミナル内のすべてのグリフを表示するには、Cascadia Code NF などの Nerd Font をインストールすることをお勧めします。これは、 Cascadia Code のリリース ページからダウンロードできます

ダウンロードが完了したら、フォントを解凍してシステムにインストールする必要があります (Windows に新しいフォントを追加する方法)。

Oh My Posh と Terminal Icons で使用する Nerd Font を設定するには、Windows ターミナルのドロップダウン メニューから [設定] (Ctrl+,) を選択して、Windows ターミナルの設定 UI を開きます。 フォントを適用するプロファイル (PowerShell など) を選択し、 Appearanceを選択します。 [Font faceドロップダウン メニューで、[Cascadia Code NF または使用する Nerd Font 選択します。

Note

Cascadia Code PL などのグリフ アイコンをサポートしていないターミナル フォントを使用する場合は、追加のアイコンが不要であることを示す、minimal関数を含む Oh My Posh テーマの使用を検討してください。

Oh My Posh を使用して PowerShell プロンプトをカスタマイズする

Oh My Posh では、フル カラー セットを使用してターミナル プロンプトを定義し、表示することができます (組み込みのテーマを使用したり、独自のカスタム テーマを作成するなど)。

PowerShell 用の Oh My Posh をインストールする

PowerShell プロンプトをカスタマイズするには、 winget を使用して Oh My Posh をインストールします。インストールされます。

インストールを開始するには、次のコマンドを入力します。

winget install JanDeDobbeleer.OhMyPosh

ソースの条件に同意する必要があり、1 つ以上のパッケージが利用可能である場合があります。 この場合は、使用するパッケージ ID を選択し、コマンド winget install <package ID>を再入力します。

winget install oh my posh パッケージのスクリーンショット。

新しいバージョンがリリースされると自動的に更新される Microsoft Store バージョンの Oh My Posh を使うには、次のコマンドを使います。

winget install XP8K0HKJFRXGCK

oh-my-posh version を入力して、Oh My Posh インストールのバージョン番号を確認します。 更新が最新であることを確認するには、コマンド winget upgrade oh-my-posh を使用します。

注意

PowerShell で最新バージョンの Oh My Posh をインストールする場合、必要に応じて、まず OMP モジュールのキャッシュ ファイルを削除し、古いモジュールをアンインストールします。 この方法については、Oh My Posh のドキュメントを参照してください。Scoop インストーラーまたは自動化できる手動インストール方法に慣れている場合は、それらを使って Windows にインストールすることもできます。Oh My Posh のドキュメントの手順を実行してください。

PowerShell プロンプトのテーマを選択して適用する

すべてのテーマの一覧を表示するには、Oh My Posh のテーマ ページを参照してください。

テーマを選択し、次のコマンドを使用して PowerShell プロファイルを更新します (notepad を任意のテキスト エディターに置き換えることもできます)。

notepad $PROFILE

パス エラーが発生する場合、PowerShell のプロファイルがまだない可能性があります。 作成するには、次の PowerShell コマンドを使用してプロファイルを作成してから、それをテキスト エディターで再度開いてみてください。

new-item -type file -path $profile -force

PowerShell プロファイル ファイルの末尾に次の内容を追加して、paradox テーマを設定します (paradox をお好みのテーマに置き換えてください)。

oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\paradox.omp.json" | Invoke-Expression

これで、新しい PowerShell インスタンスごとに、Oh My Posh をインポートし、テーマを設定することから始めます。

新しい PowerShell インスタンスを開こうとしたときにスクリプト エラーが発生する場合、PowerShell の実行ポリシーが制限されている可能性があります。 PowerShell 実行ポリシーを無制限に設定するには、管理者として PowerShell を起動してから、次のコマンドを使用する必要があります。

Set-ExecutionPolicy -ExecutionPolicy Unrestricted

Note

これは、Windows ターミナル プロファイルではありません。 PowerShell プロファイルは、PowerShell が起動するたびに実行されるスクリプトです。 PowerShell プロファイルの詳細を参照してください。

ヒント

一般的な質問や問題に対する回答については、「Oh My Posh の FAQ」を参照してください。 現在の作業ディレクトリを復元する方法など、構成と一般的な設定の詳細については、「Oh My Posh ドキュメント」を参照してください。

Oh My Posh を使用して WSL プロンプトをカスタマイズする

Oh My Posh では、 組み込みのテーマを使用して WSL プロンプトをカスタマイズすることもできます

WSL 用の Oh My Posh をインストールする

Bash や Zsh などを使用して、Oh My Posh のドキュメントの Linux インストール ガイドに従って、WSL 用の Oh My Posh をインストールすることをお勧めします。

Oh My Posh で WSL プロンプトをカスタマイズすると、インストールに Homebrew パッケージ マネージャー が使用されます。 Linux 用の Homebrew をインストールする際には、次のステップの手順に従って、Homebrew を PATH と bash シェル プロファイル スクリプトに追加してください。

Homebrew によって、次のものがインストールされます。

  • oh-my-posh - 実行可能ファイル、/usr/local/bin に追加される
  • themes - 最新の Oh My Posh のテーマ

WSL プロンプトのテーマを選択して適用する

Oh My Posh のテーマは、oh-my-posh ディレクトリ内に JSON ファイルとして見つかります。 これを見つけるには、「cd $(brew --prefix oh-my-posh)」と入力してから単に「cd themes」と入力するか、「ls」と入力して一覧を表示できます。 WSL 経由で実行されている Ubuntu-20.04 の場合、パスは \\wsl.localhost\Ubuntu-20.04\home\linuxbrew\.linuxbrew\Cellar\oh-my-posh\6.34.1\themes のようになります。 Oh My Posh Themes ドキュメントで、テーマの外観を確認できます

テーマを使用するには、テーマを themes フォルダーから自分の $Home フォルダーにコピーし、次の行を自分の $Home フォルダー内に見つかる .profile ファイルの下部に追加します。

eval "$(oh-my-posh init bash --config ~/jandedobbeleer.omp.json)"

jandedobbeleer.omp.jsonは、使用するテーマの名前に置き換えることができます ($Home フォルダーにコピーされていることを確認してください)。

また、PowerShell を使用する Windows と WSL を使用する Windows の両方で oh-my-posh を使用している場合は、Windows ユーザーのホーム フォルダー内のテーマを選択することで、PowerShell のテーマを WSL と共有できます。 お使いの WSL ディストリビューションの .profile パスで、~ をパス /mnt/c/Users/<WINDOWSUSERNAME> に置き換えます。 <WINDOWSUSERNAME> を自分の Windows ユーザー名に置き換えます。

必要に応じて、Oh My Posh のテーマをカスタマイズできます。

Terminal-Icons を使用して不足しているフォルダーまたはファイルのアイコンを追加する

Terminal-Icons は、Windows ターミナルでファイルまたはフォルダーを表示しているときに、名前または拡張子に基づいて適切なアイコンを検索して、不足している可能性があるファイルやフォルダーのアイコンを追加する、PowerShell のモジュールです。 よく知られているファイルやフォルダーのアイコンを使用しようとしますが、見つからなかった場合は汎用のファイルまたはフォルダーのアイコンにフォールバックします。

PowerShell を使用して Terminal-Icons をインストールするには、次のコマンドを使用します。

Install-Module -Name Terminal-Icons -Repository PSGallery

使用方法やコマンドなどの詳細については、GitHub の Terminal-Icons のリポジトリを参照してください。

その他のリソース