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:
InsertCommand
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.