実は私, 英語が非常に苦手です. しかし困ったことに仕事柄, 時折外国人とコミュニケーションする必要があります. 今までは, 「テレビに出る日本語を喋る外国人を見ろ. 一部を除き 大概は発音も言葉使いも日本人的には無茶苦茶じゃないか. でも言いたいことは分かる. 相手に汲み取ろうとする意図があれば通じるもんだ. 」 と割り切り, 発音も文法も無茶苦茶な英語で会話していました. つまり, いかに自分の知ってるボキャブラリーで自分の言いたいことを伝えるかに 注力してきました.
一応これで米国やら英国など, 英語を母国語にしてない国だとなんとかあります. 一方, 英米人は英語に不自由な人の存在を知らないらしい.
とは言え, そろそろ限界を感じ, もう少し語彙数を増やしたいと考え出しました. なんたって中学の頃から英語嫌いだったもんで, 高校レベルの英単語でも 専門分野外はさっぱりです.
基本的に私は PC の前に座って仕事をしているので, 数分程度の空き時間にパッと開いて英単語を覚える便利な (しかも目立たない) ツールが欲しいなと考えました. 探してみると P-tan なんてものがよさそうに見えたのですが, 実際使ってみると
探せば他にもあるかもしれませんが, 例によって作った方が速いやと考え, 自分なりに作ってみました.
ってわけで, 作ってみたのが これ です. 展開・起動すると次のような画面になるはずです
一番上に単語, その下にその単語を太字にした例文が載っています (例文は時々表示されないときもあります). 意味を推測してください. [Answer] ボタンを押すと, 一番下に意味が出てきます. 正解だったら [OK], 間違っていた/分からない場合は [NG] を押します. すると, 次の問題が出てきます.
詳細は後述しますが, OK が続くと, その単語は覚えたものとして 単語リストから消えていきます.
本プログラムは単語を 5 万個蓄積することができます. 5 万の中からランダムに一つ選んで出題すると, 同じ単語が出題される確率が減り, 反復練習には不向きな気がします. そこで 5 万のうち, 最初の 300 だけから出題しています.
300 の中から適当な法則に基いて出題していますが, この辺はあまり深く説明してもしかたがないので割愛します.
単語を登録する方法は, [Edit database] ボタンを押して登録する方法と, テキストエディタでデータファイルを直接編集する方法の二つがあります. 適当な単語集みたいなのから入れてください.
同封している単語データ (words.txt) はサンプルで, 後述する 北海道大学英語語彙表 のレベル 2 (高校で必ず学習する範囲の 1778 語) から 300 個を適当に 抽出したものです. ただし例文は著作権上問題が無いと思われる格言や名言を使ってますので, あまりいい例ではないと思います. 実際の運用では市販の単語集等から入力してお使いください. また, hokudai_words.txt という名で, 上記北大語彙表のレベル 2 〜 5 を 各レベル毎にシャッフルして繋ぎ合わせたファイルを作っておきました (ただし, レベル 2 のうち words.txt に収録された単語は除いています). 必要なら words.txt の最後に繋ぎ合わせて使ってください. ただし意味や例文は手間の関係で入れてませんので, 使う方は各自入力してください.
[Edit database] を使う方法ですが, このボタンを押すと以下のようなダイアログが開きます.
一番上に単語, 真ん中に例文, 最後に意味を入れます. 例文の一部を [[ ]] で括ると, その間は太文字で表示されます.
登録単語をデータの末尾に付ける [Add new], 今あるデータを修正をする [Overwrite]がありますので, 適時判断してください. また [Del] は名前の通り, データを抹消します.
テキストエディタで直接データファイル (words.txt) を編集する場合は
80 0 custom So many countries so many [[customs]]. 習慣、関税 |
ちなみに一行目の 80 は現在の単語のスコアで [OK] が押される度に 1 加算され 100 になったら合格です. 別に 80 で無くてもかまいませんが 0〜99 までの数字にしてください. スコアが 95 と 99 の時, 例文はマスクしてます. 一方二行目の 0 は, 最後に問題が提出された時刻ですが, 自動で入るので 0 でかまいません.
[Weak list] ボタンを押すと, 出題範囲 (300) のうち, スコアの低い ワースト 30 を表示します. プリントアウトして携帯するなどに使ってください.
[Inport] ボタンは, 複数人で本プログラム用のデータを共有する際に使うもので, 他人が入力したデータを自分のデータにマージします. マージは基本的にデータ最後に追加されますが, マージデータの中に自分のデータに既にある単語の処理で 4 つのモードを作ってます. [Automatically] は, 例文・意味の内, 文字数の多い方を採用します. [no replace] は, 既入力分を優先させ, マージする情報は破棄します. [replace] は逆で既入力情報を破棄します. [add tail] はそのような操作をしません. 同じ単語を二重三重に持つ 可能性もあります. まぁ復習と考えるといいかもしれません.
出来るファイルは以下の通りです.