我根据this blog美化了Powershell,但是Operator
和Parameter
如下所示是灰色的:
所以我用Set-PSReadlineOption
更改了颜色:
Set-PSReadlineOption -TokenKind Operator -ForegroundColor Yellow
但出现以下错误:
Set-PSReadLineOption:找不到与参数名称'TokenKind'匹配的参数。。
所在位置行:1字符:22
- Set-PSReadlineOption -TokenKind运算符-ForegroundColor黄色
- CategoryInfo:InvalidArgument:(:) [Set-PSReadLineOption],ParameterBindingException
- FullyQualifiedErrorId:NamedParameterNotFound,Microsoft.PowerShell.SetPSReadLineOption
但是Set-PSReadlineOption
的{{3}}文档显示它具有一个TokenKind
参数,而该参数又可以具有Operator
作为其参数。
我很困惑为什么会发生此错误。
我的powershell版本是
谢谢您的建议!
答案 0 :(得分:5)
他们对PSReadline V2进行了重大更改,请在此处阅读:https://github.com/lzybkr/PSReadLine/issues/738
所以不是
Set-PSReadlineOption -TokenKind String -ForegroundColor Magenta
Set-PSReadlineOption -TokenKind Variable -ForegroundColor Cyan
您会做类似的事情
$colors = @{}
$colors['String'] = [System.ConsoleColor]::Magenta
$colors['Variable'] = [System.ConsoleColor]::Cyan
Set-PSReadLineOption -Colors $colors
我认为也可以在哈希表中指定前景色/背景色,但是还没有弄清楚。
阅读Set-PSReadLineOption文档here。