明るい色は時計に表示されません。 --color

明るい色は時計に表示されません。 --color

カラーテキストを印刷するための次のPythonスクリプトが提供されています。

for i in range(30, 100):
    print(f'\033[{i}m{i}\033[0m', end=' ')
print()                                   

Bashで実行すると、明るい色が正しく表示されます(FGコード91-97)。 明るい色表示

ただし、このコードを実行するとwatch --color python3 test.py明るい色が正しく表示されません。 明るい色が表示されない

実行したwatchコマンドに問題があると思ってsh実行してみましたが、watch --color --exec bash -c 'python3 test.py'結果は上記と同じでした。

Windows WSL2を介してUbuntu 20.04を実行していますが、RHEL7でも同様の動作を見ることができます。どんなアイデアがありますか?

ベストアンサー1

実行すると、ANSIシーケンスを処理watch --colorするように求められますwatch

プログラムに色制限があります。コードに組み込まれているそうだろうわからない47より大きい値。バージョン3.3.16(最新の安定版)に適用されます。を使用してバージョンを確認できる必要がありますwatch --version

default:
        if (attrib >= 30 && attrib <= 37) { /* set foreground color */
            fg_col = attrib - 30 + 1;
        } else if (attrib >= 40 && attrib <= 47) { /* set background color */
            bg_col = attrib - 40 + 1;
        } else {
            return 0; /* Not understood */
        }

これ所有者watch明るい色を考えてくださいしたがって、最終的にはWSL2で修正され採用されます。その間唯一のオプションは、直接コンパイルしてコードを変更することです。

おすすめ記事