跳至内容

模块补全菜单的重绘

问题

  • 模块补全菜单 退出后,会重绘它所在区域的内容

  • 一些特殊颜色和字符会因为重绘导致显示异常

    模块补全菜单重绘问题

原因

  • 一些特殊颜色和字符不是 PowerShell 标准支持的
    • 比如 Oh-My-Posh 或 Starship 中使用到的一些颜色和形状字符
  • 通过 PowerShell 的方法去获取 buffer 的时候,就会出现差异
  • 而基于这些有差异的 buffer 再进行重绘,就会出现问题

相关问题:

解决方案

设置高度偏移量

  • 它可以让 模块补全菜单 避开终端主题区域:

    powershell
    psc menu config height_from_menu_bottom_to_cursor_when_above 1

    设置高度偏移

强制显示在下方

  • 如果希望 模块补全菜单 永远显示在下方,可以使用:

    powershell
    psc menu config enable_menu_show_below 1
  • 当下方高度不够,模块补全菜单 无法在下方显示时,它会把 buffer 向上滚动,然后在顶部显示

    设置高度偏移

Released under the MIT.