2014年04月15日

点字タイプソフト作ってみました。

Windows 8向けに点字タイプで文字が打てるプログラムを作ってみました。これを起動しておくと、様々なソフトの文字入力ができる部分において、キーボードのホームポジションで点字打ちをすることで、そこに文字を入力できるようになります。機能はあまり多くありませんが、せっかく作ったので、ここに公開します。ダウンロードはこの記事の下の方の brlinput.zip リンクからできます。

とにかくシンプルに作ってみました。本体は一つの実行ファイルのみです。キーの割り当ても変えられません。できるのは、点字入力で対応する平仮名の出力、そして点字の出力です。途中で両手入力、片手入力を切り替えることはできませんが、起動時に選べます。漢字入力は、IMEを起動してから、ひらがなを入力することで行います。英字への切り替えは外国語引用符で行います。「⠦(点字。環境によっては表示不可、2,3,6の点)」で英字に切り替わり、「⠴(3,5,6の点)」でかなに戻ります。数字は数字符「⠼(3,4,5,6の点)」で始まり、第一つなぎ符「⠤(3,6の点)」で終わります。なお数字の桁数に制限はありません。記号の多くは実装していません。

今後、漢点字や六点漢字、その他の記号やコマンドなどいろいろ機能を追加していくこともできそうですが、これ自体は低機能を目指します。多機能の要望があれば別に有料版として開発していくことにします。

実行すると、画面の右下にIMEの言語バーのようなものが表示されます。これには現在の入力の状態が表示されています。またタスクトレイには白抜きの「め」が表示されます。この状態で点字タイプ入力が可能になります。FDSJKLがそれぞれ点字の1から6の点に対応しています。いわゆるパーキンス式です。試しにFキーを押せば「あ」が表示されるはずです。全部押すと「め」です。なお、日本語変換は自動では切り替わらないので、自分で切り替える必要があります。

デスクトップパソコンで6キー同時押しができないときは、違うキーボードに変えればうまくいく可能性があります。ノートパソコンで打てないときは、不便ですが外付けキーボードで何とかしないといけないでしょう。

このプログラムには4つのモードがあります。平仮名墨字(すみじ)出力、無効、六点点字出力、八点点字出力です。これらの切り替えはALT+CTRL+変換キーで行います。ありがちなショートカットなのでかぶって使えないかもしれません。スクリーンリーダー(PC-Talker、NVDA)利用中は動作内容をSAPI5音声で簡単に報告します。

当初は予定していなかったのですが、プログラムを書くときに文字パレットから点字をとってくるのが大変だったので、点字の活字を直接出力するモードも付け加えました。六点(⠿)だけでなく、八点(⣿)も打てるようにしています。もちろん、八点入力モードはキーボードで8キー同時認識ができることが前提です(ダメなときは、同時押し対応のゲーム用外付けキーボードを使えば、USB接続でも8キー同時認識が可能かもしれませんが、試していません)。入力方法ですが漢点字の一般的な方法を踏襲しています。上の二つの点を0の点、7の点として無変換キーとスペースキーで入力します。残りの点は六点点字と同じです。なお、NVDA利用中に無変換キーをNVDAキーとして使っているときは入力がうまくできないので、そのときは「日本語設定」で「無変換をNVDAキーとして使用」のチェックを外してください。

動作確認はWindowsVISTA/7/8.1で行いました。実行には.NET Framework3.5が必要です。パソコンに.NET FrameWork3.5が入っていないのに実行しようとすると、インストールの案内が出るはずですので、指示に従って入れてください。標準フォントにユニコード点字が入っていない場合はバーに点字は表示されません。そのときは、こちらのBraille6.ttf をインストールするとバーに六点点字を表示できます。もちろん文書への点字出力にはユニコードの点字のあるフォントに対応しているエディタやワープロソフトが必要です。

終了方法ですが、マウスの操作ができる場合は、点字入力パネルを右クリックすれば、終了項目だけのメニューが出るので、それをクリックしてください。確認が出るのでまたエンターしてください。タスクトレイにあるアイコンでも同様の方法で終了できます。キーボード操作で終了させるには、Windows+Bでタスクトレイの操作に切り替え、「点字タイプ」のところに右矢印キーで移動して、アプリケーションキー(もしくはシフト+F10)でメニューを出します。これは先ほどのマウスで右クリックしたときのメニューと同じで、終了を選んでエンターをすると同様に終了します。

