Hatena::Groupmobilehacker

tokuhiromの日記 RSSフィード

 | 

2008-01-17

絵文字相互変換の方針 utf8 編における俺の頭の中。 19:20 絵文字相互変換の方針 utf8 編における俺の頭の中。 - tokuhiromの日記 を含むブックマーク はてなブックマーク - 絵文字相互変換の方針 utf8 編における俺の頭の中。 - tokuhiromの日記 絵文字相互変換の方針 utf8 編における俺の頭の中。 - tokuhiromの日記 のブックマークコメント

	オレ日記

	今日はハレだったよ!\x{E63E}
	by たなか(docomo user)

	うそだ!\x{E50F} だっ!
	by さとう(softbank user)

	いやいや \x{EC40} でしょう。
	by すずき(kddi user)

みたいな HTML があったときに、ページごと x-utf8-* で encode してユーザの端末に配信したい。

問題は ezweb ユーザの扱い。

いままで、x-sjis-ezweb をつかって DB にデータを保存していたので、KDDI の絵文字は表 unicode 領域にマッピングされている場合。全部のデータを変換するとダウンタイムが発生するのでできるだけやりたくない。

x-utf8-* は裏 unicode にしか対応していないので、表Unicodeから裏Unicodeへうごかしたい。

ので、

package Proj::Charset;
use autobox::Encode;

sub encode {
  my ($html, $carrier) = @_;
  $html =~ tr/\x{E543}\x{EF53}.../\x{....}\x{....}..../; # ここでKDDIの絵文字を表から裏にうごかす
  $html->encode("x-utf8-$carrier");
}

x-sjis-kddi と x-sjis-kddi-auto の違い 16:58 x-sjis-kddi と x-sjis-kddi-auto の違い - tokuhiromの日記 を含むブックマーク はてなブックマーク - x-sjis-kddi と x-sjis-kddi-auto の違い - tokuhiromの日記 x-sjis-kddi と x-sjis-kddi-auto の違い - tokuhiromの日記 のブックマークコメント

encode のときの挙動はまったく一緒。unicode から sjis への変換はまったく一緒。

違いは decode 時にある。sjis から unicode への変換。sjis から unicode にマッピングするときに、

という違いがあります。

ここまでのあらすじ 15:44 ここまでのあらすじ - tokuhiromの日記 を含むブックマーク はてなブックマーク - ここまでのあらすじ - tokuhiromの日記 ここまでのあらすじ - tokuhiromの日記 のブックマークコメント

for tomi-ru さん

15:34 tokuhirom: x-utf8-* は
15:35 tokuhirom: 表 utf8 からも encode できるようにした方が便利だなー
15:35 m*******: ?
15:36 tokuhirom: 今の x-utf8-* は
15:36 tokuhirom: 裏 utf8 しかマップにいれてないとです
15:36 tokuhirom: たしか。
15:36 m*******: ああ、みててなんで、とおもった
15:37 tokuhirom: なんでそうしたんだろう……
15:37 m*******: 表だと Softbankとかぶるから?
15:37 tokuhirom: あー
15:37 tokuhirom: そんな気もします
15:38 tokuhirom: というか、そうですね
15:38 tokuhirom: どういう風にするのがいいんだろうなー
15:39 tokuhirom: softbank を見捨てるという手もひとつありつつ。
15:39 tokuhirom: softbank がかぶってるといっても
15:40 tokuhirom: ページ6のやつだけなので
15:40 tokuhirom: そこだけ au 優先にしちゃうというのが現実的なんですかねえ
15:40 m*******: モジュールとしては美しくないような
15:40 tokuhirom: そうですね
15:41 tokuhirom: x-sjis-* での相互変換ってどうなってましたっけ?

utf8 のあれな領域の文字 15:21 utf8 のあれな領域の文字 - tokuhiromの日記 を含むブックマーク はてなブックマーク - utf8 のあれな領域の文字 - tokuhiromの日記 utf8 のあれな領域の文字 - tokuhiromの日記 のブックマークコメント

「㋢㋜㋣」とかそういう文字はケータイで表示できるのか、どうか。

で調べてみたところ、いずれも ? または空白になった。

悲しいけど、これ現実なのよね。

ということで、cp932 ベースに ucm をつくった作戦はぼちぼちあたりっぽい。

☀ とかはマッピングしといた方が便利じゃないかという噂もあるけど、まあ意味ないかなーという気もする。

#mobilejp@freenode 14:37 #mobilejp@freenode - tokuhiromの日記 を含むブックマーク はてなブックマーク - #mobilejp@freenode - tokuhiromの日記 #mobilejp@freenode - tokuhiromの日記 のブックマークコメント

つくってみたよ。みんな入ってね。

willcom の簡易位置情報取得 API が腐ってる件について 10:58 willcom の簡易位置情報取得 API が腐ってる件について - tokuhiromの日記 を含むブックマーク はてなブックマーク - willcom の簡易位置情報取得 API が腐ってる件について - tokuhiromの日記 willcom の簡易位置情報取得 API が腐ってる件について - tokuhiromの日記 のブックマークコメント

http://coderepos.org/share/changeset/4763

URI っぽい感じにするんなら、uri_escape させろよ。

Encode::JP::Mobile on Perl5.10 09:20 Encode::JP::Mobile on Perl5.10 - tokuhiromの日記 を含むブックマーク はてなブックマーク - Encode::JP::Mobile on Perl5.10 - tokuhiromの日記 Encode::JP::Mobile on Perl5.10 - tokuhiromの日記 のブックマークコメント

なんとかしないと……。

t/charnames..................Use of uninitialized value $charnames::hint_bits in bitwise or (|) at /home/tokuhirom/project/Encode-JP-Mobile/blib/lib/Encode/JP/Mobile/Charnames.pm line 16.
Use of uninitialized value $charnames::hint_bits in bitwise or (|) at /home/tokuhirom/project/Encode-JP-Mobile/blib/lib/Encode/JP/Mobile/Charnames.pm line 16.
t/charnames..................ok     
t/docomo-bruteforce..........ok         
t/emoji_convert..............ok    
t/emoji_convert_utf8.........ok     
t/emoji_convert_utf8_fb......ok   
t/kddi-bruteforce............ok         
t/kddi-jis...................ok     
t/kddi-trans.................ok   
t/Mobile.....................ok     
t/softbank-bruteforce........ok         
t/vodafone-fallback..........ok   
All tests successful.
Files=11, Tests=12582,  9 wallclock secs ( 1.82 usr  0.08 sys +  6.27 cusr  0.14 csys =  8.31 CPU)
Result: PASS

【追記】

→ なんとかした。

 |