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 表示されます。

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-Chord

関数またはスクリプト ブロックにバインドするキーまたはキーのシーケンス。 単一のバインドを指定するには、1 つの文字列を使用します。 バインドが一連のキーの場合は、次の例のように、キーをコンマで区切ります。

Ctrl+X,Ctrl+L

注意

PSReadLine 2.0.0 以降では、 Chord パラメーターでは 大文字と小文字が区別されます。 つまり、Ctrl+X と Ctrlx+異なるバインドを作成します。

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

Type:String[]
Aliases:Key
Position:0
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-Description

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

Type:String
Aliases:LongDescription
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-Function

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

Type:String
Position:1
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-ScriptBlock

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

Type:ScriptBlock
Position:1
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-ViMode

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

有効な値は次のとおりです。

  • Insert
  • Command
Type:ViMode
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

入力

None

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

出力

None

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