どのようにしてST3ビルド出力ウィンドウに色を入れることができますか?
ビルド出力を色分けするためにgccfilterを使用していますが、ST3は生のエスケープシーケンスを表示するだけです。それらを処理させる方法はありますか?またはgccfilterを削除して、ST3に出力を色付けするだけです(たとえば、警告とエラーのgrepだけで問題ありません)?
最近のバージョンのST3のMakefileビルドシステム( Make.sublime-build file で説明)には、カラー化された出力を生成する構文定義がすでに含まれています。
これに満足できない場合、ANSIカラーをターミナルで生成するビルドシステムがあり、それらをSublime Text 3のビルド出力パネルに表示したい場合に、代替の一般的に機能するアプローチとして次のことができます。 。
これは私がRSpecのSublime Text 3インストールでそれを行った方法ですが、通常のコンソール/ TTYで色を生成するツールでどのような場合でも完全に適用できると思います。
1。 TTYに出力していない場合でも、ビルドシステムに色を出力させます。
これはビルドシステムに依存します。たとえば、RubyおよびRSpecの場合、次の内容で.rspec
ファイルをプロジェクトに作成します。
--color --tty
あなたの場合、すでにANSIカラーエスケープシーケンスで出力を生成するビルドシステムがあります。
2。インストール ANSIescape(SublimeANSI)パッケージ
パッケージコントロールからインストールすることをお勧めします。インストールと構成の手順については、パッケージのリポジトリを参照してください。
3。 Sublime Textで新しいビルドシステム定義を作成し、ANSI色を認識するように構成します
たとえば、これはColorized RSpec.sublime-build
ビルドシステムの内容です。
{
"cmd": ["rspec", "-I ${file_path}", "$file"],
"file_regex": "# ([A-Za-z:0-9_./ ]+rb):([0-9]+)",
"working_dir": "${project_path:${folder:${file_path}}}",
"selector": "source.Ruby.rspec",
// Recognize ANSI colors in the output
"target": "ansi_color_build",
"syntax": "Packages/ANSIescape/ANSI.tmLanguage"
}
最後の2つの構成オプションは SublimeANSIのreadme から取得されます。これをMakeのビルドシステムに適用できます。 Sublime Text 3のパッケージにある Make.sublime-build
ファイルの現在のバージョンをベースにすることができます。
4。新しく作成されたビルドシステムを使用してファイル/プロジェクトをビルドします。
「Build with ...」メニューを使用して、新しいビルドシステムを選択します。 OS Xでは、これはCmd + Shift + B
です。 Cmd + B
を使用した後続のビルドでは、この最後に選択されたビルドシステムが使用されます。
これはどのように見えるかです:
現在、私が見つけたST3コンソールに色を解析させる方法はありません。これは作者と話し合う必要があります。コンソールに常に単色出力があることに気づきました。 ST3は現在、それに適用したテーマで提供されている色のみを使用しています。
エスケープシーケンスを取り除く唯一の方法は、出力がSublimeに到達する前にそれらをフィルターで取り除くことです。