2010-12-20 12 views

答えて

2

使用しているターミナルプログラムがECMA-48カラーエスケープコードをサポートしていません。だから、彼らに特別な扱いを与えず、代わりに文字をそのまま出力します。

あなたが欠けているもの:ターミナル。 xterm、libvte、puttyは、そうした名前にはほんの数です。

+0

回避策はありますか?私はシステム( "色A")を知っています。画面全体に対して機能します。 – nebulus

+1

http://search.cpan.org/~jlmorel/Win32-Console-ANSI-1.04/lib/Win32/Console/ANSI.pm – Hugmeir

+0

このマシンにモジュールをインストールできませんか? Win32/Console/ANSIは利用できません。代替手段が必要です... – nebulus

1

Windowsを使用していますか? Windowsシェルがモジュールで使用されているカラーコードに準拠していないことはかなり確かです。

実際には、モジュールの説明書のところにあります。

すべてのディスプレイがISO 6429に準拠しているわけではなく、X3.64に準拠している(またはそうしようとしている)わけではないことに注意してください。このモジュールは、Windows NTまたはWindows 2000のcmd.exe、4nt.exe、およびcommand.comなど、これらのエスケープシーケンスを守らないディスプレイでは期待通りに動作しません。これらは無視されるか、 ESC文字に続いて見た目のゴミが表示されます。

EDIT:私のコメントへ 補遺:

C:\>perl -MWin32::Console::ANSI -MTerm::ANSIColor -e "print color(\"green\"), 'test', color(\"reset\");" 

作品ばかりのWindows XP、Perlの5.12.1に微細なので、あなたの回避策があります。

+0

いいえ、あなたはモジュールがインストールされていると思います。 – nebulus

関連する問題