假设我A在文本编辑器中按下键,这会a在文档中插入字符并将其显示在屏幕上。我知道编辑器应用程序没有直接与硬件通信(中间有内核和其他东西),那么我的计算机内部发生了什么?
我想知道一些终端魔法在内部是如何工作的。
在使用 docker 容器时,$TERM未设置环境变量。这导致了像 vim 和 tmux 这样看起来很奇怪的控制台应用程序,但也会导致 CTRL+l(清屏)被忽略。
我很确定像部分屏幕更新、颜色、屏幕重置等命令等所有功能都是使用转义码实现的,对吗?
那么这个变量在哪里解释并允许例如使用 CTRL+l 重置我的终端屏幕,如果我在那里设置了正确的值?谁检查例如支持哪些颜色(xterm 与 xterm-256color)?贝壳?应用程序还是像 ncurses 这样的库?可能的值/终端类型在哪里定义?