片手入力にも対応しています。切り替え方ですが、付属のファイルなどを作りたくなかったので、実行ファイル名で区別しました。実行ファイルの最後の文字が「r(アール)」のときは右手用、「l(エル)」のときは左手用になるようにしています。どちらでもないときは両手用です。つまり、エクスプローラの設定により拡張子が見えていないときは「brlinputr」と実行ファイル名を書き換えると右手用に、拡張子が見えているときは「brlinputl.exe」とすれば、左手用になります。一時的な切り替えならば、タスクトレーのアイコンを右クリックして「手の切り替え」からできます。

そしてその入力方法ですが、これも既存のソフトの方法を踏襲しています。左側、右側それぞれに何らかの点があるときは、そのまま左側を打った後、右側を打てば、一つの点字と認識されます。問題は片側に点が何もない場合です。そのときは空白を示すキーを打ちます。右手入力のときはセミコロンキー、左手入力のときはAキーがそれです。例えば、右手入力で「い」を入力したいときは、同時に「Jk」を打った後、「;」を打ちます。

当然ですが、スタートアップに登録すれば起動時に常駐させることもできます。ですが今回は自動化していませんので、必要ならば、手作業でスタートアップに入れてください。点字入力を一時的に無効にするときは、先ほど説明したモードを切り替えるALT+CTRL+変換キーで「無効」を選びます。

最後に、このソフトは無保証です。自己責任でご利用ください。通常、ここで公開するプログラムはソースも公開していますが、今回は非公開とします。

⇒ダウンロードbrlinput.zip ver.1.0.0.4(20140715)
(リンク先のDownloadボタンを押せばダウンロードできます。)
ハッシュ値(MD5)を確認したいときはこちら

(更新履歴)

2014/07/15
修正版(ver.1.0.0.4)に差し替えました。 
・英字のときsdfjklが正しく打てなくなっていたのを修正。

2014/07/13
修正版(ver.1.0.0.3)に差し替えました。 
・読点が打てなくなっていたので、修正(5、6の点、その後、スペース)。
・モード切替のショートカットをCtrl+Alt+変換キーに変更。
・修飾キー(Shift、Ctrl、Alt、Win)が押されているときは、点字入力とは見なさない。

2014/07/12
修正版(ver.1.0.0.2)に差し替えました。
・Shift+CapsLockでキャプスロックをオンにしたとき、本来は英字の大文字化の前置符号である6の点を、その間だけ小文字化の前置符号とみなすことにした。それに伴いその間の音声ガイドも「小文字」となるようにした。
・該当しない点字パターンを入力したとき、PC-TalkerもしくはNVDAで「エラー」と発音するようにした。
・入力する手の切り替えメニューにチェックが付くようにした。

2014/07/11
修正版(ver.1.0.0.1)に差し替えました。
・数値と外字引用の処理がおかしくなってしまったので、修正
・モードの切り替えをCtrl+Alt+Bに変更
・英大文字の入力ができるようにしました。英字入力が可能な時に、6の点だけを打つと、後続の一文字だけを大文字にします。連続して英大文字を使うときは、Shift+CapsLockです。

2014/07/07
修正版(ver.1.0.0.0)に差し替えました。
・問題だった「や」を修正しました。
・入力する手の選択をタスクトレイのメニューが選べるようにしました。
・点字キーとスペースでいくつかのコマンドを入力できるようにしました(スペースキーのタイミングに注意)。
入力できるのは一般的なソフトに近い以下の通りです。以下の点字を入力して手を離す前に「スペース」を追加して、手を離せば実行できます。ただし右手入力のときは右側入力のときにスペースキーです。左手入力のときは右側の入力のときにスペースの代わりに無変換キーです。なお01の列は1の点から順に押すときを1、押さないときを0で表しています。括弧内は一般的な機能です。
"100000" ... Enter
"010000" ... →
"110000" ... Ins
"000100" ... ←
"111100" ... PgDn
"000010" ... Del
"100010" ... Ctrl+End(文書末へ移動)
"010010" ... ↑
"101010" ... Tab
"011110" ... Ctrl+HOME(文書先頭へ移動)
"000001" ... Esc
"001001" ... ↓
"101001" ... PgUp
"111001" ... Home(行頭へ)
"111011" ... End(行末へ)
"111111" ... Alt+F4(ウィンドウを閉じる)



posted by takayan at 02:40 | Comment(22) | TrackBack(0) | 点字入力 | このブログの読者になる | 更新情報をチェックする