Edited at

キーボード配列エミュレーションソフトウェア 紅皿


1. 始めに


1.1.何をするものなのか

 Benizaraは、Windows環境に接続されたJISキーボードで親指シフト (NICOLA配列) による入力を可能にするエミュレーションソフトウェアです。Windows7のMS-IMEとATOK2011、およびWindows10のMS-IMEで動作を確認しています。なお、Benizaraは、設定ファイルを読み込ませることにより、親指シフトに限らず、任意にキーボード配列のエミュレーションが可能です。

 Benizara(紅皿)の名前は、太田道灌の山吹伝説に由来します。


1.2.特徴

・Windows10のストアアプリや、Microsoft Edge上でも親指シフト入力が可能です。

・やまぶきと同様に12面のシフトモードを実現し、やまぶきの配列定義ファイルをある程度まで読込可能としました。

・やまぶきの打鍵ロジックを参考に実装し、かつ連続シフトモードをサポートしています。よって、やまぶき(やまぶきR)からの移行は容易とおもいます。

・Benizaraは、AutoHotKeyのスクリプトを実行ファイル化したものです。ユーザモードでキーフックするタイプのエミュレータなので、導入も停止も簡単です。USBメモリで持ち歩くこともできます。

・親指の友Mk-2 キーボードドライバ V2.0L23に実装された「零遅延モード」を、当該ソフトにも実装しました。零遅延モードとは、親指シフト時の表示遅延をゼロにして、高速打鍵を可能とするモードです。

・単独打鍵の有効・無効の切り替え機能と、キーリピートの有無の切り替えを実装しました(ver.0.1.3.2)。


1.3.未だ実装していないこと

・機能キーの切り替え、単独打鍵の有効・無効の切り替え、キーリピートの有無の切り替えは未だ実装していません。


1.4.入力速度ベンチマーク

・落語「じゅげむ」の名前を入力するベンチマークで評価しました。具体的にいうと「じゅげむじゅげむごこうのすりきれ かいじゃりすいぎょのすいぎょうまつうんらいまつふうらいまつ くうねるところにすむところ やぶらこうじのぶらこうじ ぱいぽぱいぽぱいぽのしゅーりんがん しゅーりんがんのぐーりんたい ぐーりんたいのぽんぽこぴーのぽんぽこなーのちょうきゅうめいのちょうすけ」を仮名入力する時間を計測するものです。このベンチマークは、今井士郎さんのブログを参考にしました。

・自分が「じゅげむベンチマーク」を実行した際の親指シフト入力の最速は45秒、平均は55秒でした。なお、ローマ字入力の最速は75秒、平均は80秒でした。


1.5.リリースURL

実行ファイル版とインストーラ版は、以下に開示しています。

https://osdn.net/projects/benizara/releases/

GitHubに全ソースコードを開示しています。お好きに触ってみてください。

https://github.com/k-ayaki/benizara

動作仕様書はこちらです。

https://qiita.com/kenichiro_ayaki/items/9a39a5c7622c23e3ce3b


2. 使い方


2.1.取り扱い種別

 Benizara(紅皿)はフリーソフトウエアであり、IME.ahk, Path.ahkを除く各ソースコードはMITライセンスの下で再利用可能です

 なお、Benizaraのソースコードのうち、IME.ahk, Path.ahk は、eamatさまが作成されたライブラリです。


2.2.動作環境

 Windows7(32bit)とWindows10(64bit)で動作確認していますが、NT系のWindowsならば、どの環境でも動作する筈です。

 IMEは、Atok11とMS-IMEで動作確認しています。


2.3.インストール方法

(1)vectorまたはOSDNから benizara をダウンロードして所望のパスに解凍してください。

OSDNのURL https://osdn.net/projects/benizara/releases/

(2)インストーラ版では、解凍後にsetup.exe を実行してください。インストールか完了すると、お使いのJIS109キーボードが親指シフト (NICOLA配列) に切り替わります。

 なお、InstallShield LE版を用いて作成しています。

(3)EXEファイル版では、解凍後にbenizara.exeを実行してください。お使いのJIS109キーボードが親指シフト (NICOLA配列) に切り替わります。


3. 紅皿設定の説明

タスクトレイの紅皿アイコンを右クリックして、紅皿設定をクリックすると以下の設定ダイアログが表示されます。各タブの下のOKボタンをクリックすると変更が反映され、キャンセルボタンをクリックすると変更が破棄されます。


3.1.配列タブ

配列定義ファイルを表示し、かつ切り替える機能を備えたタブです。

その下側には、配列のモードと、そのときのモード名とキー配列が表示されています。

「…」ボタンをクリックすると、ファイル選択ダイアログが開き、配列定義ファイルを選択可能となります。

配列のモードのコンボボックスを選択することで、キー配列の表示が選択したモードに切り替わります。

