Dela via


Set-PSReadLineKeyHandler

Binder nycklar till användardefinierade eller PSReadLine-nyckelhanterarfunktioner.

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>]

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 enskild 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.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

ScriptBlock
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument: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. Till exempel: Ctrl+x,Ctrl+l

Brevnyckelreferenser definieras med små bokstäver. Om du vill definiera ett ackord som använder en versal bokstav måste ackordet innehålla tangenten Shift. Till exempel skapar Ctrl+Shift+x och Ctrl+x 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.

Parameteregenskaper

Typ:

String[]

Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:Nyckel

Parameteruppsättningar

(All)
Position:0
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Description

Anger en mer detaljerad beskrivning av nyckelbindningen som visas i utdata från cmdleten Get-PSReadLineKeyHandler.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:LongDescription

Parameteruppsättningar

ScriptBlock
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-Function

Anger namnet på en befintlig nyckelhanterare som tillhandahålls av PSReadLine. Med den här parametern kan du koppla om befintliga nyckelbindningar eller binda en hanterare som för närvarande är obundna.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

Function
Position:1
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument: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.

Parameteregenskaper

Typ:ScriptBlock
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

ScriptBlock
Position:1
Obligatorisk:True
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-ViMode

Ange vilket vi-läge bindningen gäller för.

Giltiga värden är:

  • Insert
  • Command

Parameteregenskaper

Typ:ViMode
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

CommonParameters

Den här cmdleten stöder vanliga parametrar: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction och -WarningVariable. Mer information finns i about_CommonParameters.

Indata

None

Du kan inte skicka objekt till den här cmdleten.

Utdata

None

Den här cmdleten returnerar inga utdata.