Partilhar via


Set-PSReadLineKeyHandler

Vincula chaves a funções de manipulador de chaves definidas pelo usuário ou PSReadLine.

Syntax

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

Description

O Set-PSReadLineKeyHandler cmdlet personaliza o resultado quando uma tecla ou sequência de teclas é pressionada. Com associações de chave definidas pelo usuário, você pode fazer quase tudo o que é possível a partir de um script do PowerShell.

Exemplos

Exemplo 1: Vincular a tecla de seta a uma função

Este comando liga a tecla de seta para cima à função HistorySearchBackward . Esta função pesquisa no histórico de comandos linhas de comando que começam com o conteúdo atual da linha de comando.

Set-PSReadLineKeyHandler -Chord UpArrow -Function HistorySearchBackward

Exemplo 2: Vincular uma chave a um bloco de script

Este exemplo mostra como uma única chave pode ser usada para executar um comando. O comando vincula a chave Ctrl+b a um bloco de script que limpa a linha, insere a palavra "build" e aceita a linha.

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

Parâmetros

-BriefDescription

Uma breve descrição da vinculação de chave. Essa descrição é exibida pelo Get-PSReadLineKeyHandler cmdlet.

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

-Chord

A chave ou sequência de teclas a serem vinculadas a uma função ou bloco de script. Use uma única cadeia de caracteres para especificar uma única ligação. Se a ligação for uma sequência de chaves, separe as teclas por uma vírgula. Por exemplo: Ctrl+x,Ctrl+l

As referências de teclas de letra são definidas usando letras minúsculas. Se você quiser definir um acorde que usa uma letra maiúscula, o acorde deve incluir a tecla Shift . Por exemplo, Ctrl+Shift+x e Ctrl+x crie ligações diferentes.

Este parâmetro aceita uma matriz de cadeias de caracteres. Cada cadeia de caracteres é uma ligação separada, não uma sequência de teclas para uma única ligação.

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

-Description

Especifica uma descrição mais detalhada da associação de chave visível na saída do Get-PSReadLineKeyHandler cmdlet.

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

-Function

Especifica o nome de um manipulador de chaves existente fornecido por PSReadLine. Este parâmetro permite que você revincule associações de chave existentes ou vincule um manipulador que está atualmente desvinculado.

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

-ScriptBlock

Especifica um valor de bloco de script a ser executado quando o acorde é inserido. PSReadLine passa um ou dois parâmetros para este bloco de script. O primeiro parâmetro é um objeto ConsoleKeyInfo que representa a tecla pressionada. O segundo argumento pode ser qualquer objeto, dependendo do contexto.

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

-ViMode

Especifique a que modo vi a ligação se aplica.

Os valores válidos são:

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

Entradas

None

Não é possível canalizar objetos para este cmdlet.

Saídas

None

Este cmdlet não retorna nenhuma saída.