ポケモンのSKK辞書を作ってみる
何を血迷ったのかポケモンの名前を変換するSKK辞書を作ってみたくなった。
名前が全部カタカナだからjcode.rbのString#trが使えるんだよね。
そーいや、jcode.rb使ったの初めてかもしれん。
#!/usr/bin/env ruby # generate-pokemondic.rb require 'kconv' require 'open-uri' require 'jcode' $KCODE = 'e' def pokemons ary = [] (1..9).each do |i| open("http://pokeani.com/list/pokedex-a%d.html" % i) do |f| ary.concat f.read.toeuc.scan(%r!^<td width="90" align="center".+?>(.+?)</td>$!).flatten.map{|s| s.gsub(%r!<.+?>|\(.+\)|(.+?)!, '')} end end ary.reject! {|x| x == '名前'}.uniq end def generate_skk_entry(ary) entries = [ ";; okuri-ari entries.\n", ";; okuri-nasi entries.\n" ] entries.concat ary.map{|x| hira = x.tr("ァ-ン", "ぁ-ん") "#{hira} /#{x}/\n" }.sort entries.join end puts generate_skk_entry(pokemons)
$ generate-pokemondic.rb > SKK-JISYO.pokemon $ head SKK-JISYO.pokemon ;; okuri-ari entries. ;; okuri-nasi entries. あーぼ /アーボ/ あーぼっく /アーボック/ あーまるど /アーマルド/ あぐのむ /アグノム/ あげはんと /アゲハント/ あさなん /アサナン/ あずまおう /アズマオウ/ あちゃも /アチャモ/ $ tail SKK-JISYO.pokemon れでぃば /レディバ/ れんとらー /レントラー/ ろこん /ロコン/ ろずれいど /ロズレイド/ ろぜりあ /ロゼリア/ ろとむ /ロトム/ わかしゃも /ワカシャモ/ わたっこ /ワタッコ/ わにのこ /ワニノコ/ わんりきー /ワンリキー/
いちおう置いといた。ポケモンSKK辞書。
http://www.rubyist.net/~rubikitch/archive/SKK-JISYO.pokemon