ReadJEnc NuGetで公開 & 1.3.0へバージョンアップ
大変ご無沙汰しています。
というか記事を書くのもあまりに久々で、今までどんなテンション・文体でBLOGを書いてたかさっぱり思い出せません。
ひとまず周知事項を淡々と書いていくことにします。
お知らせその1:NuGetへ登録
自作の文字コード自動判別ライブラリ「ReadJEnc」ですが、NuGetに登録しました。
VisualStudio等のNuGetパッケージマネージャで「ReadJEnc」で検索すると見つかります。プロジェクトへの組み込みも「インストール」ボタン一発で簡単にできるようになりましたので、気軽にご利用ください。
NuGetギャラリーのURLは、 https://www.nuget.org/packages/ReadJEnc/ です。
お知らせその2:対応言語モード追加・改善
今回のNuGet登録を機に、ReadJEncで判別できる文字エンコーディングを増やしました。
今までのバージョン(Ver1.2.Xまで)では、日本語以外では
- 欧文(西欧) : (UTF/ASCII/ANSI/ISO2022の判定のみ行い、ShiftJIS/EUC等は無視)
- 繁体字中国語 : Big5(CP950)/EUC-TW(CP20000)
- 簡体字中国語 : GB18030(CP54936)、および EUC-CN(CP51936)
- ハングル : UHC(CP949)、および EUC-KR(CP51949)
の判別に対応していましたが、今回のバージョンより
- 中欧東欧言語 : CP1250[iso-8859-2]
- キリル言語 : CP1251
- ギリシャ語 : CP1253[iso-8859-7]
- トルコ語 : CP1254[iso-8859-9]
- ヘブライ語 : CP1255[iso-8859-8]
- アラビア語 : CP1256
- バルト言語 : CP1257[iso-8859-13]
- ベトナム語 : CP1258[TCVN-5712]
- タイ語 : TIS620[iso-8859-11]
の判別モードも追加しました。
といっても判別アルゴリズムはどの言語も共通で、各国語ごとの相違は、
(1)未定義になっているはずの文字コード
(2)アルファベットと混在せず連続して登場すると思われる文字コードの範囲
を各エンコーディングごとそれぞれ設定しただけだったりします。
仕組みは簡単ですが、各国語/UTF-8/ANSIの識別精度もそれなりに確保できるのではないかと思います。
また簡体字中国語/ハングルの判別仕様については、GB18030はEUC-CNの文字コード範囲を拡張、UHCも同様にEUC-KRの文字コード範囲を拡張したものであり、GB18030とEUC-CN、UHCとEUC-KRをそれぞれ別物として取り扱う意義が薄いため、今回のバージョンアップにてEUC-KR/EUC-CNの判定処理および文字コード定義を抹消しました。
その他近況等
ひさびさに開発意欲が戻ってきて、まとまった時間等の開発に必要なリソースが確保できたので、いろいろとソースコードを書いたりして過ごしています。
ReadJEncについてはまえまえからNuGetへ登録したいなぁとは思っていたのですが、やり方を調べるのが面倒くさそうでずっと放置してました。今回本腰を入れてやってみたらあっさりと簡単に登録できてしまい拍子抜けでした・・・。