Sdílet prostřednictvím


Set-PSReadLineKeyHandler

Vytvoří vazbu klíčů na uživatelem definované funkce nebo funkce obslužné rutiny klíčů PSReadLine.

Syntaxe

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

Description

Rutina Set-PSReadLineKeyHandler přizpůsobí výsledek při stisknutí klávesy nebo posloupnosti kláves. Pomocí uživatelem definovaných vazeb klíčů můžete téměř cokoli, co je možné, provést v powershellovém skriptu.

Příklady

Příklad 1: Vytvoření vazby šipkové klávesy k funkci

Tento příkaz sváže šipku nahoru s funkcí HistorySearchBackward . Tato funkce vyhledá historii příkazů pro příkazové řádky, které začínají aktuálním obsahem příkazového řádku.

Set-PSReadLineKeyHandler -Chord UpArrow -Function HistorySearchBackward

Příklad 2: Vytvoření vazby klíče k bloku skriptu

Tento příklad ukazuje, jak se dá použít jeden klíč ke spuštění příkazu. Příkaz sváže klíč Ctrl+b s blokem skriptu, který vymaže řádek, vloží slovo "build" a pak přijme řádek.

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

Parametry

-BriefDescription

Stručný popis klíčové vazby. Tento popis zobrazí rutina Get-PSReadLineKeyHandler .

Typ:String
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Chord

Klíč nebo posloupnost klíčů, které mají být svázány s funkcí nebo blokem skriptu. K zadání jedné vazby použijte jeden řetězec. Pokud je vazba posloupností klíčů, oddělte je čárkou. Příklad: Ctrl+x,Ctrl+l

Odkazy na klíč písmen jsou definovány malými písmeny. Pokud chcete definovat chord, který používá velké písmeno, musí chord obsahovat klávesu Shift . Můžete například Ctrl+Shift+x Ctrl+x vytvořit různé vazby.

Tento parametr přijímá pole řetězců. Každý řetězec je samostatná vazba, nikoli posloupnost klíčů pro jednu vazbu.

Typ:String[]
Aliasy:Key
Position:0
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Description

Určuje podrobnější popis klíčové vazby, která je viditelná ve výstupu rutiny Get-PSReadLineKeyHandler .

Typ:String
Aliasy:LongDescription
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Function

Určuje název existující obslužné rutiny klíče poskytované PSReadLine. Tento parametr umožňuje znovu spojit existující vazby klíčů nebo vytvořit vazbu obslužné rutiny, která je aktuálně nevázaná.

Typ:String
Position:1
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-ScriptBlock

Určuje hodnotu bloku skriptu, která se má spustit při zadání chordu. PsReadLine předává do tohoto bloku skriptu jeden nebo dva parametry. První parametr je ConsoleKeyInfo objekt představující stisknutou klávesu. Druhý argument může být libovolný objekt v závislosti na kontextu.

Typ:ScriptBlock
Position:1
Default value:None
Vyžadováno:True
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-ViMode

Určete režim vi, na který se vazba vztahuje.

Platné hodnoty jsou:

  • Insert
  • Command
Typ:ViMode
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

Vstupy

None

Do této rutiny nemůžete roušit objekty.

Výstupy

None

Tato rutina nevrátí žádný výstup.