Freigeben über


Set-PSReadLineKeyHandler

Bindet Schlüssel an benutzerdefinierte oder PSReadLine-Schlüsselhandlerfunktionen.

Syntax

ScriptBlock

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

Function

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

Beschreibung

Das cmdlet Set-PSReadLineKeyHandler passt das Ergebnis an, wenn eine Taste oder Eine Tastenabfolge gedrückt wird. Mit benutzerdefinierten Schlüsselbindungen können Sie nahezu alles tun, was in einem PowerShell-Skript möglich ist.

Beispiele

Beispiel 1: Binden der Pfeiltaste an eine Funktion

Mit diesem Befehl wird die NACH-OBEN-TASTE an die HistorySearchBackward Funktion gebunden. Diese Funktion durchsucht den Befehlsverlauf nach Befehlszeilen, die mit dem aktuellen Inhalt der Befehlszeile beginnen.

Set-PSReadLineKeyHandler -Chord UpArrow -Function HistorySearchBackward

Beispiel 2: Binden eines Schlüssels an einen Skriptblock

In diesem Beispiel wird gezeigt, wie ein einzelner Schlüssel zum Ausführen eines Befehls verwendet werden kann. Der Befehl bindet die Taste Ctrl+b an einen Skriptblock, der die Zeile löscht, das Wort "build" einfügt und dann die Zeile akzeptiert.

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

Parameter

-BriefDescription

Eine kurze Beschreibung der Schlüsselbindung. Diese Beschreibung wird vom Cmdlet Get-PSReadLineKeyHandler angezeigt.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

ScriptBlock
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Chord

Der Schlüssel oder die Abfolge von Schlüsseln, die an eine Funktion oder einen Skriptblock gebunden werden sollen. Verwenden Sie eine einzelne Zeichenfolge, um eine einzelne Bindung anzugeben. Wenn es sich bei der Bindung um eine Sequenz von Schlüsseln handelt, trennen Sie die Schlüssel durch ein Komma. Beispiel: Ctrl+x,Ctrl+l

Buchstabenschlüsselverweise werden mit Kleinbuchstaben definiert. Wenn Sie einen Akkord definieren möchten, der einen Großbuchstaben verwendet, muss der Akkord die UMSCHALTTASTE enthalten. Beispielsweise erstellen Ctrl+Shift+x und Ctrl+x unterschiedliche Bindungen.

Dieser Parameter akzeptiert ein Array von Zeichenfolgen. Jede Zeichenfolge ist eine separate Bindung, keine Abfolge von Schlüsseln für eine einzelne Bindung.

Parametereigenschaften

Typ:

String[]

Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:Schlüssel

Parametersätze

(All)
Position:0
Obligatorisch.:True
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Description

Gibt eine detailliertere Beschreibung der Schlüsselbindung an, die in der Ausgabe des Cmdlets Get-PSReadLineKeyHandler sichtbar ist.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False
Aliase:LongDescription

Parametersätze

ScriptBlock
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-Function

Gibt den Namen eines vorhandenen Schlüsselhandlers an, der von PSReadLine bereitgestellt wird. Mit diesem Parameter können Sie vorhandene Schlüsselbindungen neu binden oder einen Handler binden, der derzeit ungebunden ist.

Parametereigenschaften

Typ:String
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

Function
Position:1
Obligatorisch.:True
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-ScriptBlock

Gibt einen Skriptblockwert an, der ausgeführt werden soll, wenn der Chor eingegeben wird. PSReadLine übergibt einen oder zwei Parameter an diesen Skriptblock. Der erste Parameter ist ein ConsoleKeyInfo-Objekt, das die gedrückte Taste darstellt. Das zweite Argument kann je nach Kontext ein beliebiges Objekt sein.

Parametereigenschaften

Typ:ScriptBlock
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

ScriptBlock
Position:1
Obligatorisch.:True
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

-ViMode

Geben Sie an, für welchen Modus die Bindung gilt.

Gültige Werte sind:

  • Insert
  • Command

Parametereigenschaften

Typ:ViMode
Standardwert:None
Unterstützt Platzhalter:False
Nicht anzeigen:False

Parametersätze

(All)
Position:Named
Obligatorisch.:False
Wert aus Pipeline:False
Wert aus Pipeline nach dem Eigenschaftsnamen:False
Wert aus verbleibenden Argumenten:False

CommonParameters

Dieses Cmdlet unterstützt die allgemeinen Parameter -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction und -WarningVariable. Weitere Informationen findest du unter about_CommonParameters.

Eingaben

None

Sie können keine Objekte an dieses Cmdlet weiterleiten.

Ausgaben

None

Dieses Cmdlet gibt keine Ausgabe zurück.