我正在运行OS X 10.10.5。我试图打开终端时遇到错误:
输入:未知终端" xterm-256color"
这显然是一个缺少的termcap条目。
$ port list ncurses
ncurses @6.0 devel/ncurses
任何想法如何安装&ncurses-term'在OS X上?
$ sudo port install ncurses-term
Password:
Error: Port ncurses-term not found
答案 0 :(得分:2)
问题在于Anaconda包:
https://groups.google.com/a/continuum.io/forum/#!topic/anaconda/XKMFYqM12Vg
早期版本的ncurses软件包似乎存在一些问题,它会干扰terminfo
conda install -c r ncurses
答案 1 :(得分:0)
尽管Linux上存在膨胀/单片软件包,但ncurses软件包的软件包维护者经常将7Mb的terminfo分成" base"和"术语"块(并将其与库分开)。用于ncurses的MacPorts维护者还没有这样做。终端数据库是"ncurses"包的一部分。例如,我从
看到了这一点port contents ncurses@6.0_0+universal
>下的:
/opt/local/share/terminfo/73/screen.xterm-256color
此处还有一个系统(非端口)副本:
/usr/share/terminfo/78/xterm-256color
与ncurses链接的应用程序通常会使用其中一种,具体取决于它们是与端口库还是系统库链接。但是,可以通过设置TERMINFO
变量告诉ncurses查看其他位置。如果您碰巧已将其他计算机中的某些自定义内容复制到.bashrc
,则可能已设置TERMINFO
。
tput
本身并不知道它在哪里寻找终端条目。您可以查看env
的输出,看看是否设置了TERMINFO
。 infocmp
实用程序可以使用-D
选项显示其外观(自late 2011起),例如,
$ infocmp -D
/usr/local/ncurses/share/terminfo
/usr/share/terminfo
/opt/local/share/terminfo
顺便说一句,OSX不会(禁止某些专用端口)使用 termcap 。它使用 terminfo ,作为某些给定版本的ncurses的一部分(参见例如tgetent
的手册页)。