問題タブ [ansi-escape]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - スクリプト出力を保存するときに ANSI コードを削除する
一部のプログラムは、ANSI エスケープ シーケンスを使用して美しいプログレス バーなどを作成します。それはすばらしい。
ただし、その種のプログラムの出力をファイルに入れてから表示しようとすると、奇妙なエスケープシーケンスでいっぱいになるというのは良くありません。
ログ中にすべての ANSI コードを削除する方法はありますか?
私は通常、スクリプトの出力を次のように記録します。
php - \eの意図は何ですか
私はこのエスケープシーケンスについて疑問に思っていました。PHPマニュアルには、\e
「エスケープ」を表すと書かれています。グーグルで検索して、ANSIエスケープシーケンスについて見つけました。これがそれらを参照しているかどうかはわかりませ\e
ん。
ウィキペディアから:
ANSIエスケープシーケンスは、ビデオテキスト端末のフォーマット、色、およびその他の出力オプションを制御するために使用されるテキストに埋め込まれた文字です。
しかし、このエスケープシーケンスとPHPがどのように相互作用できるかはわかりません。投稿されたものがすべて正しいかどうかはわかりません。
誰かがこのトピックについて話し、例を示すことができますか?
java - ANSIエスケープシーケンス文字ストリームを読み書きするためのJavaフレームワーク
ANSI エスケープ シーケンスの読み取りは非常に複雑で、非常に間違いやすいものです。私は、エスケープされたシーケンスを好ましくはナイスタイプのインスタンスとして読み取るための抽象化を含むライブラリを求めています。ライブラリが強力な型を提供するのではなく、すべてが強力であり、運が良ければ自分で処理できるとよいでしょう。
foss ライブラリへのポインタをいただければ幸いです。
同様の質問ANSI エスケープ (端末の書式設定/カラー コード) を HTML に変換するライブラリも同様の動機を持つようですが、未回答のままです。
c - ansi エスケープ シーケンスが Windows コマンド プロンプトで機能しない
\033[K \033[%dd \033[%dG
AIXでANSIエスケープシーケンスなどを試しました。Windows で telnet を使用すると、機能しませんでした。同じことがパテを使用して正常に機能しています。
NCURSES は使いたくありませんが、printf
s. どんなアイデアでも大歓迎です。
text - ANSIエスケープコードの色付きテキストを表示するwxウィジェットはありますか?
ANSI エスケープ コードで色付けされたテキストを表示するコントロールが見つからないようです。例えば:
緑の「Hello」と白の「World」を表示します。
存在しますか?
c - エスケープ文字を文字として出力するにはどうすればよいですか?
このコードを使用して、エスケープ文字を文字または文字列として出力しようとしています:
しかし、試してみると、実際にはエスケープシーケンスが出力されます。
python - Pythonで文字列を文字通り印刷する方法
これはおそらく本当に簡単ですが、見つかりません。
Python の文字列に含まれるものを出力する必要があります。シリアル ポートからデータを収集していますが、CR または CRLF + ASCII 以外のその他の制御コードを送信しているかどうかを知る必要があります。
例として、私が持っていたと言います
次に、私がやりたいことは次のとおりです。
エスケープ文字に変換するのではなく、\n\r を表示する場所。
bash - フォワードバッシュカラー
コマンドの出力の色をエクスポートする方法はありますか?
小さな例で説明しましょう。
ディレクトリの色付きの内容を印刷しますが、
一部の色を印刷しません。私が知りたいのは、 のmagic
ようなこれらのコマンドを復元し\033[1m
て、後の処理で色を利用できるようにするトリックまたはツールです。
また
更新:この例のためだけに
使用していますが、一般的な可能性があるかどうかを知りたいです。ls
python - コンソールがPythonでANSIエスケープコードをサポートしているかどうかを検出するにはどうすればよいですか?
sys.stderr
コンソールかどうかを正しく検出するためにsys.stdout
、次のテストを実行しました。
これで、IDE(PyCharmなど)を介してこのPythonコードを実行しているときに、問題がより複雑になりました。最近、PyCharmはANSIのサポートを追加しましたが、最初のテストは失敗します。isatty
属性はありますが、に設定されていFalse
ます。
出力がANSIカラーリングをサポートしているかどうかを正しく検出するように、ロジックを変更したいと思います。1つの要件は、出力がファイルにリダイレクトされるときに、いかなる状況でも何かを出力する必要がないことです(コンソールの場合は許容されます)。
アップデート
https://gist.github.com/1316877に、より複雑なANSIテストスクリプトを追加しました
java - 正規表現で「エスケープ」されない印刷不可能な文字を一致させる方法は?
ハウツーhttp://answers.oreilly.com/topic/214-how-to-match-nonprintable-characters-with-a-regular-expression/を見つけましたが、コードは見つかりませんでした\ e、\ x1b、\ x1B、Javaで動作します。
編集
Linuxターミナルコマンドの出力のANSIエスケープシーケンス(具体的には、カラーシーケンス)を置き換えようとしています。Pythonでは、置換パターンは「\ x1b [34; 01m」のようになります。これは、青い太字のテキストを意味します。これと同じパターンはJavaでは機能しません。「[34;01m」を個別に置き換えようとしましたが、うまくいきました。問題は\x1bです。そして、 Pattern.quote()を使用して「[」エスケープを実行しています。
編集
編集 これが私が最終的に得たコードです:
ファイルgun.outputには、ls -la --color=always /
Nowの出力が含まれています。問題は、一致させようとするとNullPointerExceptionが発生することですPattern.quote("[01;34m")
。[
引用符を付けても、を含む文字列を除いて、すべてが正常に一致します。例外は次のとおりです。
編集
したがって、http://java.sun.com/developer/technicalArticles/releases/1.4regex/によると、エスケープ文字はと一致する必要があります"\u001B"
。これは私の場合は実際に機能します。問題は、を使用tokens.put("\u001B" + Pattern.quote("[01;34m"), "qwe");
しても、上記のNPEを取得できることです。