Améliorations de la console dans WMF 5.1#Console Improvements in WMF 5.1#

Améliorations de la console PowerShellPowerShell console improvements

Les modifications suivantes ont été apportées à powershell.exe dans WMF 5.1 pour améliorer l’expérience de la console :The following changes have been made to powershell.exe in WMF 5.1 to improve the console experience:

Prise en charge de VT100VT100 support

Ajout dans Windows 10 de la prise en charge des séquences d’échappement VT100.Windows 10 added support for VT100 escape sequences. PowerShell ignore certaines séquences d’échappement de mise en forme VT100 lors du calcul des largeurs de tableaux.PowerShell will ignore certain VT100 formatting escape sequences when calculating table widths.

Ajout dans PowerShell d’une nouvelle API que vous pouvez utiliser dans le code de mise en forme pour déterminer si VT100 est pris en charge.PowerShell also added a new API that can be used in formatting code to determine if VT100 is supported. Par exemple :For example:

if ($host.UI.SupportsVirtualTerminal)
{
    $esc = [char]0x1b
    "A yellow ${esc}[93mhello${esc}[0m"
}
else
{
    "A default hello"
}

Voici un exemple complet que vous pouvez utiliser pour mettre en surbrillance des correspondances à partir de Select-String.Here is a complete example that can be used to highlight matches from Select-String. Enregistrez l’exemple dans un fichier nommé MatchInfo.format.ps1xml puis, pour l’utiliser, dans votre profil ou ailleurs, exécutez Update-FormatData -Prepend MatchInfo.format.ps1xml.Save the example in a file named MatchInfo.format.ps1xml, then to use it, in your profile or elsewhere, run Update-FormatData -Prepend MatchInfo.format.ps1xml.

Notez que les séquences d’échappement VT100 sont prises en charge uniquement à compter de la Mise à jour anniversaire Windows 10. Elles ne sont pas prises en charge sur les systèmes antérieurs.Note that VT100 escape sequences are only supported starting with the Windows 10 Anniversary update; they are not supported on earlier systems.

Prise en charge du mode vi dans PSReadlineVi mode support in PSReadline

Ajout de la prise en charge du mode vi dans PSReadline.PSReadline adds support for vi mode. Pour utiliser le mode vi, exécutez Set-PSReadlineOption -EditMode Vi.To use vi mode, run Set-PSReadlineOption -EditMode Vi.

Stdin redirigé avec entrée interactiveRedirected stdin with interactive input

Dans les versions antérieures, vous deviez démarrer PowerShell avec powershell -File - quand stdin était redirigé et que vous souhaitiez entrer des commandes de manière interactive.In earlier versions, starting PowerShell with powershell -File - was required when stdin was redirected and you wanted to enter commands interactively.

Avec WMF 5.1, cette option difficile à découvrir n’est plus nécessaire.With WMF 5.1, this hard to discover option is no longer necessary. Vous pouvez démarrer PowerShell sans option, par exemple powershell.You can start PowerShell without any options, e.g. powershell.

Notez que PSReadline ne prend pas en charge stdin redirigé et que l’expérience de modification de ligne de commande intégrée avec stdin redirigé est très limitée (par exemple, les touches de direction ne fonctionnent pas).Note that PSReadline does not currently support redirected stdin, and the built-in command-line editing experience with redirected stdin is extremely limited, for example, arrow keys don't work. Une version ultérieure de PSReadline doit résoudre ce problème.A future release of PSReadline should address this issue.