Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
As cores padrão do PowerShell e do PSReadLine são selecionadas para um terminal de plano de fundo escuro. No entanto, alguns usuários podem optar por usar um plano de fundo claro com texto escuro. Como a maioria das cores padrão não define o plano de fundo, o uso de cores de primeiro plano claro em um plano de fundo claro produz texto ilegível.
O PSReadLine permite definir cores para 18 elementos de sintaxe diferentes. Você pode exibir as configurações atuais usando o Get-PSReadLineOption
cmdlet.
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"
As configurações de cor são armazenadas como cadeias de caracteres que contêm sequências de escape ANSI que alteram a cor em seu terminal. Usando o Set-PSReadLineOption
cmdlet, você pode alterar as cores para valores que funcionam melhor para um plano de fundo de cor clara.
Definindo cores para um tema claro
O ISE do PowerShell pode ser configurado para usar um tema claro para os painéis do editor e do console. Você também pode exibir e alterar as cores que o ISE usa para vários tipos de sintaxe e saída. Você pode usar essas opções de cores para definir um tema semelhante para PSReadLine.
O hashtable a seguir define cores para PSReadLine que imitam as cores no ISE do PowerShell.
$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)
}
Observação
No PowerShell 7.2 ou superior, você pode usar o método FromRGB()
de $PSStyle
para criar as sequências de escape ANSI para as cores desejadas.
Para obter mais informações sobre $PSStyle
, consulte about_ANSI_Terminals.
Para obter mais informações sobre sequências de escape ANSI, consulte o artigo de código de escape ANSI artigo na Wikipédia.
Definindo o tema de cor em seu perfil
Para ter as configurações de cor desejadas em cada sessão do PowerShell, você deve adicionar as configurações ao script de perfil do PowerShell. Para obter um exemplo, consulte Personalizando seu ambiente de shell
Adicione a $ISETheme
variável e o comando a seguir Set-PSReadLineOption
ao seu perfil.
Set-PSReadLineOption -Colors $ISETheme
A partir do PowerShell 7.2, o PowerShell adiciona saída colorida à experiência de console padrão. As cores usadas são definidas na $PSStyle
variável e são projetadas para um plano de fundo escuro. As configurações a seguir funcionam melhor para um terminal de plano de fundo leve.
$PSStyle.Formatting.FormatAccent = "`e[32m"
$PSStyle.Formatting.TableHeader = "`e[32m"
$PSStyle.Formatting.ErrorAccent = "`e[36m"
$PSStyle.Formatting.Error = "`e[31m"
$PSStyle.Formatting.Warning = "`e[33m"
$PSStyle.Formatting.Verbose = "`e[33m"
$PSStyle.Formatting.Debug = "`e[33m"
$PSStyle.Progress.Style = "`e[33m"
$PSStyle.FileInfo.Directory = $PSStyle.Background.FromRgb(0x2f6aff) +
$PSStyle.Foreground.BrightWhite
$PSStyle.FileInfo.SymbolicLink = "`e[36m"
$PSStyle.FileInfo.Executable = "`e[95m"
$PSStyle.FileInfo.Extension['.ps1'] = "`e[36m"
$PSStyle.FileInfo.Extension['.ps1xml'] = "`e[36m"
$PSStyle.FileInfo.Extension['.psd1'] = "`e[36m"
$PSStyle.FileInfo.Extension['.psm1'] = "`e[36m"
Escolhendo cores para acessibilidade
O tema de cor ISE pode não funcionar para usuários com cegueira de cor ou outras condições que limitam sua capacidade de ver cores.
O W3C (World Wide Web Consortium) tem recomendações para usar cores para acessibilidade. O WCAG (Diretrizes de Acessibilidade de Conteúdo da Web) 2.1 recomenda que "a apresentação visual de texto e imagens de texto tenha uma taxa de contraste de pelo menos 4,5:1". Para obter mais informações, consulte o Critério de Sucesso 1.4.3 Contraste (Mínimo).
O site taxa de contraste fornece uma ferramenta que permite escolher cores de primeiro plano e plano de fundo e medir o contraste. Você pode usar essa ferramenta para encontrar combinações de cores que funcionam melhor para você.