オレオレかん字しゅう合(KY100)を作ってみました

じょう用かん字の見直しで、「おれ」のかん字は追加する?しない?みたいなはなしになっているようですが、私はみんなすきに自分でかん字しゅう合を作ればいいんじゃないのかな、と思います。でもきっとかん字しゅう合を作るのだって大変ですよ。だからまずその手本として自分でやってみようと思いました。でも私は記おくりょくがとってもよわいので、あまり大きなかん字しゅう合を作ってもおぼえらないし、使えないだろうと考えました。そこで、私が日じょうよく使っているかん字を100字あつめて、それを「KY100」という名前のかん字しゅう合としてはっ表しようと思います。

まず、この日記の全てのデータ keita_yamaguchi.xml をダウンロードしました(はてなのかん理が面からエクスポートしました)。これを対しょうに、以下のスクリプトを使って上い100字のかん字をあつめました。なおかならずruby1.9で動かして下さい。1.9からは正き表現エンジンがonigurumaだからかん字だけをぬき出すのがとってもらくなんですよ。

# -*- encoding: UTF-8 -*-

tbl = ARGF.read.chars.inject({}) do |tbl, char|
  tbl[char.to_s] ||= 0
  tbl[char.to_s] += 1
  tbl
end

tbl.each do |key, value|
  # 追記:最しょ次のように書いてましたが、実さいにはおどり字対さくがひつ要なのでした
  # tbl.delete(key) unless /\p{Han}/u =~ key
  tbl.delete(key) unless /\p{Han}/u =~ key and key != ""
end

tbl.keys.sort{|a,b| tbl[b] <=> tbl[a]}[0...100].each{|key| print key}

この結果は次のようになりました(追記:これは間違いです、下の方にてい正ばんをのせています)。これがかん字しゅう合「KY100」(私の名前のイニシャルと字数をくみ合せてめい名しました)です!みなさんぜひ使ってみて下さい。「思」がせんとうにあるのが気よわな感じでとってもけんきょなうつくしいかん字しゅう合ではないでしょうか。

思使下方定分書用出一名行良気感作次時仮私的人以詞記実言動単語見点約大合例結現数縮変場日簡成来今意自事々知利果本代開最目上前要素追文形通問多間考段無外読回手理特付対違便何加正表直当度全辞体容二明示確面字

ちゃんとKY100にもとづいてかん字を使っているかをチェックするためのスクリプトも書いておきました。KY100にはいっていないかん字はかっこでくくられますので、そういうのをみつけたら、ちゃんとかん字を開いてね!

# -*- encoding: UTF-8 -*-

KY100 = "思使下方定分書用出一名行良気感作次時仮私的人以詞記実言動単語見点約大合例結現数縮変場日簡成来今意自事知利果本代開最目上前要素追文形通問多間考段無外読回手理特付対違便何加正表直当度全辞体容二明示確面字解"

ARGF.read.each_char do |char|
  # 追記:やっぱりここでもおどり字対さく
  # if /\p{Han}/u =~ char && /[^#{KY100}]/ =~ char
  if /\p{Han}/u =~ char && char != "" && /[^#{KY100}]/ =~ char
    print "[#{char}]"
  else
    print char
  end
end

というわけで、本記事はKY100にもとづいてかん字を使用してみました。いかがでしょうか。さすがに100字だと読みづらいですね。これじゃあ書くのも大変です。一二さん。

追記

しまった、「々」がはいっちゃってる!これはかん字じゃないから外さないとダメですね。なんでおどり字が"\p{Han}"でひっかかるんだろう?というわけで、次のものが正しいKY100ですので、よろしくおねがいいたします。

思使下方定分書用出一名行良気感次作時仮私人的以詞記実言動語単約点見大合例結現変数縮場日簡成来今意自事果利知本代開最目前上要素文追通形問多無間考段読外回手理付特対違何便加表正直当容体度辞全明示二確面字解

なお、KY100がじょう用かん字のサブセットになっていることを確にんしました。さすがにじょう用かん字ってよく使うものをあつめているだけありますね。