配列b.png


3.2.親指シフトタブ

親指シフトに関する設定画面です。

・親指シフトキーのコンボボックスは、変換-無変換と無変換-空白が選択可能です。

 無変換-変換を選択した場合、無変換キーが左親指キー、変換キーが右親指キーです。

 無変換-空白を選択した場合、無変換キーが左親指キー、空白キーが右親指キーです。

 空白-変換を選択した場合、空白キーが左親指キー、変換キーが右親指キーです(ver.0.1.3.2より)。

・連続シフトのチェックポックスは、親指シフトキーの押下中に、連続してシフトモードの文字を入力するためのものです。推奨設定はオンです。

・零遅延モードのチェックポックスは、キー押下と共に遅延無く文字を出力する「零遅延モード」をオンするものであり、推奨設定はオンです。この零遅延モードは、親指の友Mk-2キーボードドライバ(聖人さま作)の機能を参考としました。

・単独打鍵の有効/無効の切り替えは、ver.0.1.3.2 で実装しました。

・キーリピートのチェックボックスは、有効と無効を切り替えるものです。ver.0.1.3.2 で実装しました。

・文字と親指シフトの同時打鍵の割合は、20~80[%]の間で可変です。親指シフトキーの押下に対して文字キーの押下が重なったとき、この割合を満たしたならば同時打鍵となります。推奨値は40~60%です。

・文字と親指シフトの同時打鍵の判定時間は、10~400[mSEC]の間で可変です。NICOLA規格では、50~200[mSEC]が推奨されています。

推奨値は、連続シフトの場合で50[mSEC]、連続シフトしない場合で150[mSEC]です。

親指シフトb2.png


3.3.管理者権限タブ(ver.0.1.3.0より)

・紅皿が管理者権限と通常権限のいずれで動作しているかを示すタブです。

・通常権限の場合には、「管理者権限に切替」ボタンか表示されています。この「管理者権限に切替」ボタンをクリックすると、管理者権限に切り替わります。これにより管理者権限で動作しているアプリケーション上でも親指シフト入力が可能になります。

管理者権限タブ.png

管理者権限タブ_管理者権限.png


3.4.紅皿についてタブ

バージョン情報や紅皿の概要が書かれたタブです。


3.5.ログの説明 (ver.0.1.3.2より)

 タスクトレイの紅皿アイコンを右クリックして、ログをクリックすると紅皿ログが表示されます。表示内容は左から、時間間隔(ミリ秒単位)、入力キーとそのdown/up、状態、アプリケーションへの送信キー内容です。

2019-03-17 (2).png

※「じゅげむごこうのすりきれ」とタイプしているときのログです。


4. キー配列(デフォルト)

 紅皿は、やまぶきと同様に、ローマ字モード6面と、英数モード6面の全12面のキーボードレイアウトを持っています。ローマ字モードは、IMEをローマ字入力のひらがな・全角カタカナ・半角カタカナに設定したときのモードであり、英数モードは、IMEを全角英数・半角英数・直接入力に設定したときのモードです。


4.1.ローマ字モード

ローマ字シフト無し

ローマ字シフト無しs.png

ローマ字右親指シフト

ローマ字右親指シフトs.png



ローマ字左親指シフト

ローマ字左親指シフトs.png

ローマ字小指シフト・ローマ字小指右親指シフト・ローマ字小指左親指シフト

英数小指シフトsのコピー.png


4.2.英数モード

英数シフト無し・英数右親指シフト・英数左親指シフト

英数シフト無しs.png

英数小指シフト・英数小指右親指シフト・英数小指左親指シフト

英数小指シフトsのコピー.png

 上記のレイアウトは、紅皿が読み込むキー配列ファイルによって変更することができます。


5. アンインストール方法


5.1.インストーラ版のアンインストール

タスクトレイの紅皿アイコンを右クリックして、Exitをクリックしてbenizaraを停止させます。更にコントロールパネルのプログラムのアンインストールから、benizaraを選択してクリックしてください。


5.2.実行ファイル版のアンインストール

タスクトレイの紅皿アイコンを右クリックして、Exitをクリックしてbenizaraを停止させます。そして、benizara.exe が解凍されたフォルダを削除してください。なお、レジストリは使っていません。


6. 配布ファイルとその構成

Vector またはOSDNにアップロードした setup.exe を実行すると、以下がインストールされます。

Benizara.exe ・・・ 紅皿の実行ファイルです。

Benizara.ini・・・紅皿の設定情報ファイルです。

NICOLA配列.bnz・・・NICOLA配列のファイルです。

Dvorak配列.bnz・・・Dvorak配列のファイルです。

NICOLA配列_仮名直接入力.bnz・・・タイプウェルで仮名文字を入力する際の配列です。

以上