点字(読み)練習プログラム Bread Ver 0.0.6 Ruby/Tk & Gtk & GNOME & Qt & FXRuby & Apollo & FLTK 版 中村 典嗣 nnakamur@mxq.mesh.ne.jp [概要] 点字を読む練習をするプログラムです。 [必要なもの] * ruby http://www.ruby-lang.org/ja/ * Tcl/Tk or Gtk or GNOME or Qt or FXRuby(uconv) or Apollo or FLTK [インストール] * ruby のインストール % ./configure % make # make install * Tcl/Tk のインストール(Ruby/Tk 版を使いたかったら) 例えば、tcl8.05 + jp パッチの場合(ファイル名は適宜読み変えてください) % mkdir tcl-tk8.0.5jp1.6 % cd tcl-tk8.0.5jp1.6 % tar zxvf tcl8.0.5.tar.gz % tar zxvf tk8.0.5.tar.gz % cd tcl8.0.5 % zcat tcl8.0.5jp1.6.patch.gz | patch -p1 % cd ../tk8.0.5 % zcat tk8.0.5jp1.6.patch.gz | patch -p1 % cd ../tcl8.0.5/unix % ./configure --enable-shared % make % make test % cd ../../tk8.0.5/unix/ % ./configure --enable-shared --with-tcl=../../tcl8.0.5/unix % make % make test # cd ../../tcl8.0.5/unix % make -n install # make install # cd ../../tk8.0.5/unix/ % make -n install # make install * スクリプトのインストール <試しに実行してみたい場合> bread.rb のあるディレクトリで実行すれば良いだけ <ちゃんとインストールしたい奇特な方 :-) > 1) ruby -r rbconfig -e 'puts Config::CONFIG["sitelibdir"]' で表示されるパスに ディレクトリ bread/ をコピー 例えば /usr/local/lib/ruby/site_ruby/1.6 と表示されたのであれば、 # cp -a bread /usr/local/lib/ruby/site_ruby/1.6 or # mkdir /usr/local/lib/ruby/site_ruby/1.6/bread # cp bread/*.rb /usr/local/lib/ruby/site_ruby/1.6/bread/ 2) bread.rb を適当な場所にコピー # cp bread.rb /usr/local/bin/ [使い方] 実行するだけです % ./bread.rb & * 問題が出るので答えてリターンします。次々に出題されますので答えていきます。 * 50音、拗音、特殊音の場合には ひらがな、カタカナ、ローマ字どれでも OK です。 たとえば、「きゃ」の場合、「きゃ」でも「キャ」でも「KYA」でも OK です。 ただし、半角カナはダメです。 * 数字、アルファベットの場合には 全角でも半角でも OK です。 デフォルトでは、Ruby/Tk を使いますが、実行時に --gui(or -g) オプションを 指定することで Ruby/Gtk or Ruby/GNOME or Ruby/Qt or FXRuby or FLTK を 使うようにすることができます。 % ./bread.rb --gui gtk & % ./bread.rb --gui gnome & % ./bread.rb --gui qt & % ./bread.rb --gui fx & % ./bread.rb --gui fltk & Apollo を使用するには、以下のようにします。 $ ruby_aw bread.rb --gui ap & [TODO] * アイコン作成 * 文章の読み練習 * 乱数の作り方 * スコア管理 * フォント変更できるように * 不正解のときの待ち時間の変更ができるように * 濁音、半濁音とかもいる? * 点字一覧表が見にくい? * Gtk * メニューで ALT+F, ALT+H が効かない? * Qt * ヘルプがモーダルになってしまう * Apollo * シンボルの名前修正 * 絶対値座標の配置をやめる * メニューショートカットの謎 * 点字一覧表 プロポーショナルでないフォント使用できる? * 点字のスペースの見ため修正 * FXRuby * − が ? と表示されてしまう(on Linux) * 日本語で入力したときの挙動(on Linux) * ヘルプがモーダル * 点字がいびつ * entry の幅 * FLTK * ヘルプで"使い方"を選択すると落ちる * 入力欄の大きさ * time_out の使い方 * 点字一覧表 等幅フォント(日本語がアルファベットの2倍幅)使用できる? * ヘルプの日本語タイトル表示 * iconv, uconv を選択できるように * FLTK on Windows * メニューでの日本語表示 * ヘルプでの日本語表示 [履歴] * 1996年 秋くらいに Tcl/Tk 版を作った * 1996〜1997年に Ruby/Tk 版を作りかけた * 2000年 1月28日再開 * 2000年 1月30日 ver 0.0.1 公開 * 2000年 6月18日 # NABCC 一覧 のスペース見ため修正 * 2000年 6月25日 Braille.nextq, Braille.nextq_serial の Return 値は使用されていない * 2001年 6月22日 スコープの使い方を変更した。 外に追い出していた def を Bread クラスの中に押し込めた。 ver 0.0.2 公開 * 2002年 3月9日 Gtk をマージしてみた Apollo 版も作ってマージしてみた ver 0.0.3 公開 * 2002年 3月16日 Qt も作ってみた * 2002年 3月17日 ver 0.0.4 公開 * 2002年 3月23日 FXRuby 用も作ってみた ver 0.0.5 公開 * 2002年 6月27日 GNOME 用も作ってみた * 2002年 7月06日 FLTK 用も作ってみた Gtk 版を Windows でも動くようにした FLTK Windows でも動くように変更中 ver 0.0.6 公開 [ファイル一覧] README.ja 今 見ているファイル README_sjis.txt 今 見ているファイル(SJIS 版) bread.rb 点字(読み)練習プログラム Bread bread/ap.rb GUI 部分 Apollo 用 bread/fltk.rb GUI 部分 FLTK 用 bread/fx.rb GUI 部分 FXRuby 用 bread/gnome.rb GUI 部分 GNOME 用 bread/gtk.rb GUI 部分 Gtk 用 bread/qt.rb GUI 部分 Qt 用 bread/tk.rb GUI 部分 Tk 用 [動作確認環境] * Tk 版 ruby 1.6.7, Tcl/Tk 8.0.4jp on Linux * Gtk 版 ruby 1.6.7, gtk+ 1.2.10, ruby-gtk-0.28 on Linux ruby 1.6.7, gtk-dlls-20001226-2, uconv-0.4.9, ruby-gtk-0.28-i386-cygwin, ruby-gtk-0.28-i386-mingw32 on Windows 2000 * GNOME 版 ruby 1.6.7, gtk+ 1.2.10, ruby-gtk-0.28 on Linux * Qt 版 ruby 1.6.7, qt 2.3.2, ruby-qt2-0.15 on Linux * FX 版 ruby 1.6.7, fox-unicode-0.99.174, uconv-0.4.9, FXRuby-0.99.174 on Linux ruby 1.6.6, FXRuby-0.99.174-i386-mingw32, uconv-0.4.9, on Windows 2000 * Apollo 版 Apollo 0.629 on Windows 2000 * FLTK 版 ruby 1.6.7, fltk-1.1.0b12 + unicode patch, uconv-0.4.9, ruby-fltk-0.8.1 on Linux ruby 1.6.7, iconv-0.5-i386-cygwin, uconv-0.4.9, ruby-fltk-0.7.1.cygwin.utf8 on Windows 2000 [その他] * 点字一覧表に間違いがあったら、ごめんなさ〜い * 少しはまともに書き直したつもりだが、結局ごちゃごちゃに… * どうせ複数ファイルに分けてしまったので、 定数とかテーブルは別ファイルにするか? * もともと浦口さんという方がパソコン通信に書き込んだ MS-DOS の練習プログラムから出発しています。 記憶によると、継承している点 - タイトルの表示 - メッセージに顔文字を使用 - 正当数と間違った回数を表示 - 次の問題を出すまでに時間待ちをする 新規な点 - UNIX, Windows 両方で動作 - 凹凸を変更できる - コースを変更できる - ヘルプをつけた