Kotz’i’jに恋して6

キチェ語コースはまだ挨拶に留まっているけど単語数は増えてきた。動詞はまだ、殆どないけど。

コースの進行と共にKotz’ij(Kotz’i’j)も少しずつ賢くならないと!

単語リストについては後ほど書こうと思うけどGoogle SheetsからLaTex変換する方法があったので、今後はGoogle Sheetsで管理しようと思う。空いた時間に単語を入力するのはブラウザからの方がファイル管理の意味でも楽。バックアップとしては.txtファイルに変換したものをGitで管理する訳だし。

今回のプログラムにはパターン認識を新たに追加。取り敢えず三つの単語に反応する様にした。

パターン認識用の.txtファイルを新たに作成(こちら)。これはdictionariesフォルダ内に。新たにDictionary.rbを作成。

Dictionary.rb

それからKotzij.rbとResponder.rbを編集

Kotzij.rb

Responder.rb

Tzijonik.rbは今回も日付とバージョン番号の変更のみ。

Kotz’i’jに恋して5

前回のプログラムでは4つの単語からひとつをランダムに選択し回答する仕様にした。今回は単語数を93に増やしたため、単語リストを単独に作成した。また、回答もリストから選んだ単語を返すだけではなく、「~って何(Jas….?)」というも再度利用することに。

1/4の確率でJas….?を、残りの3/4の確率でリストからの単語を返す仕様にした。変更点は主にKotzij.rbのこの部分

Responder.rbの

まず、回答方法がランダムに決定され、その後単語を返すこととなった場合、単語リストから単語をひとつランダムで選択。

長くなるけどResponder.rbとKotzij.rbの全体のコードはこうなっている。Tzijonikについては日付を変えただけ。

Responder.rb

 

Kotzij.rb

プログラムを実行してみる。

現在の単語リストはこれ。会話になってないけど、少し前進してるかな。

Kotz’i’jに恋して4

単語リストの作成も開始したのでTzijonikプログラムを更新。とは言っても今回は改悪みたいなものだけど。挨拶の後にリストにある4つの単語の内一つを答えとして用いる仕様。本にならってRubyで継承も使ってみた。結果、ファイルは3つ。

まずはTzijonik.rb

 

次にKotzij.rb

 

最後にResponder.rb

しかしRubyの継承のやり方はJavaと比べると不安になる位シンプルだなぁと思う。

Kotz’i’jに恋して3(Vocabulary List)

このプログラム用の単語リストを授業の進行に沿って作成する必要がある。リスト自体はエクセルで。でこれをこれまでの様にTeXで用いる表に変換する。その作業に久方振りにExcel2Latexを使った。

エクセルでリストを作成した後に変換

これまで通り、tabularの部分だけを.texファイルに貼り付ける。

リストに追加する単語は現時点で100以上。増える一方なのでさっさと追加しないと!

象形文字

「Kotz’i’jに恋して」プロジェクトのプログラムでは最終的にマヤの象形文字(hieroglyph)でも返答出来る様にしたい。マヤの象形文字はロゼッタ・ストーンの様なものが無いこともあり、解明されていないことも多いけど言葉自体を象形文字で表すことは可能。

例えば「な」(na)の発音を表す文字は幾つかあるけどそのうちの一つはこんな風:

冗談ではなく本当にこれに似たデザインの文字が使われていた。

後は組み合わせで一文字で幾つかの音や言葉を表現出来る。文字なので伝わればある程度自由に表現出来るとは思う。