たつをの ChangeLog : 2009-06-14

Hack部(ハック部)の合宿で、中国語の簡体字と日本語漢字の相互変換ツール Kanconvit を作りました。
オフィシャルな読みは「カンコンビット」ということでよろしくです。
まあ別になんでもいいんですが。

- Kanconvit - 簡体字と日本語漢字の相互変換ツール
http://kanconvit.ta2o.net/

簡体字と日本語漢字の違い分かりますか?
下図では、右が簡体字で左が日本語漢字(Kanconvitで変換したもの)です。
左だと漢字だけ見るだけでも中国語の意味がなんとなくわかりそうでしょ?

人民網(www.people.com.cn)

Kanconvit ダイジェスト


- 文字変換ライブラリ「Kanconvit.pm」(Perlモジュール)
http://kanconvit.ta2o.net/Kanconvit.pm

- 変換ページ「Kanconvit CGI」
http://kanconvit.ta2o.net/conv.cgi
-- 例:「中華料理協議会

- 変換API「Kanconvit API」
http://kanconvit.ta2o.net/api.cgi
-- 例:XML, JSONP

- 変換ラッパー「Kanconvit Wrapper」
http://kanconvit.ta2o.net/wrap.cgi
-- 例:中日変換オリジナル), 日中変換オリジナル
-- ブックマークレット:[J2C], [C2J]


開発前の構想メモ


簡体字と日本語漢字の相互変換ツール、サービスの作成を作りたい。
- 「lang="ja"」→「lang="cn" charset=UTF-8」
- 「lang="cn"」→「lang="ja" charset=UTF-8」

中国語のページを日本語の漢字で見ると意味が分かりやすくなる。
翻訳をするまでもない、こともあるかもしれない。

作業順序


(1) 簡体字日本漢字変換テーブルの作成

中国語漢字と日本語漢字の対応表のリスト(後述)から抜き出して作成。

(2) 変換部分のPerlモジュール化

Kanconvit.pm というのを作った。
Simplified to Japanese, Japanese to Simplified の両方向。

SYNOPSYS:
use Kanconvit;
my $ck = Kanconvit->new();
$jtext = $ck->conv_c2j($ctext);
$ctext = $ck->conv_j2c($jtext);
(コード:http://kanconvit.ta2o.net/Kanconvit.pm)

(3) フォーム入力式変換ページ(CGI)の作成

文字コードは UTF-8 で統一。

- Kanconvit CGI
http://kanconvit.ta2o.net/conv.cgi

サンプル:「中華料理協議会

(4) 変換 API CGI の作成

XML だけでなく、JSON, JSONP にも対応。

- Kanconvit API
http://kanconvit.ta2o.net/api.cgi

パラメータ解説
ctext日本語漢字に変換したい簡体字テキスト(UTF-8)
jtext簡体字に変換したい日本語漢字テキスト(UTF-8)
formatフォーマットを指定する。xml か json。
callbackformat=json のときに callback 関数を指定する。

サンプル:
- 日→中, XML : jtext=%E4%B8%AD%E8%8F%AF
- 中→日, XML : ctext=%E4%B8%AD%E5%8D%8E
- 日→中, JSON : jtext=%E4%B8%AD%E8%8F%AF&format=json
- 中→日, JSONP : ctext=%E4%B8%AD%E5%8D%8E&format=json&callback=f

(5) 変換ラッパーCGIの作成

ウェブページをラップするCGI。
ブックマークレットで使うことを念頭に。

- 変換ラッパーCGI「Kanconvit Wrapper」
http://kanconvit.ta2o.net/wrap.cgi

サンプル:中日変換オリジナル), 日中変換オリジナル

日中、中日のそれぞれの方向用のブックマークレット。
日本語ページ、中国語(簡体字)ページで実行する。
- [J2C], [C2J]

ラッパープログラムは下記の自記事を参考にした。

- [を] Webページを読み込んで何か処理して表示するラッパーCGIのテンプレート(Perl)[2008-11-04-2]

既存の変換サービス


既存の簡体字・日本漢字変換サービスはいくつか公開されている。

- 日本漢字⇔簡体字・変換・コンバート(SJIS<->GB2312)
http://pinyin.jp/sjis2gb.cgi
- 文字コード変換 (紀州技研工業・文字コードの話)
http://www.kishugiken.co.jp/cgi-bin/code3.cgi

中国語漢字と日本語漢字の対応表


漢字対応表はネットでたくさん公開されている。

- A Dictionary for Readings of Japanese Kanji 漢字辞典
http://www.scribd.com/doc/12382503/A-Dictionary-for-Readings-of-Japanese-Kanji-
- 漢字テーブル
http://www.aka-hashi.net/1000kanji.html
- 中国語漢字日本語漢字
http://emich.world.coocan.jp/kanji/SimplifiedTraditionalJapanese.htm
- 文字対応表エクセルシート
ttp://www.space-library.com/ChineseFont_by_Tsujino(NISTEP).xls

開発に使ったサンプルページ


これらのページをテストに使用した。

- 人民日報 (GB2312)
http://www.people.com.cn/
- 在中日本大使館 (UTF-8)
http://www.cn.emb-japan.go.jp/

追記


