ターミナルは、ユーザーとオペレーティングシステムの間で行われる最も基本的な入出力環境であり、いくつかの高度なシステム操作には必要なツールです。
スクリプトのデバッグを頻繁に行い、git をよく使用するため、今日は学習環境として使用するために使いやすいシェルをセットアップすることにしました。
それでは、Windows 10 に最初から備わっている実際には非常に強力ながちょっと醜いPowerShellを調整しましょう。
PowerShell のカラースキームを変更する#
Microsoft は、PowerShell のカラースキームを変更するための小さなツールである ColorTool.exe を提供しています。これを使用して PowerShell のテーマカラーを変更することができます。
ColorTool は、GitHub ページからこのツールをダウンロードすることができます。もちろん、Scoop や Chocolatey を使用してインストールすることもできます。
Scoop
scoop install colortool
Chocolatey
choco install colortool
私は、優れたパッケージマネージャであるScoopを使用して ColorTool をインストールすることをお勧めします。
ColorTool の使用は非常に簡単です。次のコマンドを使用して、ツールに付属しているいくつかのテーマを表示できます。
# 注:-sはschemesを表します
colortool -s
先頭のいくつかの.ini および.itermcolors はテーマの設定ファイルであり、次のコマンドを使用して直接テーマを設定できます。
# 一時的に表示
colortool <テーマ名>
# デフォルト値を設定
colortool -d <テーマ名>
たとえば、テーマのカラースキームを OneHalfDark.itermcolors に変更したい場合は、次のコマンドを入力して変更し、更新をプレビューできます。
colortool OneHalfDark
ColorTool は直接 iTerm のテーマ設定ファイルをサポートしているため、iterm2colorschemes ウェブサイトで背景にしたいテーマを見つけることができます。方法は先ほど紹介したものと同じです:PowerShell で変更したいテーマファイルに移動し、
colortool <テーマ名>.itermcolors
コマンドを使用して設定します。また、上記のテーマに満足していない場合は、terminal.sexy というウェブサイトで独自のテーマを設定し、同じ方法で適用することもできます。
PowerShell のフォントを改善する#
ほとんどの人にとって、デフォルトの PowerShell の「新宋体」は本当に醜いです。
Microsoft は、コンソールフォントのメタデータに制限を設けています。
これらのフォントは、次の条件を満たす必要があります。
フォントは等幅フォントである必要があります。
フォントはイタリック体ではない必要があります。
フォントに A または C の負のスペースがない必要があります。
TrueType フォントの場合、FF_MODERN である必要があります。
TrueType フォントでない場合、OEM_CHARSET である必要があります。
アジアのフォントの追加条件:
TrueType フォントでない場合、フォント名は「Terminal」である必要があります。
アジアの TrueType フォントの場合、アジア言語の文字セットを使用する必要があります。
多くの人々が、プログラミングに適した等幅フォントである Consolas を PowerShell のフォントとして使用することを好むかもしれませんが、ここでは「Sarasa Gothic / 更纱黑体 / 更紗黑體 / 更紗ゴシック」(更纱黑体)というフォントをお勧めします。GitHub ページからダウンロードできます。
更纱黑体をダウンロードして解凍し、PowerShell ターミナルを再起動すると、メニューバーで右クリックし、「プロパティ - フォント」を選択し、フォントで更纱黑体を選択できます。ターミナルに適した等幅フォントは、「等距更纱黑体 T SC」または「Sarasa Mono T SC」です。
これでフォントは「新宋体」から「更纱黑体」に変更されました。
PowerShell のプロンプトユニットをカスタマイズする#
PowerShell や他のシェルの基本的なコマンドユニットは次のようになります:
- 前半部分はプロンプトであり、ユーザー、システム、開発環境、バージョン管理など、有用な情報を表示することができます。
- 後半部分は具体的なコマンドであり、操作を実行するたびにコマンドを入力する場所です。
oh-my-posh のインストール#
管理者権限で PowerShell を起動して、インストール操作を実行する必要があります。(具体的には、[スタート] ボタンを右クリックし、「Windows PowerShell(管理者)」を選択します。
次に、次のコマンドを実行して posh-git をインストールします。これは oh-my-posh の依存関係です。
Install-Module posh-git -Scope CurrentUser
NuGet プロバイダがインストールされていない場合は、NuGet のインストールを求められます。任意のスクリプトを実行することができない場合は、スクリプトの実行を求められることもあります。スクリプトを実行する権限がない場合は、次のコマンドを実行する必要があるかもしれません。
Set-ExecutionPolicy Bypass
次に、次のコマンドを実行して oh-my-posh 自体をインストールします。
Install-Module oh-my-posh -Scope CurrentUser
これで oh-my-posh のインストールが完了しました。
oh-my-posh の設定#
次に、oh-my-posh を設定する必要があります。
まずはじめに、
if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }
notepad $PROFILE
次に、メモ帳が開いたら、次の内容を追加します。
Import-Module posh-git
Import-Module oh-my-posh
Set-Theme Agnoster
すべてが順調に進むと、PowerShell を再起動すると、先頭のセクションのスクリーンショットと同じようになっているはずです。
PS:設定ファイルの最後の行Set-Theme Agnoster
は、テーマを設定するためのものです。このコマンドの中の Agnoster を変更することで、「テーマ名」を変更することができます。さらに多くのテーマは、oh-my-posh のドキュメント #テーマで確認することができます。
サードパーティのターミナルと PowerShell の連携#
現在、私が使用しているものと記事内のスクリーンショットは、ConEmu+PowerShell をベースにしています。
まだ試していません
Windows 10 のスタイルに近いサードパーティのターミナル#
Fluent Terminal#
一定期間試用して放棄しましたが、本当に素晴らしいです。
Hyper#
未試用
Terminus#
未試用
ConEmu#
WSL + zsh の使用#
これについてはよくわかりません。.jpg テストの機会があれば試してみます。
終わりに#
これで、Windows 10 のデフォルトのターミナルである PowerShell の調整が完了しました。それでは、お楽しみください。