Compartir a través de


Set-PSReadLineKeyHandler

Enlaza claves a funciones de controlador de claves definidas por el usuario o PSReadLine.

Sintaxis

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

El cmdlet Set-PSReadLineKeyHandler personaliza el resultado cuando se presiona una tecla o secuencia de teclas. Con los enlaces de clave definidos por el usuario, puede hacer casi cualquier cosa que sea posible desde un script de PowerShell.

Ejemplos

Ejemplo 1: Enlace de la tecla de dirección a una función

Este comando enlaza la tecla de flecha arriba a la función HistorySearchBackward. Esta función busca en el historial de comandos las líneas de comandos que comienzan con el contenido actual de la línea de comandos.

Set-PSReadLineKeyHandler -Chord UpArrow -Function HistorySearchBackward

Ejemplo 2: Enlace de una clave a un bloque de script

En este ejemplo se muestra cómo se puede usar una sola clave para ejecutar un comando. El comando enlaza la clave Ctrl+b a un bloque de script que borra la línea, inserta la palabra "build" y, a continuación, acepta la línea.

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

Parámetros

-BriefDescription

Una breve descripción del enlace de claves. El cmdlet Get-PSReadLineKeyHandler muestra esta descripción.

Propiedades del parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

ScriptBlock
Posición:Named
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Chord

Clave o secuencia de claves que se enlazarán a una función o bloque de script. Use una sola cadena para especificar un único enlace. Si el enlace es una secuencia de claves, separe las claves por una coma. Por ejemplo: Ctrl+x,Ctrl+l

Las referencias de clave de letra se definen mediante letras minúsculas. Si desea definir un acorde que use una letra mayúscula, el acorde debe incluir la tecla Mayús. Por ejemplo, Ctrl+Shift+x y Ctrl+x crear enlaces diferentes.

Este parámetro acepta una matriz de cadenas. Cada cadena es un enlace independiente, no una secuencia de claves para un único enlace.

Propiedades del parámetro

Tipo:

String[]

Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:Clave

Conjuntos de parámetros

(All)
Posición:0
Mandatory:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Description

Especifica una descripción más detallada del enlace de claves que está visible en la salida del cmdlet Get-PSReadLineKeyHandler.

Propiedades del parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False
Alias:LongDescription

Conjuntos de parámetros

ScriptBlock
Posición:Named
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Function

Especifica el nombre de un controlador de claves existente proporcionado por PSReadLine. Este parámetro permite volver a enlazar los enlaces de clave existentes o enlazar un controlador que actualmente no está enlazado.

Propiedades del parámetro

Tipo:String
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

Function
Posición:1
Mandatory:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-ScriptBlock

Especifica un valor de bloque de script que se ejecutará cuando se escriba el acorde. PSReadLine pasa uno o dos parámetros a este bloque de script. El primer parámetro es un objeto ConsoleKeyInfo que representa la tecla presionada. El segundo argumento puede ser cualquier objeto en función del contexto.

Propiedades del parámetro

Tipo:ScriptBlock
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

ScriptBlock
Posición:1
Mandatory:True
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-ViMode

Especifique a qué modo vi se aplica el enlace.

Los valores válidos son:

  • Insert
  • Command

Propiedades del parámetro

Tipo:ViMode
Valor predeterminado:None
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Mandatory:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

CommonParameters

Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.

Entradas

None

No se pueden canalizar objetos a este cmdlet.

Salidas

None

Este cmdlet no devuelve ninguna salida.