追記090615:
弾さん(dankogai)による JavaScript 版が公開されました。
わーい!
- javascript - にKanconvitを移植してみた (404 Blog Not Found)
http://blog.livedoor.jp/dankogai/archives/51224227.html
この記事に言及しているこのブログ内の記事

「なぎさ公園」は伊東の砂浜(伊東オレンジビーチ)の南の端にあります。
「市制30周年記念」の公園だそうです。
面白めなオブジェがごろごろしています。
かもめをボーッと眺めるにはうってつけかもしれません。

なぎさ公園 なぎさ公園 なぎさ公園 なぎさ公園

膝を抱え込んでションボリしている女性です。
尾崎豊か何かの歌に出てきそうです。
なぎさ公園

仰向けになった女性のベンチです。
分かる人しか分からないと思いますが、ビリーズブートキャンプの1シーン(腹筋で仰向けブリッジした女性のお腹にビリーが座る)を思い出します。
なぎさ公園

ハトです。手乗り鳩です。
伊東はハトを押しているようです。
なぎさ公園

魚です。食べると頭が良くなるかも知れません。
しかし身のほとんどはすでに食べられているようです。
なぎさ公園

抱き合う二人の彫刻の近くの角は、カモメや海を眺めるのに人気のポイントかな?
入れ替わり立ち替わり人が立ち止まります。
なぎさ公園 なぎさ公園

公園を後にし、隣を流れる伊東大川を散策。
ちゃんと遊歩道があります。
伊東大川

古めかしい温泉旅館。レトロ!
伊東大川


photos by :

Canon デジタル一眼レフカメラ EOS Kiss X2


Canon EFレンズ 35mm F2

この記事に言及しているこのブログ内の記事

伊東の町中にある観光案内所「伊東観光番」。

伊東観光番

ネーミングはたぶん、「観光」+「交番」、で「観こう番」→「観光番」になったのかと。
建物も交番風だしね。

とはいえ、観光番ってなんだか観光の番をしてる人みたい。
って、意味的にそれで良いのか。ははは。
この記事に言及しているこのブログ内の記事

「Hack部」なる、技術系の人たちのクラブ活動的なものがあるのですが、その「開発合宿」がこの土日に開催されました(ref. [2009-06-13-1])。

山喜旅館

山喜旅館


場所は、IT系の合宿の定番宿として知られる伊豆は伊東の「山喜旅館」。

山喜旅館

海の近くです。道路一本越えたらそこは海岸。
行き詰まったらビーチやリバーサイドを散歩して気分一新!
(ref. [2009-06-13-2][2009-06-14-2][2009-06-14-3])

若干ぬるめですが温泉もあるのでプログラミングに疲れた体も癒されます。

一日目の夕食:
夕食

二日目の朝食:
朝食

二日目の昼食(ノリ弁当を用意して頂きました):
ノリ弁当

合宿の様子


合宿の参加者は40名弱。
8部屋に分かれて土曜の午後(+深夜?)と日曜の午前でそれぞれ何かを作り、日曜の午後に各自が作ったものを発表。
ハックデイ[2009-05-13-2]みたいな感じですね。

1日目の開発の様子(各自の宿泊する部屋にて)。
Now Hacking
Now Hacking

2日目の開発の様子(地下の会議室にて)。
人数が人数なだけにブレーカーが何度も落ちました。
ネット(無線LAN)も苦しめ。
開発中

引き続き地下会議室で成果発表会。
発表中

成果物


この二日で、私はまず、簡体字と日本漢字の変換ツール Kanconvit を作ってリリースしました。

- Kanconvit - 簡体字と日本語漢字の相互変換ツール
http://kanconvit.ta2o.net/
- [を] 簡体字と日本語漢字の相互変換ツール Kanconvit を公開[2009-06-14-1]

それから時間のある限りブログ記事のドラフト執筆やアサマシ活動をしていました。
なお、二日目の午前はネットや電源が混雑だったので、開発進行に余裕のあった私は自重して主にオフライン活動(温泉、散歩、写真)に励みました。

やはり集中して作業ができて、かつ、気分転換の仕掛け(?)も整っている環境っていいですよね。会社の仕事もたまにはこういうところでやれればいいのになあ、と。

これまでのHack部活動記録記事


- ハック部の第一回部会でした[2009-05-17-1]
- ハック部が始まりました[2009-04-22-3]


photos by :

Canon デジタル一眼レフカメラ EOS Kiss X2


Canon EFレンズ 35mm F2


第二次世界大戦後の日本で波瀾万丈の人生を送った「フリョウガイジン」ニック・ザペッティの伝記を軸に、「日本の闇社会の戦後史」について書かれたドキュメンタリー。
膨大な資料と取材に基づいた本格ノンフィクションです。

ロバート ホワイティング(著), 松井みどり(訳) / 東京アンダーワールド


はっきりいって面白すぎます!
長いですけど、読む価値あり。
六本木と裏社会の関係も分かって、「ああ、アレはアレなのね」という新たな発見もあるので、六本木勤務の方で興味のある方は読んでおくとよいかと。
TSK.CCCビル[2007-06-20-1]の話も出てきます。
この記事に言及しているこのブログ内の記事

たつをの ChangeLog
Powered by chalow