使用 tput 隐藏和取消隐藏光标

使用 tput 隐藏和取消隐藏光标
tput civis

成功隐藏光标。

tput cvvis

应该取消隐藏它,但事实并非如此。

知道可能是什么问题吗?

答案1

在 ncurses 中终端数据库cvvis按照 terminfo 手册页中记录的方式使用:

   cursor_visible            cvvis  vs   make cursor very
                                         visible

如果两者之间没有区别普通的非常明显,该cvvis能力通常被省略。该功能用于curs_set

curs_set例程将光标状态设置为不可见、正常或非常可见,可见性分别等于012如果终端支持可见性请求,返回之前的光标状态;否则, ERR返回。

terminfo(5)手册页还说

如果需要使光标不在底行时比正常情况更明显(例如,将不闪烁的下划线变成更容易找到的块或闪烁的下划线),请将此序列指定为cvvis。如果有办法使光标完全不可见,请将其指定为civiscnorm应该提供消除这两种模式的影响的能力。

某些终端描述可能(错误地)将cvvis和等同起来cnorm,因为某些 emacs 配置假设cvvis假设总是放。

相关内容