TortoiseHg のファイル内容文字コード判定処理
備忘録代わりに「お気に入り」に入れてあるツィートの棚卸しを兼ねた、TODOリスト代わりの私的エントリですが、勝手に実装してもらえる分には大歓迎です(笑) > 誰か
TortoiseHg におけるファイル内容/差分ビューアでの、文字コード選択周りのトラブルに関するツィートは、定期的に見かけます。
TortoiseHg での「ファイル内容」に関する文字コードは、HGENCODING
環境変数に設定したものしか扱えません。
※ 注意: バージョン 2.11 より前のバージョンでは、utf-8 (こちらが優先) と HGENCODING
環境変数に設定された文字コードの二択になります。
HGENCODING
の推奨設定値は:
ですので、各環境上では、上記指定値以外の文字コードを使うファイルは、TortoiseHg の内容表示で問題が発生することになります。
以前は:
みたいな対応を考えていたのですが、より確実な文字コード特定を考えるなら、eol エクステンションンにおける .hgeol
ファイルみたいな仕組みの方がよいのかもしれませんね。
例えば .hgcontentencoding
みたいなファイルで、以下のような設定の記述をすることで:
[patterns] **.xml = UTF-8 **.euc.txt = euc-jp **.sjis.txt = cp932
ファイル内容に関する処理が、適切な文字コードを選択できるようにする、という感じの実現をイメージしています。
TortoiseHg とは関係ありませんが:
上記の件に関しても、hg grep
が .hgcontentencoding
センシティブに処理するようになれば、いい感じで解決できるのではないかと思われます。
まぁ、後方互換性を考えると、encodnig sensitive grep として、既存のものとは別途実装することになるとは思いますが…… > hg grep