先日、Test2::Suite
を使ってテストを書くというエントリを書きました。
Test2::Suite
には、Test2::Plugin::UTF8
というモジュールが含まれていて、これを使うことでutf8 pragma
が有効になり、テスト結果の出力をUTF-8でエンコードしてくれます。
しかし、世の中にはWindowsという、未だターミナルのエンコーディングがUTF-8ではない環境も有るので、このままでは少し不便です。そこで、Test2::Plugin::TermEncoding
というモジュールを作りました。
使い方は簡単で、単にテストコードの先頭でuse Test2::Plugin::TermEncoding
とするだけです。これだけで、Term::Encoding
モジュールを使ってターミナルのエンコーディングを取得して、適切なエンコーディングの設定が行われます。
また、pipeで出力結果を別のアプリに繋ぐときなど、ターミナルのエンコーディングに合わせたくない時も有ると思いますので、出力先がターミナルではないときには、自動的にutf8
がセットされるようになっています。
久しぶりにCPAN moduleを作りたくなったので、作ってみました(久しぶり過ぎて最初MANIFESTを作り忘れて空っぽのアーカイブをアップロードしてしまいました…)。
- 作者: Tom Christiansen,Brian D. Foy,Larry Wall,Jon Orwant
- 出版社/メーカー: Oreilly & Associates Inc
- 発売日: 2012/03/06
- メディア: ペーパーバック
- クリック: 6回
- この商品を含むブログ (2件) を見る
Learning Perl: Making Easy Things Easy and Hard Things Possible
- 作者: Randal L. Schwartz,brian d foy,Tom Phoenix
- 出版社/メーカー: O'Reilly Media
- 発売日: 2016/10/06
- メディア: Kindle版
- この商品を含むブログを見る