我似乎无法让 foreground_templates 为文本段工作。下面是我提示的最后一个块。
如果我以正常权限运行,我应该只看到一个绿色的“新月”提示字符。如果我以提升的权限运行,我应该会看到一个带有“解锁”图标的红色药丸,然后是一个空格,然后是一个红新月提示字符。
该{{ if .Root }}
模板在文本属性中添加了额外的空间作品。{{ if .Root }}
foreground_templates 中的模板不起作用。无论我尝试什么,我总是得到一个绿色的新月。
我可以使用 text 属性中的模板着色来解决它,但它有点难看:
"text": "{{ if .Root }} <lightRed>\uF5DA</>{{ else }}\uF5DA{{ end }}"
我看不出有什么不对。你能?
环境:
- 视窗 10
- 测试的控制台(所有渲染相同):
- Windows 终端 1.11.2921.0
- 电源外壳 5.1
- PowerShell 7.0.3
- 哦,我的豪华 6.4.3
- SauceCodePro 书呆子字体
{
"type": "prompt",
"alignment": "left",
"newline": true,
"segments": [
{
"type": "root",
"style": "diamond",
"leading_diamond": "\uE0B6",
"trailing_diamond": "\uE0B4",
"foreground": "black",
"background": "lightRed",
"properties": {
"root_icon": "\uF13E"
}
},
{
"type": "text",
"style": "plain",
"foreground": "lightGreen",
"foreground_templates": [
"{{ if .Root }}lightRed{{ end }}"
],
"properties": {
"prefix": "",
"text": "{{ if .Root }} {{ end }}\uF5DA"
}
}
]
}