PSReadLine в PowerShell имеет раскраску синтаксиса, но как вы задаете цвета?
2 ответа
Есть пара разных способов. Вы можете сделать это:
Set-PSReadlineOption -TokenKind Comment -ForegroundColor Green
В качестве альтернативы:
$options = Get-PSReadlineOption
$options.CommentForegroundColor = Green
Возможные цвета из перечисления .NET ConsoleColor. Фактические значения цвета RGB можно изменить в диалоговом окне свойств консоли.
Чтобы увидеть текущие настройки цвета, выполните Get-PSReadlineOption
самостоятельно.
Хотя методы, описанные Джейсоном Ширком, все еще работают на моем Mac с PowerShell Core версии 6.0.1, как описано здесь, они больше не работают на моем компьютере с Linux, версия 6.1.0.
Похоже, что они полностью изменили интерфейс этого командлета: PowerShell 6 Set-PSReadlineOption.
Теперь вы можете предоставить хэш-таблицу цветов в качестве значения параметра -Colors
. Хорошо, что теперь у вас есть гораздо больше вариантов цвета.
Из примеров:
$colors = @{
# ConsoleColor enum has all the old colors
"Error" = [ConsoleColor]::DarkRed
# A mustardy 24 bit color escape sequence
"String" = "$([char]0x1b)[38;5;100m"
# A light slate blue RGB value
"Command" = "#8470FF"
}
Set-PSReadLineOption -Colors $colors