我无法让终端调色板与诅咒一起使用。
import curses
def main(stdscr):
curses.use_default_colors()
for i in range(0,7):
stdscr.addstr("Hello", curses.color_pair(i))
stdscr.getch()
curses.wrapper(main)
这个 python 脚本产生以下屏幕:
然而,我的 gnome 终端调色板中确实有更多颜色。我怎样才能在curses中访问它们?
以下是我在自己的电脑(Ubuntu 14.04,python 3)上通过实验得出的结果。
- 有 256 种颜色(由前 8 位定义)。
- 其他位用于附加属性,例如突出显示。
- 传递数字 -1 作为颜色会回退到默认背景和前景色。
- 颜色对 0 (mod 256) 固定在 (-1, -1)。
- 颜色 0 到 15 是终端调色板颜色。
考虑以下测试代码。
将其添加到您的.bashrc
:
# Set proper $TERM if we are running gnome-terminal
if [ "$COLORTERM" == "gnome-terminal" ]
then
TERM=xterm-256color
fi
将其放入 python 文件中并运行它。
import curses
def main(stdscr):
curses.start_color()
curses.use_default_colors()
for i in range(0, curses.COLORS):
curses.init_pair(i + 1, i, -1)
try:
for i in range(0, 255):
stdscr.addstr(str(i), curses.color_pair(i))
except curses.ERR:
# End of screen reached
pass
stdscr.getch()
curses.wrapper(main)
运行它将产生以下输出。
如您所见,颜色对 1-16 是前景色的终端调色板。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)