Partager via


Set-PSReadLineKeyHandler

Lie des clés aux fonctions de gestionnaire de clés PSReadLine définies par l’utilisateur.

Syntaxe

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

Description

L’applet Set-PSReadLineKeyHandler de commande personnalise le résultat lorsqu’une touche ou une séquence de touches est enfoncée. Avec les liaisons de clés définies par l’utilisateur, vous pouvez effectuer presque tout ce qui est possible à partir d’un script PowerShell.

Exemples

Exemple 1 : Lier la touche de direction à une fonction

Cette commande lie la flèche vers le haut à la fonction HistorySearchBackward . Cette fonction recherche l’historique des commandes pour les lignes de commande qui commencent par le contenu actuel de la ligne de commande.

Set-PSReadLineKeyHandler -Chord UpArrow -Function HistorySearchBackward

Exemple 2 : Lier une clé à un bloc de script

Cet exemple montre comment utiliser une clé unique pour exécuter une commande. La commande lie la clé Ctrl+b à un bloc de script qui efface la ligne, insère le mot « build », puis accepte la ligne.

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

Paramètres

-BriefDescription

Brève description de la liaison de clé. Cette description s’affiche par l’applet Get-PSReadLineKeyHandler de commande.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Chord

Clé ou séquence de clés à lier à une fonction ou à un bloc de script. Utilisez une chaîne unique pour spécifier une liaison unique. Si la liaison est une séquence de clés, séparez les clés par une virgule. Par exemple : Ctrl+x,Ctrl+l

Les références de touches de lettre sont définies à l’aide de lettres minuscules. Si vous souhaitez définir un chord qui utilise une lettre majuscule, l’accord doit inclure la touche Maj . Par exemple, Ctrl+Shift+x et Ctrl+x créez différentes liaisons.

Ce paramètre accepte un tableau de chaînes. Chaque chaîne est une liaison distincte, et non une séquence de clés pour une seule liaison.

Type:String[]
Alias:Key
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Description

Spécifie une description plus détaillée de la liaison de clé visible dans la sortie de l’applet Get-PSReadLineKeyHandler de commande.

Type:String
Alias:LongDescription
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Function

Spécifie le nom d’un gestionnaire de clés existant fourni par PSReadLine. Ce paramètre vous permet de rebiner des liaisons de clés existantes ou de lier un gestionnaire qui n’est actuellement pas lié.

Type:String
Position:1
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ScriptBlock

Spécifie une valeur de bloc de script à exécuter lorsque l’accord est entré. PSReadLine transmet un ou deux paramètres à ce bloc de script. Le premier paramètre est un objet ConsoleKeyInfo représentant la touche enfoncée. Le deuxième argument peut être n’importe quel objet en fonction du contexte.

Type:ScriptBlock
Position:1
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ViMode

Spécifiez le mode vi auquel la liaison s’applique.

Les valeurs valides sont :

  • Insert
  • Command
Type:ViMode
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

None

Vous ne pouvez pas diriger les objets vers cette applet de commande.

Sorties

None

Cette applet de commande ne retourne pas de sortie.