Set-PSReadLineKeyHandler
Binder nycklar till användardefinierade eller PSReadLine-nyckelhanterarfunktioner.
Syntax
Set-PSReadLineKeyHandler
[-ScriptBlock] <ScriptBlock>
[-BriefDescription <String>]
[-Description <String>]
[-Chord] <String[]>
[-ViMode <ViMode>]
[<CommonParameters>]
Set-PSReadLineKeyHandler
[-Chord] <String[]>
[-ViMode <ViMode>]
[-Function] <String>
[<CommonParameters>]
Description
Cmdleten Set-PSReadLineKeyHandler
anpassar resultatet när en nyckel eller sekvens med nycklar trycks in. Med användardefinierade nyckelbindningar kan du göra nästan allt som är möjligt inifrån ett PowerShell-skript.
Exempel
Exempel 1: Binda piltangenten till en funktion
Det här kommandot binder uppåtpilen till funktionen HistorySearchBackward . Den här funktionen söker i kommandohistoriken efter kommandorader som börjar med det aktuella innehållet på kommandoraden.
Set-PSReadLineKeyHandler -Chord UpArrow -Function HistorySearchBackward
Exempel 2: Binda en nyckel till ett skriptblock
Det här exemplet visar hur en enda nyckel kan användas för att köra ett kommando. Kommandot binder nyckeln Ctrl+b
till ett skriptblock som rensar raden, infogar ordet "build" och accepterar sedan raden.
Set-PSReadLineKeyHandler -Chord Ctrl+b -ScriptBlock {
[Microsoft.PowerShell.PSConsoleReadLine]::RevertLine()
[Microsoft.PowerShell.PSConsoleReadLine]::Insert('build')
[Microsoft.PowerShell.PSConsoleReadLine]::AcceptLine()
}
Parametrar
-BriefDescription
En kort beskrivning av nyckelbindningen. Den här beskrivningen visas av cmdleten Get-PSReadLineKeyHandler
.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Chord
Nyckeln eller sekvensen med nycklar som ska bindas till en funktion eller ett skriptblock. Använd en enda sträng för att ange en enda bindning. Om bindningen är en sekvens med nycklar separerar du nycklarna med ett kommatecken. Exempelvis: Ctrl+x,Ctrl+l
Letter-nyckelreferenser definieras med gemener. Om du vill definiera ett ackord som använder en versal bokstav måste ackordet innehålla Skift-tangenten . Till exempel Ctrl+Shift+x
och Ctrl+x
skapa olika bindningar.
Den här parametern accepterar en matris med strängar. Varje sträng är en separat bindning, inte en sekvens med nycklar för en enda bindning.
Type: | String[] |
Aliases: | Key |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Anger en mer detaljerad beskrivning av nyckelbindningen som visas i utdata från cmdleten Get-PSReadLineKeyHandler
.
Type: | String |
Aliases: | LongDescription |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Function
Anger namnet på en befintlig nyckelhanterare som tillhandahålls av PSReadLine. Med den här parametern kan du binda om befintliga nyckelbindningar eller binda en hanterare som för närvarande är obundna.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ScriptBlock
Anger ett skriptblockvärde som ska köras när ackordet anges. PSReadLine skickar en eller två parametrar till det här skriptblocket. Den första parametern är ett ConsoleKeyInfo-objekt som representerar tangenten som trycks in. Det andra argumentet kan vara valfritt objekt beroende på kontexten.
Type: | ScriptBlock |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ViMode
Ange vilket vi-läge bindningen gäller för.
Giltiga värden är:
Insert
Command
Type: | ViMode |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Indata
None
Du kan inte skicka objekt till den här cmdleten.
Utdata
None
Denna cmdlet returnerar inga utdata.