情報ファイルは各自で編集することができます。これらはいずれもいわゆる Shift-JIS コードで書かれ、改行ごとに情報を解析されます。
姫踊子草の七つの情報ファイル(自動生成される .ini ファイルを除く)は三種に大別されます。
これらのファイルは互いに書式が異なりますが、キーを表すための符号はほぼ共通しています。これはこの頁の下部に記しています。
いずれのデータファイルの場合でも、はじめから提供されているデータについては姫踊子草の設定からは編集ができないようになっています。
これは、姫踊子草の更新の際に上書きされる可能性を考慮した仕様です。
これらのファイルを元に皆さんが独自のデータを作成する場合は、設定画面からいったん『複製』操作を行い、新しく作ったファイルを選択することで『複製』ボタンが『編集』ボタンに変化します。
この機構は、データファイル内に DraftData=1 と記された行が存在するかどうかで実現されています。
ですからまったくのゼロから作る場合は、上記のような行をあらかじめ追加し、また、完成したデータはこの行を削除することにより、適切な動作を姫踊子草に求めることができます。
以前の姫踊子草では、特許関連の理由でかな配列ファイルだけは編集できないようになっていました。現在は利用できるようになっていますが、旧来の(編集できなかった)ファイルと区別するために、ファイルの先頭に visible=1 になっている行が存在します。この行はこの位置から動かしたり削除したりしないようにしてください。
この行はタイプソフト対応機能のうち、ローマ字タイピングソフト対応の際に参照される情報です。設定の『練習』で変更可能だったものに対し、標準設定として認識されます。設定値は以下の和になります。
提供している主な配列に対するデータは以下のとおりです。
各ファイルは次の手順で変換すべき内容を検索し、見つかった時点で変換します。当然ながら、設定で無効にされている情報は使用しません。
NumLock時の機種依存情報は前もって処理がなされ、続いて配列情報ファイルの検索をはじめます。いずれかの配列情報ファイルに変換内容があった時点で、その次は変換情報ファイルの内容が検索されます。
シフトキーが押下されていた場合はもう少し処理がややこしくなります。四つの配列情報ファイルに対してまずシフトキーつきの変換情報を検索し、どこかで変換されれば無論それが利用されます。一方、シフトキーつきの情報が見つからなかった場合はシフトキーなしの場合の情報で再検索するのですが、この再検索においてはかな配列情報ファイルを参照しません。
これは MS-IME 2000 において(他の IME で実装されているかどうかは未調査)「ローマ字でかな入力をしているときにシフトキーを押しながらキーを押すと英字が入力され、自動的に英数入力に切り替わる」という処理に対応するためのものです。ただし、シフトキーを使ってかな入力をするような配列では使えないのはもちろんですが、現在のところこの機能は IME の設定が「ローマ字かな入力」のときしか機能せず、いわゆる「JISかな入力」になっているときは無意味な動作をしてしまいます(該当アルファベットの元のキーに書いてあるかな文字(のシフト側)が入力される)。バグというよりは仕様の欠陥なのですが直せるかどうかわからんです。
キー入力に対する第一段階の変換の内容をこれらのファイルで指定します。
厳密には必ずしも「第一段階」ではなく、 Numlock 時の機種依存情報が必要なときは先にそれが使用されます。
SemiShift= 行で定義されたキーは、単体で入力した場合にはキーを離すまで何も出力されません。同時打鍵受付時間の設定は無視されることになります。
他のキーとの組み合わせで入力した場合は、通常定義行・簡易定義行で指定したとおりの変換を行います。
ただし、キーの押下順が逆になった場合は、組み合わせとして扱われません。他のキー単体→ SemiShift 単体として処理されます。
多くのかな配列変換ソフトでは、事前にかな漢字変換ソフトにおいてローマ字入力もしくはかな入力の一方にあらかじめ設定するようにという指示があります。
ですが、導入時にそういった切り替え操作を使用者に要求するのは極力避けたいということで、どちらであっても内部的に対応できるようにはじめから二つのファイルを用意することにしています。
また、実際には表に挙げたような直感的でないキー対応文字表記に対して、他の文字(主に漢字)一字を定義することで配列ファイルの記述をいくらかでもわかりやすくするためにも使用されています。
後者の目的では、二つのファイルで情報が重複してしまうのであまりきれいな仕様とは言えないのですが、基本的に編集・交換の必要の無いファイルであるためそのままになっています。
書式の説明でお分かりいただけると思いますが、原則としてローマ字変換を行う場合は小書きの文字もいちいち分割して出力されています(たとえば「しょ」の出力は syo ではなく silyo になる)。かなタイプソフト対応機能が有効のときに限り、内部的に出力の一部を操作して、拗音などを分割しないで出力できるようにしています。
上記の様な目的で当初提供された変換ファイルですが、さらに版 1.0998 号で英語キーボードへの対応をこの変換ファイルで提供することにしました。
このために出力側だけでなく、入力側を日本語キーボード互換用に切り換える情報も含まれることになりました。
この情報は、NumLock が掛かっている状態に対して配列の変更を行う場合にのみ使用されます。
ノートパソコンでは、NumLock が掛かるとフルキーの一部のキー配列が変化してしまいます。このとき、配列ファイル(NumLock使用時の配列)に情報を集約してしまうと異なるパソコンでの同じファイルによる同じ変換を提供することができなくなってしまいます。
そこで NumLock に関しては配列ファイルと機種依存情報ファイルを分け、機種依存情報だけを変更すればよいようになっています。
一行目にNumLockによって変化した結果打鍵できるようになる(つまり姫踊子草的には余計なお世話の)キーに対応した表記文字を並べます。
二行目に一行目に記述した順に対応するようにNumLockがかかっていない状態のキーに対応した表記文字を並べます。以上で完成です。
表記文字に H などの特殊なものを指定することはできません。
他の情報ファイルと異なり、この情報ファイルの記述は至って単純です。注釈の存在すら許していませんのでご注意ください。
一部のキーは出力側のみ有効であることがあります(CapsLock,NumLock,かな,半角/全角など)。また「英数」・「カタカナひらがな」・Windows キー・Alt・Application キーおよびノートパソコンにある Fn キーなどは指定の方法がありません。検出方法に於いて他のキーにない問題が生じるからです。
文字表記 | キー | 備考 |
---|---|---|
0〜9 | 数字キー | 特にテンキーと示さない場合、全てフルキー側を意味する。以下同様。 |
a〜z | アルファベット | 文字表記の大文字小文字は区別される。以下同様。 |
B | BackSpace | |
C | CapsLock | Shiftキーを一緒に押さなくてもロックがかかる。 |
D | Delete | |
E | Enter | |
F | (別表参照) | 後続の文字と合わせて情報を構成。 |
G | カーソル左 | カーソルキーとは、いわゆる矢印キー。以下同じ。 |
H | Shiftキー強制オン | 次の1キーに対してのみ有効。 シフトキー無しの操作でシフトキー側の文字を入力するときに指定。 |
I | Insert | |
J | カーソル右 | |
K | かな | シフトキーのような一時切り替えには FK を使う。 いわゆる「ひらがな・カタカナ」キーとは違うらしい。 FK も同様。 |
L | 親指左 | 親指キー・補助キーの設定に依存 |
M | Shiftキー強制オフ | 次の1キーに対してのみ有効。 シフトキーを伴う操作でシフトなしの文字を入力するときに指定。 |
N | End | |
O | Home | |
P | Page Up | |
Q | Esc | |
R | 親指右 | 親指キー・補助キーの設定に依存 |
T | Tab | |
U | カーソル上 | |
V | カーソル下 | |
W | PageDown | |
X | 無変換 | |
Y | 変換 | |
Z | 半角/全角 | 今のところ変換ファイルで特定条件が成り立たないと入力としては使用不可 |
-^\@[;:],./ | 各々その文字があるキー | シフト入力については H を前置する。 |
_ | アンダースコアがあるキー | アンダースコアを入れるときは H_ の形になる。 |
(半角空白)・$ | スペースキー | 変換ファイル内では $ で代用。 |
~ | 直後の FX の効果を否定する | 主に英数配列データ内で文字としてでなくキーとして表現するために用いる。 |
その他 | (未使用) | エラーになる。 |
文字表記 | キー | 備考 |
---|---|---|
F0〜F9 | テンキーの数字キー | |
Fa〜Fx | F1〜F24 | |
F^ | テンキーの* | |
F@ | テンキーの+ | |
F, | (VK_SEPARATOR) | IMEが使用されているときだけカンマとして働いているらしい。 |
F- | テンキーの− | |
F. | テンキーの. | |
F/ | テンキーの/ | |
F; | 後続1キーの単打入力に変換 | 配列ファイル内でのみ有効。 |
F;H | 後続1キーのシフトキー付き入力に変換 | 配列ファイル内でのみ有効。 |
FD | 変換候補選択中であればそれを閉じる。 | |
FI | かな漢字変換ソフトの有効/無効を切り替える(IME のオンオフ)。 | |
FK | かな | 強制シフト同様の一時切り替えに使う。通常は K のみ。 HFK 、FKH のいずれの形でもシフトと一時的かな切り替えは同時に有効になる。 |
FL | 設定で左親指に指定されているキーコードを出力。 | |
FQ | 全機能一時停止状態の発動および解除。 | 同時押下状態に割り当てると解除時に先に入力した方がタイプされてしまうのは仕様。 |
FR | 設定で右親指に指定されているキーコードを出力。 | |
FT | NumLock | |
FX | かな配列から検索していたときは明示的に英字として処理する。 | ただし、直前で ~ が記されていれば無視される。 |
FZ | この表の直後の注参照。 | |
その他のF | (未使用) | エラーになる。 |
FZ に関する注意: この表記は『IME が有効で英数入力になっているときとそうでないときを区別する』ために設けています。 英数配列ファイルか機能キー配列ファイルにおいて有効で、たとえば FZ空FZ変 という表記で英数入力時は空白として、そうでないときは変換キーとして機能するようになります(空・変の定義は別途変換ファイル内で指定されているため)。
キー | 文字表記 | 備考 |
---|---|---|
数字キー | 0〜9 | テンキー側はこの表の下部参照。 |
アルファベット | a〜z | 文字表記の大文字小文字は区別される。要注意。 |
_(アンダースコア)があるキー | _ | アンダースコアを入れるときは H_ の形になる。 |
BackSpace | B | |
CapsLock | C | Shiftキーを一緒に押さなくてもロックがかかる。 |
Delete | D | |
End | N | |
Enter | E | |
Esc | Q | |
F1〜F24 | Fa〜Fx | |
Home | O | |
Insert | I | |
NumLock | FT | |
PageDown | W | |
Page Up | P | |
Shiftキー強制オン | H | 次の1キーに対してのみ有効。 シフトキー無しの操作でシフトキー側の文字を入力するときに指定。 |
Shiftキー強制オフ | M | 次の1キーに対してのみ有効。 シフトキーを伴う操作でシフトなしの文字を入力するときに指定。 |
Tab | T | |
親指右 | R | 親指キー・補助キーの設定に依存 |
親指左 | L | 親指キー・補助キーの設定に依存 |
カーソル上 | U | いわゆる矢印キー。以下同じ。 |
カーソル下 | V | |
カーソル右 | J | |
カーソル左 | G | |
半角/全角 | Z | |
かな | K | いわゆる「ひらがな・カタカナ」キーとは違うらしい。 FK も同様。 |
FK | 強制シフト同様の一時切り替えに使う。 HFK 、FKH のいずれの形でもシフトと一時的かな切り替えは同時に有効になる。 | |
変換 | Y | |
無変換 | X | |
-^\@[;:],./ | (それぞれそのまま記述) | シフト入力については H を前置する。 |
テンキーの数字キー | F0〜F9 | |
テンキーの* | F^ | |
テンキーの+ | F@ | |
テンキーの− | F- | |
テンキーの. | F. | |
テンキーの/ | F/ | |
スペースキー | (半角空白)・$ | 変換ファイル内では $ で代用。 |
その他 | (現時点では指定不可能) |
シフトキーの指定は同時打鍵の形で指定するような書式になっていますが、実際には通常のシフトキー操作で入力することになります。書式上の効果もやや特殊の扱いで、入力キーに対しては特に注意することはないですが、変換後の情報は必ず H や M の指定を先に行ってください。
H や M の指定がなかった場合は、もとの入力時におけるシフトキーの操作がそのまま継承されることになります。