065939ade41fa1bc48e02843331042ae9a34277c
[chise/ruby.git] / sample / t9.rb
1 #!/usr/bin/env ruby
2 $KCODE = "u"
3 $LOAD_PATH.unshift("..")
4 require "chise/char"
5 require "chise/kanjilist"
6
7 def atom_list(list)
8   list.map_character {|char|
9     d = yield(char)
10     d.char_length == 1 ? d : ""
11   }
12 end
13
14 def check_list(list)
15   d = atom_list(list){|char| char.decompose }
16   g = atom_list(list){|char| char.glyph_decompose }
17   da = d.to_a
18   ga = g.to_a
19   wa = da & ga
20   dd = (da - wa).join("")
21   gg = (ga - wa).join("")
22   puts "意味で分解できない文字: "+d, "これだけに含まれる文字: "+dd
23   puts   "形で分解できない文字: "+g, "これだけに含まれる文字: "+gg
24 end
25
26 check_list(KanjiList::JOYO_KANJI_LIST)
27 check_list(KanjiList::JISX0208_KANJI_LIST)