Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les couleurs par défaut pour PowerShell et PSReadLine sont sélectionnées pour un terminal d’arrière-plan foncé. Toutefois, certains utilisateurs peuvent choisir d’utiliser un arrière-plan clair avec du texte sombre. Étant donné que la plupart des couleurs par défaut ne définissent pas l’arrière-plan, l’utilisation de couleurs de premier plan clair sur un arrière-plan clair produit du texte non lisible.
À compter de PowerShell 7.2, PowerShell ajoute une sortie colorisée à l’expérience de console par défaut. La $PSStyle fonctionnalité n’est pas disponible en mode natif dans Windows PowerShell. Toutefois, à l’aide du module PSStyle à partir de PowerShell Gallery, vous pouvez définir des valeurs de couleur à l’aide de ces mêmes techniques décrites dans cet article.
Les couleurs utilisées sont définies dans la $PSStyle variable et sont conçues pour un arrière-plan foncé. Vous pouvez modifier ces couleurs pour mieux fonctionner pour un terminal d’arrière-plan clair.
PSReadLine vous permet de définir des couleurs pour 18 éléments de syntaxe différents. Vous pouvez afficher les paramètres actuels à l'aide de la cmdlet Get-PSReadLineOption.
EditMode : Windows
AddToHistoryHandler : System.Func`2[System.String,System.Object]
HistoryNoDuplicates : True
HistorySavePath : C:\Users\user1\AppData\Roaming\Microsoft\Wind...
HistorySaveStyle : SaveIncrementally
HistorySearchCaseSensitive : False
HistorySearchCursorMovesToEnd : False
MaximumHistoryCount : 4096
ContinuationPrompt : >>
ExtraPromptLineCount : 0
PromptText : {> }
BellStyle : Audible
DingDuration : 50
DingTone : 1221
CommandsToValidateScriptBlockArguments : {ForEach-Object, %, Invoke-Command, icm...}
CommandValidationHandler :
CompletionQueryItems : 100
MaximumKillRingCount : 10
ShowToolTips : True
ViModeIndicator : None
WordDelimiters : ;:,.[]{}()/\|^&*-=+'"-—―
AnsiEscapeTimeout : 100
PredictionSource : HistoryAndPlugin
PredictionViewStyle : InlineView
CommandColor : "`e[93m"
CommentColor : "`e[32m"
ContinuationPromptColor : "`e[37m"
DefaultTokenColor : "`e[37m"
EmphasisColor : "`e[96m"
ErrorColor : "`e[91m"
InlinePredictionColor : "`e[38;5;238m"
KeywordColor : "`e[92m"
ListPredictionColor : "`e[33m"
ListPredictionSelectedColor : "`e[48;5;238m"
MemberColor : "`e[97m"
NumberColor : "`e[97m"
OperatorColor : "`e[90m"
ParameterColor : "`e[90m"
SelectionColor : "`e[30;47m"
StringColor : "`e[36m"
TypeColor : "`e[37m"
VariableColor : "`e[92m"
Les paramètres de couleur sont stockés sous forme de chaînes contenant des séquences d’échappement ANSI qui modifient la couleur dans votre terminal. À l’aide de l’applet Set-PSReadLineOption de commande, vous pouvez modifier les couleurs en valeurs qui fonctionnent mieux pour un arrière-plan couleur clair.
Définition de couleurs pour un thème clair
PowerShell ISE peut être configuré pour utiliser un thème clair pour les volets éditeur et console. Vous pouvez également afficher et modifier les couleurs utilisées par l’ISE pour différents types de syntaxe et de sortie. Vous pouvez utiliser ces choix de couleurs pour définir un thème similaire pour PSReadLine.
La table de hachage suivante définit des couleurs pour PSReadLine qui imitent les couleurs dans PowerShell ISE.
$ISETheme = @{
Command = $PSStyle.Foreground.FromRGB(0x0000FF)
Comment = $PSStyle.Foreground.FromRGB(0x006400)
ContinuationPrompt = $PSStyle.Foreground.FromRGB(0x0000FF)
Default = $PSStyle.Foreground.FromRGB(0x0000FF)
Emphasis = $PSStyle.Foreground.FromRGB(0x287BF0)
Error = $PSStyle.Foreground.FromRGB(0xE50000)
InlinePrediction = $PSStyle.Foreground.FromRGB(0x93A1A1)
Keyword = $PSStyle.Foreground.FromRGB(0x00008b)
ListPrediction = $PSStyle.Foreground.FromRGB(0x06DE00)
Member = $PSStyle.Foreground.FromRGB(0x000000)
Number = $PSStyle.Foreground.FromRGB(0x800080)
Operator = $PSStyle.Foreground.FromRGB(0x757575)
Parameter = $PSStyle.Foreground.FromRGB(0x000080)
String = $PSStyle.Foreground.FromRGB(0x8b0000)
Type = $PSStyle.Foreground.FromRGB(0x008080)
Variable = $PSStyle.Foreground.FromRGB(0xff4500)
ListPredictionSelected = $PSStyle.Background.FromRGB(0x93A1A1)
Selection = $PSStyle.Background.FromRGB(0x00BFFF)
}
Remarque
Vous pouvez utiliser la FromRGB() méthode pour créer les séquences d’échappement ANSI pour les couleurs souhaitées.
Pour plus d’informations sur $PSStyle, consultez about_ANSI_Terminals. Pour plus d’informations sur les séquences d’échappement ANSI, consultez l’article code d’échappement ANSI article dans Wikipédia.
Définition du thème de couleur dans votre profil
Pour avoir les paramètres de couleur souhaités dans chaque session PowerShell, vous devez ajouter les paramètres de configuration à votre script de profil PowerShell. Pour obtenir un exemple, consultez Personnalisation de votre environnement shell
Ajoutez la $ISETheme variable et la commande suivante Set-PSReadLineOption à votre profil.
Set-PSReadLineOption -Colors $ISETheme
Les paramètres suivants fonctionnent mieux pour un terminal d’arrière-plan clair.
$PSStyle.Formatting.FormatAccent = $PSStyle.Foreground.Green
$PSStyle.Formatting.TableHeader = $PSStyle.Foreground.Green
$PSStyle.Formatting.ErrorAccent = $PSStyle.Foreground.Cyan
$PSStyle.Formatting.Error = $PSStyle.Foreground.Red
$PSStyle.Formatting.Warning = $PSStyle.Foreground.Yellow
$PSStyle.Formatting.Verbose = $PSStyle.Foreground.Yellow
$PSStyle.Formatting.Debug = $PSStyle.Foreground.Yellow
$PSStyle.Progress.Style = $PSStyle.Foreground.Yellow
$PSStyle.FileInfo.Directory = $PSStyle.Background.FromRgb(0x2f6aff) +
$PSStyle.Foreground.BrightWhite
$PSStyle.FileInfo.SymbolicLink = $PSStyle.Foreground.Cyan
$PSStyle.FileInfo.Executable = $PSStyle.Foreground.BrightMagenta
$PSStyle.FileInfo.Extension['.ps1'] = $PSStyle.Foreground.Cyan
$PSStyle.FileInfo.Extension['.ps1xml'] = $PSStyle.Foreground.Cyan
$PSStyle.FileInfo.Extension['.psd1'] = $PSStyle.Foreground.Cyan
$PSStyle.FileInfo.Extension['.psm1'] = $PSStyle.Foreground.Cyan
Choix des couleurs pour l’accessibilité
Le thème de couleur ISE peut ne pas fonctionner pour les utilisateurs ayant une daltonie ou d’autres conditions qui limitent leur capacité à voir les couleurs.
Le World Wide Web Consortium (W3C) propose des recommandations pour utiliser des couleurs pour l’accessibilité. Les recommandations en matière d’accessibilité du contenu web (WCAG) 2.1 recommandent que « la présentation visuelle de texte et d’images de texte ait un rapport de contraste d’au moins 4,5:1 ». Pour plus d’informations, consultez Critère de réussite 1.4.3 Contraste (minimum).
Le site web Contraste Ratio fournit un outil qui vous permet de choisir des couleurs de premier plan et d’arrière-plan et de mesurer le contraste. Vous pouvez utiliser cet outil pour trouver des combinaisons de couleurs qui fonctionnent le mieux pour vous.