about_PSReadLine_Functions
Brève description
PSReadLine offre une expérience d’édition de ligne de commande améliorée dans la console PowerShell.
Description longue
PowerShell 7.3 est fourni avec PSReadLine 2.2.6. La version actuelle est PSReadLine 2.3.4. La version actuelle de PSReadLine peut être installée et utilisée sur Windows PowerShell 5.1 et versions ultérieures. Pour certaines fonctionnalités, vous devez exécuter PowerShell 7.2 ou version ultérieure.
Cet article documente les fonctions fournies par PSReadLine 2.3.4. Ces fonctions peuvent être liées à des séquences de touches pour faciliter l’accès et l’appel.
Utilisation de la classe Microsoft.PowerShell.PSConsoleReadLine
Les fonctions suivantes sont disponibles dans la classe Microsoft.PowerShell.PSConsoleReadLine.
Fonctions d’édition de base
Abort
Abandonner l’action actuelle, par exemple : recherche d’historique incrémentiel.
- Mode Emacs :
Ctrl+g
- Mode d’insertion Vi :
Ctrl+g
- Mode de commande Vi :
<Ctrl+g>
AcceptAndGetNext
Essayez d’exécuter l’entrée actuelle. S’il peut être exécuté (comme AcceptLine), rappelez-vous l’élément suivant de l’historique la prochaine fois que ReadLine est appelé.
- Mode Emacs :
Ctrl+o
AcceptLine
Essayez d’exécuter l’entrée actuelle. Si l’entrée actuelle est incomplète (par exemple, il manque une parenthèse fermante, un crochet ou un guillemet), l’invite de continuation s’affiche sur la ligne suivante et PSReadLine attend que les clés modifient l’entrée actuelle.
- Mode Windows :
Enter
- Mode Emacs :
Enter
- Mode d’insertion Vi :
Enter
AddLine
L’invite de continuation s’affiche sur la ligne suivante et PSReadLine attend que les clés modifient l’entrée actuelle. Cela est utile pour entrer une entrée multiligne sous la forme d’une seule commande, même lorsqu’une seule ligne est terminée par elle-même.
- Mode Windows :
Shift+Enter
- Mode Emacs :
Shift+Enter
- Mode d’insertion Vi :
Shift+Enter
- Mode de commande Vi :
<Shift+Enter>
BackwardDeleteChar
Supprimez le caractère avant le curseur.
- Mode Windows :
Backspace
,Ctrl+h
- Mode Emacs :
Backspace
,Ctrl+Backspace
,Ctrl+h
- Mode d’insertion Vi :
Backspace
- Mode de commande Vi :
<X>
,<d,h>
BackwardDeleteInput
Comme BackwardKillInput : supprime le texte du point au début de l’entrée, mais ne place pas le texte supprimé dans le kill-ring.
- Mode Windows :
Ctrl+Home
- Mode d’insertion Vi :
Ctrl+u
,Ctrl+Home
- Mode de commande Vi :
<Ctrl+u>
,<Ctrl+Home>
BackwardDeleteLine
Comme BackwardKillLine - supprime le texte du point au début de la ligne, mais ne place pas le texte supprimé dans le kill-ring.
- Mode de commande Vi :
<d,0>
BackwardDeleteWord
Supprime le mot précédent.
- Mode de commande Vi :
<Ctrl+w>
,<d,b>
BackwardKillInput
Effacez le texte du début de l’entrée au curseur. Le texte effacé est placé dans le kill-ring.
- Mode Emacs :
Ctrl+u
,Ctrl+x,Backspace
BackwardKillLine
Effacez le texte du début de la ligne logique actuelle vers le curseur. Le texte effacé est placé dans le kill-ring.
- La fonction n’est pas lié.
BackwardKillWord
Effacez l’entrée du début du mot actuel au curseur. Si le curseur se trouve entre les mots, l’entrée est effacée du début du mot précédent au curseur. Le texte effacé est placé dans le kill-ring.
- Mode Windows :
Ctrl+Backspace
,Ctrl+w
- Mode Emacs :
Alt+Backspace
,Escape,Backspace
- Mode d’insertion Vi :
Ctrl+Backspace
- Mode de commande Vi :
<Ctrl+Backspace>
BackwardReplaceChar
Remplace le caractère devant le curseur.
- Mode de commande Vi :
<c,h>
CancelLine
Annulez l’entrée actuelle, en laissant l’entrée à l’écran, mais revenez à l’hôte afin que l’invite soit réévaluée.
- Mode d’insertion Vi :
Ctrl+c
- Mode de commande Vi :
<Ctrl+c>
CapitalWord
Ajouté dans PSReadLine 2.3.0
Convertissez le premier caractère du mot suivant en majuscules et les caractères restants en minuscules.
- Mode Emacs :
Alt+c
,Escape,c
Copier
Copiez la région sélectionnée dans le Presse-papiers système. Si aucune région n’est sélectionnée, copiez la ligne entière.
- Mode Windows :
Ctrl+C
CopyOrCancelLine
Si le texte est sélectionné, copiez dans le Presse-papiers, sinon annulez la ligne.
- Mode Windows :
Ctrl+c
- Mode Emacs :
Ctrl+c
Couper
Supprimez la région sélectionnée en plaçant le texte supprimé dans le Presse-papiers système.
- Mode Windows :
Ctrl+x
DeleteChar
Supprimez le caractère sous le curseur.
- Mode Windows :
Delete
- Mode Emacs :
Delete
- Mode d’insertion Vi :
Delete
- Mode de commande Vi :
<Delete>
,<x>
,<d,l>
,<d,Spacebar>
DeleteCharOrExit
Supprimez le caractère sous le curseur ou, si la ligne est vide, quittez le processus.
- Mode Emacs :
Ctrl+d
DeleteEndOfBuffer
Supprime à la fin de la mémoire tampon multiligne.
- Mode de commande Vi :
<d,G>
DeleteEndOfWord
Supprimez jusqu’à la fin du mot.
- Mode de commande Vi :
<d,e>
DeleteLine
Supprime la ligne logique actuelle d’une mémoire tampon multiligne, en activant l’annulation.
- Mode de commande Vi :
<d,d>
,<d,_>
DeleteLineToFirstChar
Supprime du premier caractère non vide de la ligne logique actuelle dans une mémoire tampon multiligne.
- Mode de commande Vi :
<d,^>
DeleteNextLines
Supprime les lignes logiques actuelles et suivantes dans une mémoire tampon multiligne.
- Mode de commande Vi :
<d,j>
DeletePreviousLines
Supprime les lignes logiques demandées précédentes et la ligne logique actuelle dans une mémoire tampon multiligne.
- Mode de commande Vi :
<d,k>
DeleteRelativeLines
Supprime du début de la mémoire tampon à la ligne logique actuelle dans une mémoire tampon multiligne.
Comme la plupart des commandes Vi, la <d,g,g>
commande peut être précédée d’un argument numérique qui spécifie un numéro de ligne absolu, qui, avec le numéro de ligne actuel, composent une plage de lignes à supprimer. S’il n’est pas spécifié, l’argument numérique est défini par défaut sur 1, ce qui fait référence à la première ligne logique d’une mémoire tampon multiligne.
Le nombre réel de lignes à supprimer de la multiligne est calculé comme la différence entre le numéro de ligne logique actuel et l’argument numérique spécifié, qui peut donc être négatif. Par conséquent, la partie relative du nom de la méthode.
- Mode de commande Vi :
<d,g,g>
DeleteToEnd
Supprimez jusqu’à la fin de la ligne.
- Mode de commande Vi :
<D>
,<d,$>
DeleteWord
Supprimez le mot suivant.
- Mode de commande Vi :
<d,w>
DowncaseWord
Ajouté dans PSReadLine 2.3.0
Convertissez le mot suivant en minuscules.
- Mode Emacs :
Alt+l
,Escape,l
ForwardDeleteInput
Comme KillLine , supprime le texte du point à la fin de l’entrée, mais ne place pas le texte supprimé dans le kill-ring.
- Mode Windows :
Ctrl+End
- Mode d’insertion Vi :
Ctrl+End
- Mode de commande Vi :
<Ctrl+End>
ForwardDeleteLine
Supprime le texte du point à la fin de la ligne logique actuelle, mais ne place pas le texte supprimé dans le kill-ring.
- La fonction n’est pas entrante
InsertLineAbove
Une nouvelle ligne vide est créée au-dessus de la ligne actuelle, quel que soit l’emplacement où se trouve le curseur sur la ligne actuelle. Le curseur passe au début de la nouvelle ligne.
- Mode Windows :
Ctrl+Enter
InsertLineBelow
Une nouvelle ligne vide est créée sous la ligne actuelle, quel que soit l’emplacement où se trouve le curseur sur la ligne actuelle. Le curseur passe au début de la nouvelle ligne.
- Mode Windows :
Shift+Ctrl+Enter
InvertCase
Inversez le cas du caractère actuel et passez à l’autre.
- Mode de commande Vi :
<~>
KillLine
Effacez l’entrée du curseur à la fin de l’entrée. Le texte effacé est placé dans le kill-ring.
- Mode Emacs :
Ctrl+k
KillRegion
Supprimez le texte entre le curseur et la marque.
- La fonction n’est pas lié.
KillWord
Effacez l’entrée du curseur à la fin du mot actuel. Si le curseur se trouve entre les mots, l’entrée est effacée du curseur à la fin du mot suivant. Le texte effacé est placé dans le kill-ring.
- Mode Windows :
Alt+d
,Ctrl+Delete
- Mode Emacs :
Alt+d
,Escape,d
- Mode d’insertion Vi :
Ctrl+Delete
- Mode de commande Vi :
<Ctrl+Delete>
Coller
Collez du texte à partir du Presse-papiers système.
- Mode Windows :
Ctrl+v
,Shift+Insert
- Mode d’insertion Vi :
Ctrl+v
- Mode de commande Vi :
<Ctrl+v>
Important
Lorsque vous utilisez la fonction Coller , le contenu entier de la mémoire tampon du Presse-papiers est collé dans la mémoire tampon d’entrée de PSReadLine. La mémoire tampon d’entrée est ensuite passée à l’analyseur PowerShell. L’entrée collée à l’aide de la méthode de collage de clic droit de l’application console est copiée dans la mémoire tampon d’entrée un caractère à la fois. La mémoire tampon d’entrée est passée à l’analyseur lorsqu’un caractère de ligne est copié. Par conséquent, l’entrée est analysée d’une ligne à la fois. La différence entre les méthodes de collage entraîne un comportement d’exécution différent.
PasteAfter
Collez le Presse-papiers après le curseur, en déplaçant le curseur à la fin du texte collé.
- Mode de commande Vi :
<p>
PasteBefore
Collez le Presse-papiers avant le curseur, en déplaçant le curseur à la fin du texte collé.
- Mode de commande Vi :
<P>
PrependAndAccept
Ajoutez un « # » et acceptez la ligne.
- Mode de commande Vi :
<#>
Rétablir
Annuler une annulation.
- Mode Windows :
Ctrl+y
- Mode d’insertion Vi :
Ctrl+y
- Mode de commande Vi :
<Ctrl+y>
RepeatLastCommand
Répétez la dernière modification du texte.
- Mode de commande Vi :
<.>
ReplaceChar
Remplacez le caractère actuel par le jeu de caractères suivant tapé.
- Mode de commande Vi :
<c,l>
,<c,Spacebar>
ReplaceCharInPlace
Remplacez le caractère actuel par un seul caractère.
- Mode de commande Vi :
<r>
RevertLine
Rétablit toutes les entrées de l’entrée actuelle.
- Mode Windows :
Escape
- Mode Emacs :
Alt+r
,Escape,r
ShellBackwardKillWord
Effacez l’entrée du début du mot actuel au curseur. Si le curseur se trouve entre les mots, l’entrée est effacée du début du mot précédent au curseur. Le texte effacé est placé dans le kill-ring.
La fonction n’est pas lié.
ShellKillWord
Effacez l’entrée du curseur à la fin du mot actuel. Si le curseur se trouve entre les mots, l’entrée est effacée du curseur à la fin du mot suivant. Le texte effacé est placé dans le kill-ring.
La fonction n’est pas lié.
SwapCharacters
Échangez le caractère actuel et celui qui l’a précédé.
- Mode Emacs :
Ctrl+t
- Mode d’insertion Vi :
Ctrl+t
- Mode de commande Vi :
<Ctrl+t>
Annuler
Annulez une modification précédente.
- Mode Windows :
Ctrl+z
- Mode Emacs :
Ctrl+_
,Ctrl+x,Ctrl+u
- Mode d’insertion Vi :
Ctrl+z
- Mode de commande Vi :
<Ctrl+z>
,<u>
AnnulerAll
Annulez toutes les modifications précédentes pour la ligne.
- Mode de commande Vi :
<U>
UnixWordRubout
Effacez l’entrée du début du mot actuel au curseur. Si le curseur se trouve entre les mots, l’entrée est effacée du début du mot précédent au curseur. Le texte effacé est placé dans le kill-ring.
- Mode Emacs :
Ctrl+w
UpcaseWord
Ajouté dans PSReadLine 2.3.0
Convertissez le mot suivant en majuscules.
- Mode Emacs :
Alt+u
,Escape,u
ValidateAndAcceptLine
Essayez d’exécuter l’entrée actuelle. Si l’entrée actuelle est incomplète (par exemple, il manque une parenthèse fermante, un crochet ou un guillemet), l’invite de continuation s’affiche sur la ligne suivante et PSReadLine attend que les clés modifient l’entrée actuelle.
- Mode Emacs :
Ctrl+m
ViAcceptLine
Acceptez la ligne et basculez en mode Insertion.
- Mode de commande Vi :
<Enter>
ViAcceptLineOrExit
Comme DeleteCharOrExit en mode Emacs, mais accepte la ligne au lieu de supprimer un caractère.
- Mode d’insertion Vi :
Ctrl+d
- Mode de commande Vi :
<Ctrl+d>
ViAppendLine
Une nouvelle ligne est insérée sous la ligne actuelle.
- Mode de commande Vi :
<o>
ViBackwardDeleteGlob
Supprime le mot précédent, en utilisant uniquement l’espace blanc comme délimiteur de mots.
- Mode de commande Vi :
<d,B>
ViBackwardGlob
Déplace le curseur vers le début du mot précédent, en utilisant uniquement des espaces blancs en tant que délimiteurs.
- Mode de commande Vi :
<B>
ViBackwardReplaceGlob
Supprimez vers l’arrière jusqu’au début du mot précédent, comme délimité par un espace blanc, puis entrez le mode d’insertion.
- Mode de commande Vi :
<c,B>
ViBackwardReplaceLine
Remplace la ligne gauche du curseur et tout le chemin vers le début.
- Mode de commande Vi :
<c,0>
ViBackwardReplaceLineToFirstChar
Remplace la ligne à gauche du curseur et tout sauf un caractère au début de la ligne.
- Mode de commande Vi :
<c,^>
ViBackwardReplaceWord
Remplacez le mot précédent.
- Mode de commande Vi :
<c,B>
ViDeleteBrace
Recherchez l’accolade correspondante, la parenthèse ou le crochet et supprimez tout le contenu, y compris l’accolade.
- Mode de commande Vi :
<d,%>
ViDeleteEndOfGlob
Supprimez jusqu’à la fin du mot.
- Mode de commande Vi :
<d,E>
ViDeleteGlob
Supprimez la glob suivante (mot délimité par un espace blanc).
- Mode de commande Vi :
<d,W>
ViDeleteToBeforeChar
Supprime jusqu’au caractère donné.
- Mode de commande Vi :
<d,t>
ViDeleteToBeforeCharBackward
Supprime jusqu’au caractère donné.
- Mode de commande Vi :
<d,T>
ViDeleteToChar
Supprime jusqu’au caractère donné.
- Mode de commande Vi :
<d,f>
ViDeleteToCharBackward
Supprime vers l’arrière jusqu’au caractère donné.
- Mode de commande Vi :
<d,F>
ViInsertAtBegining
Basculez vers le mode Insertion et positionnez le curseur au début de la ligne.
- Mode de commande Vi :
<I>
ViInsertAtEnd
Basculez vers le mode Insertion et positionnez le curseur à la fin de la ligne.
- Mode de commande Vi :
<A>
ViInsertLine
Une nouvelle ligne est insérée au-dessus de la ligne actuelle.
- Mode de commande Vi :
<O>
ViInsertWithAppend
Ajoutez à partir de la position de ligne actuelle.
- Mode de commande Vi :
<a>
ViInsertWithDelete
Supprimez le caractère actuel et basculez en mode Insertion.
- Mode de commande Vi :
<s>
ViJoinLines
Joint la ligne actuelle et la ligne suivante.
- Mode de commande Vi :
<J>
ViReplaceBrace
Remplacez tous les caractères entre le caractère d’accolades actuel et le partenaire correspondant.
- Mode de commande Vi :
<c,%>
ViReplaceEndOfGlob
Supprimez jusqu’à la fin du mot, comme délimité par un espace blanc, puis entrez le mode d’insertion.
- Mode de commande Vi :
<c,E>
ViReplaceEndOfWord
Supprimez jusqu’à la fin du mot, comme délimité par des espaces blancs et des délimiteurs communs, puis entrez le mode d’insertion.
- Mode de commande Vi :
<c,E>
ViReplaceGlob
Supprimez au début du mot suivant, comme délimité par un espace blanc, puis entrez le mode d’insertion.
- Mode de commande Vi :
<c,W>
ViReplaceLine
Effacez l’intégralité de la ligne de commande.
- Mode de commande Vi :
<S>
,<c,c>
ViReplaceToBeforeChar
Remplace jusqu’à ce que le caractère donné soit spécifié.
- Mode de commande Vi :
<c,t>
ViReplaceToBeforeCharBackward
Remplace jusqu’à ce que le caractère donné soit spécifié.
- Mode de commande Vi :
<c,T>
ViReplaceToChar
Supprime jusqu’au caractère donné.
- Mode de commande Vi :
<c,f>
ViReplaceToCharBackward
Remplace jusqu’à ce que le caractère donné soit spécifié.
- Mode de commande Vi :
<c,F>
ViReplaceToEnd
Remplacez les caractères de la position du curseur à la fin de la ligne.
- Mode de commande Vi :
<c,$>
,<C>
ViReplaceUntilEsc
Remplacez le caractère actuel jusqu’à ce qu’une échappement soit entrée ou que la ligne soit acceptée.
- Mode de commande Vi :
<r>
ViReplaceWord
Remplacez le mot actuel.
- Mode de commande Vi :
<c,W>
ViYankBeginningOfLine
Yank, du début de la mémoire tampon au curseur.
- Mode de commande Vi :
<y,0>
ViYankEndOfGlob
Yank du curseur à la fin du ou des MOTS.
- Mode de commande Vi :
<y,E>
ViYankEndOfWord
Yank du curseur à la fin du ou des mots.
- Mode de commande Vi :
<y,e>
ViYankLeft
Caractère(s) Yank à gauche du curseur.
- Mode de commande Vi :
<y,h>
ViYankLine
Yank la mémoire tampon entière.
- Mode de commande Vi :
<y,y>
ViYankNextGlob
Yank du curseur au début du ou des word(s) suivant(s).
- Mode de commande Vi :
<y,W>
ViYankNextWord
Yank le ou les mots après le curseur.
- Mode de commande Vi :
<y,w>
ViYankPercent
Yank vers/depuis l’accolade correspondante.
- Mode de commande Vi :
<y,%>
ViYankPreviousGlob
Yank du début du ou des mots au curseur.
- Mode de commande Vi :
<y,B>
ViYankPreviousWord
Yank le ou les mots avant le curseur.
- Mode de commande Vi :
<y,b>
ViYankRight
Caractère(s) Yank sous et à droite du curseur.
- Mode de commande Vi :
<y,l>
,<y,Spacebar>
ViYankToEndOfLine
Yank du curseur à la fin de la mémoire tampon.
- Mode de commande Vi :
<y,$>
ViYankToFirstChar
Yank du premier caractère non blanc au curseur.
- Mode de commande Vi :
<y,^>
Amerloque
Ajoutez le texte le plus récemment tué à l’entrée.
- Mode Emacs :
Ctrl+y
YankLastArg
Yank le dernier argument de la ligne d’historique précédente. Avec un argument, la première fois qu’il est appelé, se comporte comme YankNthArg. S’il est appelé plusieurs fois, il itère plutôt dans l’historique et l’argument définit la direction (négative inverse la direction.)
- Mode Windows :
Alt+.
- Mode Emacs :
Alt+.
,Alt+_
,Escape,.
,Escape,_
YankNthArg
Yank le premier argument (après la commande) de la ligne d’historique précédente. Avec un argument, yank l’argument nth (à partir de 0), si l’argument est négatif, commencez à partir du dernier argument.
- Mode Emacs :
Ctrl+Alt+y
,Escape,Ctrl+y
YankPop
Si l’opération précédente était Yank ou YankPop, remplacez le texte précédemment yanked par le texte tué suivant du kill-ring.
- Mode Emacs :
Alt+y
,Escape,y
Fonctions d’achèvement
Terminé
Essayez d’effectuer la saisie semi-automatique sur le texte entourant le curseur. S’il existe plusieurs achèvements possibles, le préfixe non ambigu le plus long est utilisé pour l’achèvement. Si vous essayez d’effectuer la fin la plus longue sans ambiguïté, une liste d’achèvements possibles s’affiche.
- Mode Emacs :
Tab
MenuComplete
Essayez d’effectuer la saisie semi-automatique sur le texte entourant le curseur. S’il existe plusieurs achèvements possibles, le préfixe non ambigu le plus long est utilisé pour l’achèvement. Si vous essayez d’effectuer la fin la plus longue sans ambiguïté, une liste d’achèvements possibles s’affiche.
- Mode Windows :
Ctrl+@
,Ctrl+Spacebar
- Mode Emacs :
Ctrl+Spacebar
PossibleCompletions
Affichez la liste des achèvements possibles.
- Mode Emacs :
Alt+=
- Mode d’insertion Vi :
Ctrl+Spacebar
- Mode de commande Vi :
<Ctrl+Spacebar>
TabCompleteNext
Essayez de terminer le texte entourant le curseur avec la fin suivante disponible.
- Mode Windows :
Tab
- Mode de commande Vi :
<Tab>
TabCompletePrevious
Essayez de terminer le texte entourant le curseur avec la saisie semi-automatique précédente.
- Mode Windows :
Shift+Tab
- Mode de commande Vi :
<Shift+Tab>
ViTabCompleteNext
Termine le groupe d’édition actuel, si nécessaire, et appelle TabCompleteNext.
- Mode d’insertion Vi :
Tab
ViTabCompletePrevious
Termine le groupe d’édition actuel, si nécessaire, et appelle TabCompletePrevious.
- Mode d’insertion Vi :
Shift+Tab
Fonctions de déplacement de curseur
BackwardChar
Déplacez le curseur un caractère vers la gauche. Cela peut déplacer le curseur vers la ligne précédente d’entrée multiligne.
- Mode Windows :
LeftArrow
- Mode Emacs :
LeftArrow
,Ctrl+b
BackwardWord
Déplacez le curseur vers le début du mot actuel, ou s’il existe entre les mots, le début du mot précédent. Les limites word sont définies par un ensemble configurable de caractères.
- Mode Windows :
Ctrl+LeftArrow
- Mode Emacs :
Alt+b
,Escape,b
- Mode d’insertion Vi :
Ctrl+LeftArrow
- Mode de commande Vi :
<Ctrl+LeftArrow>
Les caractères qui définissent des limites de mots sont configurés dans la propriété WordDelimiters de l’objet PSConsoleReadLineOptions . Pour afficher ou modifier la propriété WordDelimiters , consultez Get-PSReadLineOption et Set-PSReadLineOption.
BeginningOfLine
Si l’entrée comporte plusieurs lignes, passez au début de la ligne active ou, si déjà au début de la ligne, passez au début de l’entrée. Si l’entrée a une seule ligne, passez au début de l’entrée.
- Mode Windows :
Home
- Mode Emacs :
Home
,Ctrl+a
- Mode d’insertion Vi :
Home
- Mode de commande Vi :
<Home>
EndOfLine
Si l’entrée a plusieurs lignes, passez à la fin de la ligne active ou, si déjà à la fin de la ligne, passez à la fin de l’entrée. Si l’entrée a une seule ligne, passez à la fin de l’entrée.
- Mode Windows :
End
- Mode Emacs :
End
,Ctrl+e
- Mode d’insertion Vi :
End
ForwardChar
Déplacez le curseur d’un caractère vers la droite. Cela peut déplacer le curseur vers la ligne suivante d’entrée multiligne.
- Mode Windows :
RightArrow
- Mode Emacs :
RightArrow
,Ctrl+f
ForwardWord
Déplacez le curseur vers l’avant jusqu’à la fin du mot actuel, ou s’il existe entre les mots, jusqu’à la fin du mot suivant. Les limites word sont définies par un ensemble configurable de caractères.
- Mode Emacs :
Alt+f
,Escape,f
Les caractères qui définissent des limites de mots sont configurés dans la propriété WordDelimiters de l’objet PSConsoleReadLineOptions . Pour afficher ou modifier la propriété WordDelimiters , consultez Get-PSReadLineOption et Set-PSReadLineOption.
GotoBrace
Accédez à l’accolade, à la parenthèse ou au crochet correspondant.
- Mode Windows :
Ctrl+]
- Mode d’insertion Vi :
Ctrl+]
- Mode de commande Vi :
<Ctrl+]>
GotoColumn
Accédez à la colonne indiquée par l’argument.
- Mode de commande Vi :
<|>
GotoFirstNonBlankOfLine
Déplacez le curseur vers le premier caractère non vide dans la ligne.
- Mode de commande Vi :
<^>
,<_>
MoveToEndOfLine
Déplacez le curseur à la fin de l’entrée.
- Mode de commande Vi :
<End>
,<$>
MoveToFirstLine
Accédez à la première ligne d’une commande multiligne.
- Mode de commande Vi :
<g,g>
MoveToLastLine
Accédez à la dernière ligne d’une commande multiligne.
- Mode de commande Vi :
<G>
NextLine
Déplacez le curseur vers la ligne suivante.
- La fonction n’est pas lié.
NextWord
Déplacez le curseur vers le début du mot suivant. Les limites word sont définies par un ensemble configurable de caractères.
- Mode Windows :
Ctrl+RightArrow
- Mode d’insertion Vi :
Ctrl+RightArrow
- Mode de commande Vi :
<Ctrl+RightArrow>
Les caractères qui définissent des limites de mots sont configurés dans la propriété WordDelimiters de l’objet PSConsoleReadLineOptions . Pour afficher ou modifier la propriété WordDelimiters , consultez Get-PSReadLineOption et Set-PSReadLineOption.
NextWordEnd
Déplacez le curseur vers l’avant jusqu’à la fin du mot actuel, ou s’il existe entre les mots, jusqu’à la fin du mot suivant. Les limites word sont définies par un ensemble configurable de caractères.
- Mode de commande Vi :
<e>
Les caractères qui définissent des limites de mots sont configurés dans la propriété WordDelimiters de l’objet PSConsoleReadLineOptions . Pour afficher ou modifier la propriété WordDelimiters , consultez Get-PSReadLineOption et Set-PSReadLineOption.
PreviousLine
Déplacez le curseur vers la ligne précédente.
- La fonction n’est pas lié.
ShellBackwardWord
Déplacez le curseur vers le début du mot actuel, ou s’il existe entre les mots, le début du mot précédent. Les limites word sont définies par les jetons PowerShell.
- La fonction n’est pas lié.
ShellForwardWord
Déplacez le curseur vers le début du mot suivant. Les limites word sont définies par les jetons PowerShell.
- La fonction n’est pas lié.
ShellNextWord
Déplacez le curseur vers l’avant jusqu’à la fin du mot actuel, ou s’il existe entre les mots, jusqu’à la fin du mot suivant. Les limites word sont définies par les jetons PowerShell.
- La fonction n’est pas lié.
ViBackwardChar
Déplacez le curseur un caractère vers la gauche en mode d’édition Vi. Cela peut déplacer le curseur vers la ligne précédente d’entrée multiligne.
- Mode d’insertion Vi :
LeftArrow
- Mode de commande Vi :
<LeftArrow>
,<Backspace>
,<h>
ViBackwardWord
Déplacez le curseur vers le début du mot actuel, ou s’il existe entre les mots, le début du mot précédent. Les limites word sont définies par un ensemble configurable de caractères.
- Mode de commande Vi :
<b>
Les caractères qui définissent des limites de mots sont configurés dans la propriété WordDelimiters de l’objet PSConsoleReadLineOptions . Pour afficher ou modifier la propriété WordDelimiters , consultez Get-PSReadLineOption et Set-PSReadLineOption.
ViEndOfGlob
Déplacez le curseur jusqu’à la fin de ce mot, comme délimité par un espace blanc.
- Mode de commande Vi :
<E>
ViEndOfPreviousGlob
Se déplace à la fin du mot précédent, en utilisant uniquement des espaces blancs comme délimiteur de mot.
- La fonction n’est pas lié.
ViForwardChar
Déplacez le curseur d’un caractère vers la droite en mode d’édition Vi. Cela peut déplacer le curseur vers la ligne suivante d’entrée multiligne.
- Mode d’insertion Vi :
RightArrow
- Mode de commande Vi :
<RightArrow>
,<Spacebar>
,<l>
ViGotoBrace
Similaire à GotoBrace, mais est basé sur des caractères plutôt que sur des jetons.
- Mode de commande Vi :
<%>
ViNextGlob
Passe au mot suivant, en utilisant uniquement un espace blanc comme délimiteur de mots.
- Mode de commande Vi :
<W>
ViNextWord
Déplacez le curseur vers le début du mot suivant. Les limites word sont définies par un ensemble configurable de caractères.
- Mode de commande Vi :
<w>
Les caractères qui définissent des limites de mots sont configurés dans la propriété WordDelimiters de l’objet PSConsoleReadLineOptions . Pour afficher ou modifier la propriété WordDelimiters , consultez Get-PSReadLineOption et Set-PSReadLineOption.
Fonctions d’historique
BeginningOfHistory
Accédez au premier élément de l’historique.
- Mode Emacs :
Alt+<
ClearHistory
Efface l’historique dans PSReadLine. Cela n’affecte pas l’historique PowerShell.
- Mode Windows :
Alt+F7
EndOfHistory
Accédez au dernier élément (entrée actuelle) dans l’historique.
- Mode Emacs :
Alt+>
ForwardSearchHistory
Effectuez une recherche vers l’avant incrémentielle via l’historique.
- Mode Windows :
Ctrl+s
- Mode Emacs :
Ctrl+s
- Mode d’insertion Vi :
Ctrl+s
- Mode de commande Vi :
<Ctrl+s>
HistorySearchBackward
Remplacez l’entrée actuelle par l’élément « précédent » de l’historique PSReadLine qui correspond aux caractères entre le début et l’entrée et le curseur.
- Mode Windows :
F8
HistorySearchForward
Remplacez l’entrée actuelle par l’élément « suivant » de l’historique PSReadLine qui correspond aux caractères entre le début et l’entrée et le curseur.
- Mode Windows :
Shift+F8
NextHistory
Remplacez l’entrée actuelle par l’élément « suivant » de l’historique PSReadLine.
- Mode Windows :
DownArrow
- Mode Emacs :
DownArrow
,Ctrl+n
- Mode d’insertion Vi :
DownArrow
- Mode de commande Vi :
<DownArrow>
,<j>
,<+>
PreviousHistory
Remplacez l’entrée actuelle par l’élément « précédent » de l’historique PSReadLine.
- Mode Windows :
UpArrow
- Mode Emacs :
UpArrow
,Ctrl+p
- Mode d’insertion Vi :
UpArrow
- Mode de commande Vi :
<UpArrow>
,<k>
,<->
ReverseSearchHistory
Effectuez une recherche descendante incrémentielle dans l’historique.
- Mode Windows :
Ctrl+r
- Mode Emacs :
Ctrl+r
- Mode d’insertion Vi :
Ctrl+r
- Mode de commande Vi :
<Ctrl+r>
ViSearchHistoryBackward
Invite une chaîne de recherche et lance la recherche sur AcceptLine.
- Mode de commande Vi :
</>
Fonctions diverses
CaptureScreen
Démarrez la capture d’écran interactive : des flèches haut/bas sélectionnent des lignes, entrez le texte sélectionné dans le Presse-papiers en tant que texte et HTML.
- La fonction n’est pas lié.
ClearScreen
Effacez l’écran et dessinez la ligne actuelle en haut de l’écran.
- Mode Windows :
Ctrl+l
- Mode Emacs :
Ctrl+l
- Mode d’insertion Vi :
Ctrl+l
- Mode de commande Vi :
<Ctrl+l>
DigitArgument
Démarrez un nouvel argument numérique à passer à d’autres fonctions. Vous pouvez l’utiliser comme multiplicateur pour la fonction suivante appelée par une touche de touche. Par exemple, en appuyant sur la valeur de l’argument numérique sur 10, appuyez <Alt+1>
<Alt+0>
sur 10. Ensuite, appuyer sur la #
touche envoie 10 #
caractères (##########
) à la ligne d’entrée.
De même, vous pouvez l’utiliser avec d’autres opérations, comme <Delete>
ou Left-Arrow
.
- Mode Windows :
Alt+0
, ,Alt+2
,Alt+3
Alt+7
Alt+9
Alt+4
Alt+5
Alt+6
Alt+8
Alt+1
Alt+-
- Mode Emacs :
Alt+0
, ,Alt+1
,Alt+3
Alt+6
Alt+2
Alt+5
Alt+7
Alt+4
Alt+8
, ,Alt+9
Alt+-
- Mode de commande Vi :
<0>
, , ,<4>
<6>
<8>
<2>
<3>
<5>
<7>
<1>
<9>
InvokePrompt
Efface l’invite actuelle et appelle la fonction d’invite pour réafficher l’invite. Utile pour les gestionnaires de clés personnalisés qui changent d’état. Par exemple, modifiez le répertoire actif.
- La fonction n’est pas lié.
ScrollDisplayDown
Faites défiler l’affichage vers le bas d’un écran.
- Mode Windows :
PageDown
- Mode Emacs :
PageDown
ScrollDisplayDownLine
Faites défiler l’affichage vers le bas d’une ligne.
- Mode Windows :
Ctrl+PageDown
- Mode Emacs :
Ctrl+PageDown
ScrollDisplayToCursor
Faites défiler l’affichage jusqu’au curseur.
- Mode Emacs :
Ctrl+End
ScrollDisplayTop
Faites défiler l’affichage vers le haut.
- Mode Emacs :
Ctrl+Home
ScrollDisplayUp
Faites défiler l’affichage vers le haut d’un écran.
- Mode Windows :
PageUp
- Mode Emacs :
PageUp
ScrollDisplayUpLine
Faites défiler l’affichage vers le haut d’une ligne.
- Mode Windows :
Ctrl+PageUp
- Mode Emacs :
Ctrl+PageUp
ShowCommandHelp
Fournit une vue de l’aide complète de l’applet de commande. Lorsque le curseur se trouve à la fin d’un paramètre entièrement développé, appuyez sur les <F1>
positions clés de l’affichage de l’aide à l’emplacement de ce paramètre.
L’aide s’affiche sur une autre mémoire tampon d’écran à l’aide d’un Pagineur de Microsoft.PowerShell.Pager. Lorsque vous quittez le pagineur, vous êtes retourné à la position du curseur d’origine sur l’écran d’origine. Ce pagineur fonctionne uniquement dans les applications de terminal modernes telles que Terminal Windows.
- Mode Windows :
F1
- Mode Emacs :
F1
- Mode d’insertion Vi :
F1
- Mode de commande Vi :
<F1>
ShowKeyBindings
Afficher toutes les clés liées.
- Mode Windows :
Ctrl+Alt+?
- Mode Emacs :
Ctrl+Alt+?
- Mode d’insertion Vi :
Ctrl+Alt+?
ShowParameterHelp
Fournit une aide dynamique pour les paramètres en l’affichant sous la ligne de commande actuelle comme MenuComplete
. Le curseur doit se trouver à la fin du nom de paramètre entièrement développé lorsque vous appuyez sur la <Alt+h>
touche.
- Mode Windows :
Alt+h
- Mode Emacs :
Alt+h
- Mode d’insertion Vi :
Alt+h
- Mode de commande Vi :
<Alt+h>
ViCommandMode
Basculez le mode d’exploitation actuel de Vi-Insert vers Vi-Command.
- Mode d’insertion Vi :
Escape
ViDigitArgumentInChord
Démarrez un nouvel argument numérique pour passer à d’autres fonctions dans l’une des chords de vi.
- La fonction n’est pas lié.
ViEditVisually
Modifiez la ligne de commande dans un éditeur de texte spécifié par $env:EDITOR
ou $env:VISUAL
.
- Mode Emacs :
Ctrl+x,Ctrl+e
- Mode de commande Vi :
<v>
ViExit
Quitte l’interpréteur de commandes.
- La fonction n’est pas lié.
ViInsertMode
Basculez vers le mode Insertion.
- Mode de commande Vi :
<i>
WhatIsKey
Lisez une clé et dites-moi à quoi la clé est liée.
- Mode Windows :
Alt+?
- Mode Emacs :
Alt+?
Fonctions de prédiction
AcceptNextSuggestionWord
Accepter le mot suivant de la suggestion inline ou sélectionnée
- La fonction n’est pas lié.
AcceptSuggestion
Lorsque vous utilisez InlineView
le style d’affichage pour la prédiction, acceptez la suggestion inline actuelle.
- La fonction n’est pas lié.
NextSuggestion
Lorsque vous utilisez ListView
le style d’affichage pour la prédiction, accédez à la suggestion suivante dans la liste.
- La fonction n’est pas lié.
PreviousSuggestion
Lorsque vous utilisez ListView
le style d’affichage pour la prédiction, accédez à la suggestion précédente dans la liste.
- La fonction n’est pas lié.
ShowFullPredictionTooltip
Affichez l’info-bulle de l’élément de liste actuellement sélectionné dans l’affichage complet.
- Mode Windows :
F4
- Mode Emacs :
F4
- Mode d’insertion Vi :
F4
SwitchPredictionView
Changer le style d’affichage pour la prédiction entre InlineView
et ListView
.
- Mode Windows :
F2
- Mode Emacs :
F2
- Mode d’insertion Vi :
F2
Fonctions de recherche
CharacterSearch
Lisez un caractère et recherchez l’occurrence suivante de ce caractère. Si un argument est spécifié, recherchez vers l’avant (ou vers l’arrière si négatif) la nième occurrence.
- Mode Windows :
F3
- Mode Emacs :
Ctrl+]
- Mode d’insertion Vi :
F3
- Mode de commande Vi :
<F3>
CharacterSearchBackward
Lisez un caractère et recherchez vers l’arrière l’occurrence suivante de ce caractère. Si un argument est spécifié, recherchez vers l’arrière (ou vers l’avant si négatif) la nième occurrence.
- Mode Windows :
Shift+F3
- Mode Emacs :
Ctrl+Alt+]
- Mode d’insertion Vi :
Shift+F3
- Mode de commande Vi :
<Shift+F3>
RepeatLastCharSearch
Répétez la dernière recherche de caractères enregistrée.
- Mode de commande Vi :
<;>
RepeatLastCharSearchBackwards
Répétez la dernière recherche de caractères enregistrée, mais dans la direction opposée.
- Mode de commande Vi :
<,>
RepeatSearch
Répétez la dernière recherche dans la même direction que précédemment.
- Mode de commande Vi :
<n>
RepeatSearchBackward
Répétez la dernière recherche dans la même direction que précédemment.
- Mode de commande Vi :
<N>
SearchChar
Lisez le caractère suivant, puis recherchez-le, à l’avenir.
- Mode de commande Vi :
<f>
SearchCharBackward
Lisez le caractère suivant, puis recherchez-le en arrière.
- Mode de commande Vi :
<F>
SearchCharBackwardWithBackoff
Lisez le caractère suivant, puis recherchez-le en arrière, puis reculez un caractère.
- Mode de commande Vi :
<T>
SearchCharWithBackoff
Lisez le caractère suivant, puis recherchez-le, avancez, puis désactivez un caractère.
- Mode de commande Vi :
<t>
SearchForward
Invite une chaîne de recherche et lance la recherche sur AcceptLine.
- Mode de commande Vi :
<?>
Fonctions de sélection
ExchangePointAndMark
Le curseur est placé à l’emplacement de la marque et la marque est déplacée vers l’emplacement du curseur.
- Mode Emacs :
Ctrl+x,Ctrl+x
SelectAll
Sélectionnez la ligne entière.
- Mode Windows :
Ctrl+a
SelectBackwardChar
Ajustez la sélection actuelle pour inclure le caractère précédent.
- Mode Windows :
Shift+LeftArrow
- Mode Emacs :
Shift+LeftArrow
SelectBackwardsLine
Ajustez la sélection actuelle à inclure du curseur au début de la ligne.
- Mode Windows :
Shift+Home
- Mode Emacs :
Shift+Home
SelectBackwardWord
Ajustez la sélection actuelle pour inclure le mot précédent.
- Mode Windows :
Shift+Ctrl+LeftArrow
- Mode Emacs :
Alt+B
SelectCommandArgument
Effectuez une sélection visuelle des arguments de commande. La sélection d’arguments est délimitée dans un bloc de script. En fonction de la position du curseur, il effectue une recherche du bloc de script le plus interne vers le bloc de script le plus grand et s’arrête lorsqu’il trouve des arguments dans une étendue de bloc de script.
Cette fonction honore DigitArgument. Il traite les valeurs d’argument positive ou négative comme les décalages avant ou arrière de l’argument actuellement sélectionné, ou à partir de la position actuelle du curseur lorsqu’aucun argument n’est sélectionné.
- Mode Windows :
Alt+a
- Mode Emacs :
Alt+a
SelectForwardChar
Ajustez la sélection actuelle pour inclure le caractère suivant.
- Mode Windows :
Shift+RightArrow
- Mode Emacs :
Shift+RightArrow
SelectForwardWord
Ajustez la sélection actuelle pour inclure le mot suivant à l’aide de ForwardWord.
- Mode Emacs :
Alt+F
SelectLine
Ajustez la sélection actuelle à inclure du curseur à la fin de la ligne.
- Mode Windows :
Shift+End
- Mode Emacs :
Shift+End
SelectNextWord
Ajustez la sélection actuelle pour inclure le mot suivant.
- Mode Windows :
Shift+Ctrl+RightArrow
SelectShellBackwardWord
Ajustez la sélection actuelle pour inclure le mot précédent à l’aide de ShellBackwardWord.
- La fonction n’est pas lié.
SelectShellForwardWord
Ajustez la sélection actuelle pour inclure le mot suivant à l’aide de ShellForwardWord.
- La fonction n’est pas lié.
SelectShellNextWord
Ajustez la sélection actuelle pour inclure le mot suivant à l’aide de ShellNextWord.
- La fonction n’est pas lié.
SetMark
Marquez l’emplacement actuel du curseur à utiliser dans une commande d’édition suivante.
- Mode Emacs :
Ctrl+@
API de prise en charge des liaisons de clés personnalisées
Les fonctions suivantes sont publiques dans Microsoft.PowerShell.PSConsoleReadLine, mais ne peuvent pas être directement liées à une clé. La plupart sont utiles dans les liaisons de clés personnalisées.
void AddToHistory(string command)
Ajoutez une ligne de commande à l’historique sans l’exécuter.
void ClearKillRing()
Effacez le kill-ring. Ceci est principalement utilisé pour les tests.
void Delete(int start, int length)
Supprimez les caractères de longueur du début. Cette opération prend en charge l’annulation/restauration automatique.
void Ding()
Effectuez l’action Ding en fonction de la préférence de l’utilisateur.
void GetBufferState([ref] string input, [ref] int cursor)
void GetBufferState([ref] Ast ast, [ref] Token[] tokens,
[ref] ParseError[] parseErrors, [ref] int cursor)
Ces deux fonctions récupèrent des informations utiles sur l’état actuel de la mémoire tampon d’entrée. La première est plus couramment utilisée pour les cas simples. La seconde est utilisée si votre liaison effectue quelque chose de plus avancé avec l’Ast.
IEnumerable[Microsoft.PowerShell.KeyHandler]
GetKeyHandlers(bool includeBound, bool includeUnbound)
IEnumerable[Microsoft.PowerShell.KeyHandler]
GetKeyHandlers(string[] Chord)
Ces deux fonctions sont utilisées par Get-PSReadLineKeyHandler
. La première est utilisée pour obtenir toutes les liaisons de clé. La deuxième est utilisée pour obtenir des liaisons de clés spécifiques.
Microsoft.PowerShell.PSConsoleReadLineOptions GetOptions()
Cette fonction est utilisée par Get-PSReadLineOption et n’est probablement pas trop utile dans une liaison de clé personnalisée.
void GetSelectionState([ref] int start, [ref] int length)
S’il n’existe aucune sélection sur la ligne de commande, la fonction retourne -1 à la fois au début et à la longueur. S’il existe une sélection sur la ligne de commande, le début et la longueur de la sélection sont retournés.
void Insert(char c)
void Insert(string s)
Insérez un caractère ou une chaîne au niveau du curseur. Cette opération prend en charge l’annulation/restauration automatique.
string ReadLine(runspace remoteRunspace,
System.Management.Automation.EngineIntrinsics engineIntrinsics)
Il s’agit du point d’entrée principal vers PSReadLine. Il ne prend pas en charge la récursivité. Il n’est donc pas utile dans une liaison de clé personnalisée.
void RemoveKeyHandler(string[] key)
Cette fonction est utilisée par Remove-PSReadLineKeyHandler et n’est probablement pas trop utile dans une liaison de clé personnalisée.
void Replace(int start, int length, string replacement)
Remplacez une entrée. Cette opération prend en charge l’annulation/restauration automatique. Cela est préféré à Supprimer suivi de l’insertion, car il est traité comme une action unique pour annuler.
void SetCursorPosition(int cursor)
Déplacez le curseur vers le décalage donné. Le déplacement du curseur n’est pas suivi pour annuler.
void SetOptions(Microsoft.PowerShell.SetPSReadLineOption options)
Cette fonction est une méthode d’assistance utilisée par l’applet de commande Set-PSReadLineOption
, mais peut être utile pour une liaison de clé personnalisée qui souhaite modifier temporairement un paramètre.
bool TryGetArgAsInt(System.Object arg, [ref] int numericArg,
int defaultNumericArg)
Cette méthode d’assistance est utilisée pour les liaisons personnalisées qui respectent DigitArgument. Un appel classique ressemble à
[int]$numericArg = 0
[Microsoft.PowerShell.PSConsoleReadLine]::TryGetArgAsInt($arg,
[ref]$numericArg, 1)
Notes
Comportement de l’événement OnIdle
Lorsque PSReadLine est en cours d’utilisation, l’événement OnIdle est déclenché quand
ReadKey()
il expire (aucune saisie en 300 ms). L’événement peut être signalé pendant que l’utilisateur est au milieu de la modification d’une ligne de commande, par exemple, l’utilisateur lit l’aide pour décider quel paramètre utiliser.À compter de PSReadLine 2.2.0-beta4, le comportement OnIdle a changé pour signaler l’événement uniquement s’il existe un
ReadKey()
délai d’expiration et que la mémoire tampon d’édition actuelle est vide.