次の方法で共有


Set-PSReadLineKeyHandler

ユーザー定義または PSReadLine キー ハンドラー関数にキーをバインドします。

構文

Set-PSReadLineKeyHandler
   [-ScriptBlock] <ScriptBlock>
   [-BriefDescription <String>]
   [-Description <String>]
   [-Chord] <String[]>
   [-ViMode <ViMode>]
   [<CommonParameters>]
Set-PSReadLineKeyHandler
   [-Chord] <String[]>
   [-ViMode <ViMode>]
   [-Function] <String>
   [<CommonParameters>]

説明

Set-PSReadLineKeyHandler コマンドレットは、キーまたはキーのシーケンスが押されたときに結果をカスタマイズします。 ユーザー定義のキー バインドを使用すると、PowerShell スクリプト内から可能なほぼすべての操作を実行できます。

例 1: 方向キーを関数にバインドする

このコマンドは、上方向キーを HistorySearchBackward 関数にバインドします。 この関数は、コマンド ラインの現在の内容で始まるコマンド ラインのコマンド 履歴を検索します。

Set-PSReadLineKeyHandler -Chord UpArrow -Function HistorySearchBackward

例 2: スクリプト ブロックにキーをバインドする

この例では、1 つのキーを使用してコマンドを実行する方法を示します。 このコマンドは、行をクリアし、"build" という単語を挿入して行を受け入れるスクリプト ブロックに、 Ctrl+b キーをバインドします。

Set-PSReadLineKeyHandler -Chord Ctrl+b -ScriptBlock {
    [Microsoft.PowerShell.PSConsoleReadLine]::RevertLine()
    [Microsoft.PowerShell.PSConsoleReadLine]::Insert('build')
    [Microsoft.PowerShell.PSConsoleReadLine]::AcceptLine()
}

パラメーター

-BriefDescription

キー バインドの簡単な説明。 この説明は、 Get-PSReadLineKeyHandler コマンドレットによって表示されます。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Chord

関数またはスクリプト ブロックにバインドされるキーまたはキーのシーケンス。 1 つのバインドを指定するには、1 つの文字列を使用します。 バインドがキーのシーケンスである場合は、キーをコンマで区切ります。 例: Ctrl+x,Ctrl+l

文字キー参照は、小文字を使用して定義されます。 大文字を使用するコードを定義する場合は、コードに Shift キーを含める必要があります。 たとえば、 Ctrl+Shift+xCtrl+x 異なるバインディングを作成します。

このパラメーターは、文字列の配列を受け入れます。 各文字列は個別のバインドであり、1 つのバインドのキーのシーケンスではありません。

型:String[]
Aliases:Key
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Description

Get-PSReadLineKeyHandler コマンドレットの出力に表示されるキー バインドの詳細な説明を指定します。

型:String
Aliases:LongDescription
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Function

PSReadLine によって提供される既存のキー ハンドラーの名前を指定します。 このパラメーターを使用すると、既存のキー バインドを再バインドしたり、現在バインドされていないハンドラーをバインドすることができます。

型:String
配置:1
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ScriptBlock

コードが入力されたときに実行するスクリプト ブロック値を指定します。 PSReadLine は、このスクリプト ブロックに 1 つまたは 2 つのパラメーターを渡します。 最初のパラメーターは、押されたキーを表す ConsoleKeyInfo オブジェクトです。 2 番目の引数には、コンテキストに応じて任意のオブジェクトを指定できます。

型:ScriptBlock
配置:1
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ViMode

バインドを適用する vi モードを指定します。

有効な値は次の通りです。

  • Insert
  • Command
型:ViMode
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

None

このコマンドレットにオブジェクトをパイプすることはできません。

出力

None

このコマンドレットは、出力を返しません。