2010-11-24 16 views
48

sbt/playから記録されたカラーエスケープコードを無効にしたいと思います。これは可能ですか?そうであれば、コマンドラインスイッチやシステムプロパティを使用して、設定を変更せずにコマンドラインを実行する方法があります。sbt/playでカラー端末の出力を無効にする方法はありますか?

+0

スティーブンショーズの回答を今すぐ受け入れることを検討してください。 – samthebest

答えて

48

あなたは単にtrueにシステムプロパティsbt.log.noformatを設定することができます。たとえば、あなたはこのようなスクリプトを作成することができVimの内部でSBTを使用します。

#!/bin/bash 
java -Dsbt.log.noformat=true $JAVA_OPTS -jar "${HOME}/bin/sbt-launch.jar" "[email protected]" 
+0

これは完全に機能します。ありがとう。 –

+21

これはsbt自体の引数としても機能します: 'sbt -Dsbt.log.noformat = true'、[sbt" rebel cut "](https://github.com/paulp/sbt-extras)を使用すると、引数 '-no-colors'を使うことができます。 – tobym

+1

これは '再生 'にも有効です。 – jilen

0

さて、あなたはCygwinをインストールして、このパラメータを渡すことによって、Windows上色を取得することができます:

-Djline.terminal=jline.UnixTerminal 

だから私は、カラーコードを無効にものを見るためにjlineパラメータを見てね。

+0

Arあなたはrxvtやminttyを使っていますか? cmd.exeを使ったデフォルトのCygwinコンソールで、私はそのような出力を得ています: '←[0m [←[0minfo←[0m]←[0mBuilding project' ... – huynhjl

+0

@huynhjlいいえ、作業。私は出力に少し驚いた。 TERMの価値は何ですか? –

+0

TERMがcygwinに設定されています。 cygwinの主な迷惑な点は、複数行の編集がうまくいかないことです(折り返し、前の行を正しい視覚的なフィードバックで編集することはできません)。私はjlineがcygwinの下でwin32のansiコードを扱うことができないことを理解しました。だから私は色がsbtでどのように働いていたかを知りたいと思っていた。 – huynhjl

2

あなたのプラットフォームが実際のjline.terminalプロパティと一致しないようです。私はちょうどここで推測していますが、ダニエルがWindowsコマンドラインで提案したようにパラメータを渡すと、カラーエスケープコードも表示されます。

したがって、プロパティがプラットフォーム(WindowsではWindowsTerminal、UnixではUnixTerminal)に一致することを確認する必要があります。

これが解決しない場合は、websiteを使用することを示唆している場合にはサポートされていないプラットフォーム上で次のようになります。

-Djline.terminal=jline.UnsupportedTerminal 
+2

明確にして申し訳ありませんが、色づけがうまくいかず、私は無効にしたいだけです。 @ Moritzの答えは私を助けました。 –

0

私は追加することによって、Cygwinの中SBTからのカラー出力を得ることができた:

-Djline.terminal=jline.UnixTerminal 

は、さらに私は、私も追加する必要があることを考え出しましたCygwin.batに次の行:その後

set CYGWIN=tty ntsec 

は、SBTは非常にいい色の出力を与える追加されます。

http://sourceforge.net/projects/console/

+0

「いくつかの問題を再:タブ補完が動作しない、バックスペースが機能しない、例外無効な端末タイプを:コンソール – OlegYch

30

バージョン0.13.8(そしておそらくそれ以前は)あなたが今、単純に-no-colorsオプションを使用することができますので:さらに、私はそれはCygwinの通過フックできるようコンソール2に探してお勧めしますが、私の意見でははるかに優れたインターフェースを提供しますsbt。例えば

sbt -no-colors test 
+1

を起動するときjline.UnixTerminalが、これはあなたが何SBT – ishaaq

+0

のより新しいバージョンを使用している場合、受け入れ答えよりも良い答えですしかし、2つのコマンドを持っている点? 'dependencies'は私のsbtセットアップで有効なsbtコマンドでさえありません。 – matanster

+1

(SBT 0.13.9を搭載したMac OSX)を私のために動作しません –

関連する問題