tomi-ruのモバイル日記

profile
記事とカテゴリ一覧はこちら
 | 

2008-01-23

Encode::JP::Mobile::FB_CHARACTER 的な

02:05 | はてなブックマーク - Encode::JP::Mobile::FB_CHARACTER 的な - tomi-ruのモバイル日記

sub Encode::JP::Mobile::FB_CHARACTER {
    my $u = shift;
    my $char = Encode::JP::Mobile::Character->from_unicode($u);

    my $i = 0;
    while (my @called = do { package DB; @DB::args = (); caller($i++) }) {
        next if $called[3] ne 'Encode::encode';
        my $enc = Encode::find_encoding($DB::args[0])->name;
        my ($charset, $carrier) = $enc =~ /-([^-]+?)-([^-]+?)/;

        return encode($charset, $char->failback_name($carrier)); # っていうのはまだないけど
    }

}

みたいなのがあれば

print encode('x-utf8-docomo', "\x{ECA2}", \&Encode::JP::Mobile::FB_CHARACTER);

で「(>3<)」とかできて楽かも

dat/ 以下も EJM::Character もつくり中な今はまだ妄想

現時点(r5328)での Encode-JP-Mobile/trunk

22:12 | はてなブックマーク - 現時点(r5328)での Encode-JP-Mobile/trunk - tomi-ruのモバイル日記

ここ2,3日ちゃんと見てなかったので。すみませn。こちらと一部かぶりますが。

utf-8

  • キャリアの変換で絵文字2個に変換される奴はucmで表現。
  • それ以外、(>3<)みたいなのはEncode::JP::Mobile::Charactor的なのを作ってfailback関数でやろうよ(ぼくも賛成
  • そのEJM::Charactor的なので使うためにもmake-convert-map.plの代わりのこの辺のがほしい所。softbankのはxdoc2txtしたものをいったん上げとく方式で一応tools/softbank-convert.pl。(willcom対応でキャリアのページが便利な表に差し替えられればうれしいなあ)

shift_jis

今まではdocomo=kddi間だけ相互変換できていたけど、4社変換できるようになた。

これら、実装はEJM::ConvertPictgramSJISへ。いったん内部でx-utf8-*を通すことで実現。

x-sjis-kddiは今は x-sjis-kddi-cp932へのエイリアス。よってこのエンコーディングでdocomo=kddi相互変換を使っていた人は注意

新たに追加されたもの

要するにそのキャリアで表示できるのしか含んでいないもの。ConvertPictgramSJISで必要なので。

...と

いう感じかな。上記理解が変じゃないことを確認してからTODO更新してできそうなところから

 |