8

カラー モードの場合、黒地に白を curses で動作させることができないようです。を呼び出さないとstart_color、黒地に白になります。を呼び出すとすぐにstart_color、物事は黒地にグレーで出力され始めます。

このスクリプトを実行すると:

import sys

for i in xrange(30, 38):
    print '\x1b[0;' + str(i) + 'm' + str(i) + ': Shiny colors \x1b[1m(bright)'
print '\x1b[0m...and this is normal.'

...きれいな色がたくさん出てくるはずです。私が欲しくて手に入れることができないのは、最後の行です:「...そしてこれは正常です。」カラー ペア 0 を要求するか、COLOR_WHITE を要求すると、COLOR_BLACK はスクリプトから明るくない #37 を取得します。

参考までに、これは Gnome ターミナルに表示されるものです。

http://rpi.edu/~wellir/random/colors.png

私は Python で (curses ライブラリを使用して) プログラミングしているので、コードは次のようになります。

import curses

screen = curses.initscr()
curses.start_color()
curses.init_pair(1, curses.COLOR_WHITE, curses.COLOR_BLACK)
screen.clear()
screen.attrset(0)
screen.addstr('Hello')
screen.attrset(curses.A_BOLD)
screen.addstr('Hello')
screen.attrset(curses.color_pair(1))
screen.addstr('Hello')
screen.refresh()
curses.napms(5000)
curses.endwin()

...これで 37、37-ブライト、37 になります。

4

3 に答える 3

5

curses.use_default_colors()

于 2010-07-09T06:16:33.660 に答える
1

gnome 端末には独自の配色があり、curses モードの場合を除き、デフォルトの白の色が明るい白に変わります。色のテストが難しくなるため、gnome-terminal が色を変更しないことを確認してください。

于 2010-07-08T06:56:46.457 に答える
0

私も同じ問題でgnome端末を使用していました。

私はそれを解決することができました:

画面上で右クリック > プロファイル > プロファイル設定 > カラー > パレット

これが、8色のそれぞれがマッピングされるものだと思います。

何らかの理由で、Default選択された組み込みスキームが最初の色を黒ではなく灰色にマッピングしました!

スキームを XTerm に変更するか、最初の色を黒に変更すると、問題が解決しました。

私は使用していませんcurses.use_default_colors

于 2013-04-08T12:05:54.670 に答える