ほとんどの Rails 作業に Windows で Git Bash を使用していますが、実行bundle exec rspec spec
するたびに「Windows では色を使用する必要があります」という警告が表示gem install win32console
され、RSpec はプレーンな白黒で実行されます。それでも、win32console をインストールしました。gem list
リストを実行すると、 win32console (1.3.0 x86-mingw32)
. RSpec は正常に動作しますが、色を付けたいと思います。私はこれをグーグルで検索し、複数の解決策を見つけましたが、どれもうまくいかないようです。Git Bash for Windows で RSpec を使用して色を取得するための「段階的な」アプローチを誰かが書いてくれませんか?
4 に答える
このブログは、 ansicon の実行方法を示すのに非常に適しています。 http://thehumblecto.blogspot.com/2012/06/rspec-color-output-in-windows.html
Windows 用の Git Bash には詳しくありませんが、標準の Windows コンソールを使用している場合はANSICONで試すことができます。
ANSICON ホームページにアクセスして、最新バージョンとダウンロード場所を確認してください。
ソースとバイナリを含む ZIP パッケージとして出荷されます。インストール手順は にありreadme.txt
ます。
以前のダウンロードは、Github で引き続き利用できます: https://github.com/adoxa/ansicon/downloads
ANSICON をスクリーンショット付きで説明するブログ投稿は次のとおりです。
@dallma77 の投稿をフォローアップすると、ansicon を使用すると、RSpec が Windows コマンド プロンプト ウィンドウに色を出力できるようになります。
dll ファイルをコピーせずに (おそらく 'ansicon -i' または 'ansicon -I' も実行しなくても)、RSpec からカラー出力を取得できるようになりました。ansicon zip ファイルを解凍した x64 フォルダー (例: C:\Users\yourusername\pathtofolder\ansi150\x64) または x86 フォルダー (ここから zip ファイルをダウンロードしましたhttp://adoxaから zip ファイルをダウンロードしました) を指す PATH にエントリを含めます。 .3eeweb.com/ansicon/index.html )。
しかし、RSpec はアプリのルートから実行する必要があるようです。そうしないと、カラー出力が表示されません。
Michael Hartl (http://ruby.railstutorial.org/) による (優れた) 本 Ruby On Rails Tutorial に従っています。「sample_app」は私のアプリ ルートであるため、たとえば C で緑と赤の出力が表示されます。 \Sites\rails_projects\sample_app>bundle exec rspec spec\requests\static_pages_spec.rb ただし、C:\Sites\rails_projects\sample_app\spec\requests>bundle exec rspec static_pages_spec.rb などのモノクロ出力のみ
これは一見未回答のようです...これを見て、Win7マシンでこの問題を再検討しました。私も色を機能させることができませんでしたが、当時は他に心配することがたくさんあったので (私は RR nweb で (今でもそうだと思います)、Rspec は B/W で動作していました)、先に進みました。 . @Zetetic の返信を見て、ANSICON をダウンロードしたことを思い出しましたが、点と点を結び付けていませんでした。ということで、以下をやってみました。ansi32.dll と ansicon.exe を ansi140 (ansi140.zip から抽出) の x86 フォルダーからアプリのルート フォルダーにコピーしただけです。Ruby と Rails で cmd ウィンドウを開き、アプリのルートをポイントして ansicon.exe を実行し、テストを実行すると、緑 (および赤) が表示されます。
しばらく経っているので、これが誰かの助けになることを願っています。私は先週ここで活動を始めたばかりです。
ところで、gem リストに win32console はありませんが、win32-service 0.7.2 (無関係だと思います) とその他の win32-gem があります。それらがどのように/何のためにあるのか覚えていませんが、リストは次のとおりです: win32-api 1.4.8、win32-open3 0.3.2、windows-api 0.4.1、windows-pr 1.2.1。
ほとんどの場合、それらは win32-service またはバンドラーが自動的に含めたその他のものの依存ジェムです。そのバンドラーの素晴らしいこと。ただし、win32-service は mongrel-service 用だと思います (これは機能しませんでしたが、それは別の問題です)。