如何仅修改PowerShell输入行中MenuComplete选中文本的颜色
区分PSReadLine输入行与菜单补全的选中文本颜色
在PowerShell 7.4及以上版本中,PSReadLine提供了独立的颜色配置项来区分输入行选中文本和菜单补全选中文本的样式,无需使用全局的Selection参数统一设置。
你可以通过以下代码分别配置两者的颜色:
$colors = @{ # 配置输入行内选中文本的颜色(示例:黑色前景 + 浅蓝色背景) "Selection" = "$([char]0x1b)[38;2;0;0;0;48;2;100;180;255m" # 配置菜单补全中选中项的颜色(示例:黑色前景 + 浅绿色背景) "MenuSelection" = "$([char]0x1b)[38;2;0;0;0;48;2;178;255;102m" } Set-PSReadLineOption -Colors $colors
说明
Selection:仅控制输入行内手动选中的文本颜色MenuSelection:专门控制Tab补全弹出的交互菜单中,当前选中项的颜色
通过这两个独立参数,就能实现输入行选中文本和菜单补全选中文本的颜色区分,达到你需要的效果。
内容的提问来源于stack exchange,提问作者digitalguy99
相关产品推荐
相关产品推荐

