ニュース
入力しようとしているコマンドを予測 ~PowerShellで「Predictive IntelliSense」が既定有効に
履歴やプラグインなどを参考に推測できるIntelliSense機能
2022年6月28日 22:30
米Microsoftは6月27日(日本時間)、「PSReadLine 2.2.6」で入力補完機能「予測 IntelliSense」(Predictive IntelliSense)をデフォルト有効化したと発表した。「PowerShell」でコマンドを入力する際、履歴やプラグインなどを参考に、ユーザーが入力しようとしているコマンドを予測・提案できる。
「PSReadLine」は「PowerShell」構文の強調表示、エラーの指摘、「Bash」スタイルの入力補完([Tab]キー)、「Bash」「zsh」スタイルの履歴検索([Ctrl]+[R]キー)などの機能を提供するライブラリ。最新版は「PowerShell 7.2」以降、「Windows PowerShell 5.1」に対応しており、以下のコマンドでインストールまたはアップデートが行える。
Install-Module -Name PSReadLine -Force
履歴ベースの「予測 IntelliSense」は2020年11月から導入されていたが、これまでは以下のようなコマンドで有効化する必要があった。
# 履歴ベースの予測を有効化
Set-PSReadLineOption -PredictionSource History
# 履歴ベースの予測を有効化(リストビュー形式)
Set-PSReadLineOption -PredictionSource History -PredictionViewStyle ListView
# 履歴およびプラグインベースの予測を有効化
Set-PSReadLineOption -PredictionSource HistoryAndPlugin
しかし、今回の措置により手動による有効化は不要となった。初期設定では入力予測コマンドがライトグレーのテキストで提案されるが、これが見にくい場合は「Set-PSReadLineOption」コマンドでカスタマイズできる。
# 青色に設定
Set-PSReadLineOption -Colors @{ InlinePrediction = $PSStyle.Background.blue }
# 初期設定色に戻す
Set-PSReadLineOption -Colors @{ InlinePrediction = "`e[38;5;238m" }
なお、プラグインベースでの予測がサポートされるのは「PowerShell 7.2」以降のみだ。