アドエス用英単語入力練習ソフト speedtypemodoki

MortScriptが4.1になったので英単語入力練習ソフトを作成。改善の余地おおあり。っていうかネイティブアプリ希望。

背景

  • ローマ字しか入力していない!
  • QやXの位置が今ひとつ(というか相方はすっかり打てない)
  • "is"なんて英単語を"izu"と打とうとする自分orz
  • こんなはずじゃなかったのに・・・

特訓

アドエスでやって見るか・・・

  • アドエス立ち上げて、Speedtestにアクセスっと
  • なんか動かない。
  • キー入力イベントがJavaScriptより前にOperaが横取りしているぞ。
  • こりゃダメだ。

MortScriptが4.1になって

  • Rnd()関数で乱数が発生できるようになったらしい。
  • じゃプログラム作ってないし、頭の体操でさくっと作ってみようかなぁ。
  • と言うわけで作ったプログラム。

動作確認

  • 自分のアドエス
  • 他のW-ZERO3で動くかどうかわかりませんし、ましてや他のWindowsMobileではどうだろ。無理だと思う。

インストール

遊ぶ

  • やって見ればわかるかも。
  • 出てきた単語を入力してEnterキー(OKキーもいい)。これの繰り返し。
  • 約60秒のタイムアタック

不具合

  • 起動に少し時間がかかる。英単語の数が少し多かった?御愛嬌。
  • 時々入力モードが半角モードにならないときがある。御愛嬌。
  • もっさり。御愛嬌。
  • デフォルトで60秒のタイムアタックだが、平気で60秒を超える。御愛嬌。

(以下MortScript4.1の話などなど)

MortScript4.1の癖

  • RunAtで指定する時間は現在時刻より10秒以内だと「すぐ実行」される。10秒バイアスするとちょうどいい。RunAtの不具合か、TimeStamp()が悪いのか、はたまたWMのスケジューリングの問題か。
  • 英単語データを "this is a pen that is ・・・"など、半角スペース区切りでファイルを用意。これをReadFileで読み込むのは時間がかからない。20キロバイトくらいだから。Splitで配列に分割するのに少し時間がかかる。5〜10秒くらいかな。
  • しかし!配列の要素数を取得するMaxIndexとElementCountはすごく遅い!単語数2787個つまり配列数が2787であるのを取得するのになぜか1分以上もかかるよ。しょうがないので、データファイルに単語数を持たせた。

単語集の作成

作成時感

  • 妄想:それなり
  • プログラム:そこそこ
  • データ作成:うーむ

思い出した。

  • 「動かないより動いたほうがいい」というPMのお言葉。忠実に守りました。自分に優しいプログラムということで(こら〜>俺)。