目前只找到这一个有明确表示支持 non-fullscreen
:
非全屏模式是什么意思?less(1)
是全屏,Zsh/Fish 补全界面是非全屏?或者 fzf 和 fzf --height=50% 分别是全屏和非全屏?
是的。
也许这是很基本的特性,所以通常 TUI 库不会刻意强调?没写过这一类应用,不太了解。
是不是进入 Raw Mode,然后只改动当前位置(如第10行第1列)到右下角(如第25行第80列)的矩形区域,程序退出前清除该区域就 OK 了?
貌似这样就行了:
#!/bin/sh
# 进入 Raw mode
stty raw -echo
# 保存光标位置
printf "\0337"
printf "Press any key to quit"
read -n1
# 恢复光标位置
printf "\0338"
# 清除当前位置到右下角间的内容
printf "\033[J"
# 退出 Raw mode
stty -raw echo
3 个赞