Set-PSReadLineKeyHandler
Associa le chiavi alle funzioni del gestore chiavi definite dall'utente o PSReadLine.
Sintassi
Set-PSReadLineKeyHandler
[-ScriptBlock] <ScriptBlock>
[-BriefDescription <String>]
[-Description <String>]
[-Chord] <String[]>
[-ViMode <ViMode>]
[<CommonParameters>]
Set-PSReadLineKeyHandler
[-Chord] <String[]>
[-ViMode <ViMode>]
[-Function] <String>
[<CommonParameters>]
Descrizione
Il cmdlet Set-PSReadLineKeyHandler
personalizza il risultato quando viene premuto un tasto o una sequenza di tasti. Con le associazioni di chiavi definite dall'utente, è possibile eseguire quasi tutte le operazioni possibili dall'interno di uno script di PowerShell.
Esempio
Esempio 1: Associare il tasto freccia a una funzione
Questo comando associa il tasto freccia su alla funzione HistorySearchBackward. Questa funzione cerca nella cronologia dei comandi le righe di comando che iniziano con il contenuto corrente della riga di comando.
Set-PSReadLineKeyHandler -Chord UpArrow -Function HistorySearchBackward
Esempio 2: Associare una chiave a un blocco di script
In questo esempio viene illustrato come usare una singola chiave per eseguire un comando. Il comando associa la chiave Ctrl+b
a un blocco di script che cancella la riga, inserisce la parola "build" e quindi accetta la riga.
Set-PSReadLineKeyHandler -Chord Ctrl+b -ScriptBlock {
[Microsoft.PowerShell.PSConsoleReadLine]::RevertLine()
[Microsoft.PowerShell.PSConsoleReadLine]::Insert('build')
[Microsoft.PowerShell.PSConsoleReadLine]::AcceptLine()
}
Parametri
-BriefDescription
Breve descrizione dell'associazione di tasti. Questa descrizione viene visualizzata dal cmdlet Get-PSReadLineKeyHandler
.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Chord
Chiave o sequenza di chiavi da associare a una funzione o a un blocco di script. Usare una singola stringa per specificare un'unica associazione. Se l'associazione è una sequenza di tasti, separare le chiavi in base a una virgola. Ad esempio: Ctrl+x,Ctrl+l
I riferimenti alle chiavi di lettera vengono definiti usando lettere minuscole. Se si desidera definire un accordo che utilizza una lettera maiuscola, l'accordo deve includere il tasto MAIUSC. Ad esempio, Ctrl+Shift+x
e Ctrl+x
creare associazioni diverse.
Questo parametro accetta una matrice di stringhe. Ogni stringa è un'associazione separata, non una sequenza di chiavi per un'unica associazione.
Tipo: | String[] |
Alias: | Key |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Description
Specifica una descrizione più dettagliata dell'associazione di tasti visibile nell'output del cmdlet Get-PSReadLineKeyHandler
.
Tipo: | String |
Alias: | LongDescription |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Function
Specifica il nome di un gestore di chiavi esistente fornito da PSReadLine. Questo parametro consente di riassociare le associazioni di tasti esistenti o di associare un gestore attualmente non associato.
Tipo: | String |
Posizione: | 1 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ScriptBlock
Specifica un valore del blocco di script da eseguire quando viene immesso l'accordo. PSReadLine passa uno o due parametri a questo blocco di script. Il primo parametro è un oggetto ConsoleKeyInfo che rappresenta il tasto premuto. Il secondo argomento può essere qualsiasi oggetto a seconda del contesto.
Tipo: | ScriptBlock |
Posizione: | 1 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ViMode
Specificare la modalità vi a cui si applica l'associazione.
I valori validi sono:
Insert
Command
Tipo: | ViMode |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
None
Non è possibile inviare tramite pipe oggetti a questo cmdlet.
Output
None
Questo cmdlet non restituisce alcun output.