ahmet alp balkan Asked: 2018-08-22 19:32:11 +0800 CST2018-08-22 19:32:11 +0800 CST 2018-08-22 19:32:11 +0800 CST 为什么 tput 在 TERM=vt100 上静默失败 772 我在 macOS 上使用 zsh 和 iTerm 作为我的终端模拟器,我的环境TERM=xterm-256color默认使用。 如果我运行tput setaf 3它会以代码 0 退出。 如果我设置TERM=vt100并运行tput setaf 3它,它会以代码 1 退出(表示失败)。 为什么会这样? terminal colors 2 个回答 Voted Best Answer thrig 2018-08-22T20:27:01+08:002018-08-22T20:27:01+08:00 vt100没有注意到和失败的setaf能力。tput定义可以在terminfo(5)数据库中找到: % TERM=xterm-256color infocmp | grep setaf setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m, % TERM=vt100 infocmp | grep setaf % Avt100相当旧,手册没有提到支持颜色等花哨的东西(显然你可以用vt100购买的地垫有不同的颜色......)。 Thomas Dickey 2018-08-23T00:29:18+08:002018-08-23T00:29:18+08:00 VT100s 从不上色(请参阅ncurses 常见问题解答)。因此终端描述缺少该功能,并且如文档所述, tput 返回错误。 1976 年推出 vt100 时,颜色是一项昂贵的功能,没有用于商品终端。几年后颜色标准化(至少, 1979 年的 ECMA-48第 2 版提供了此信息;第 1 版无法检查)。
vt100
没有注意到和失败的setaf
能力。tput
定义可以在terminfo(5)
数据库中找到:A
vt100
相当旧,手册没有提到支持颜色等花哨的东西(显然你可以用vt100购买的地垫有不同的颜色......)。VT100s 从不上色(请参阅ncurses 常见问题解答)。因此终端描述缺少该功能,并且如文档所述, tput 返回错误。
1976 年推出 vt100 时,颜色是一项昂贵的功能,没有用于商品终端。几年后颜色标准化(至少, 1979 年的 ECMA-48第 2 版提供了此信息;第 1 版无法检查)。