前頁次頁目次


情報ファイルの書式仕様

情報ファイルは各自で編集することができます。これらはいずれもいわゆる Shift-JIS コードで書かれ、改行ごとに情報を解析されます。

姫踊子草の七つの情報ファイル(自動生成される .ini ファイルを除く)は三種に大別されます。

これらのファイルは互いに書式が異なりますが、キーを表すための符号はほぼ共通しています。これはこの頁の下部に記しています。

配列作者提供データと作成中データ

いずれのデータファイルの場合でも、はじめから提供されているデータについては姫踊子草の設定からは編集ができないようになっています。

これは、姫踊子草の更新の際に上書きされる可能性を考慮した仕様です。

これらのファイルを元に皆さんが独自のデータを作成する場合は、設定画面からいったん『複製』操作を行い、新しく作ったファイルを選択することで『複製』ボタンが『編集』ボタンに変化します。

この機構は、データファイル内に DraftData=1 と記された行が存在するかどうかで実現されています。

ですからまったくのゼロから作る場合は、上記のような行をあらかじめ追加し、また、完成したデータはこの行を削除することにより、適切な動作を姫踊子草に求めることができます。

かな配列の特殊事項について

旧来型との互換

以前の姫踊子草では、特許関連の理由でかな配列ファイルだけは編集できないようになっていました。現在は利用できるようになっていますが、旧来の(編集できなかった)ファイルと区別するために、ファイルの先頭に visible=1 になっている行が存在します。この行はこの位置から動かしたり削除したりしないようにしてください。

TypeModeDefault= 行について

この行はタイプソフト対応機能のうち、ローマ字タイピングソフト対応の際に参照される情報です。設定の『練習』で変更可能だったものに対し、標準設定として認識されます。設定値は以下の和になります。

提供している主な配列に対するデータは以下のとおりです。

情報ファイルの解釈手順

各ファイルは次の手順で変換すべき内容を検索し、見つかった時点で変換します。当然ながら、設定で無効にされている情報は使用しません。

  1. (NumLock時の機種依存情報)
  2. NumLock時の配列情報
  3. かな配列情報
  4. 英字配列情報
  5. 機能キー配列情報
  6. (変換ファイルのうち適切な一方)

NumLock時の機種依存情報は前もって処理がなされ、続いて配列情報ファイルの検索をはじめます。いずれかの配列情報ファイルに変換内容があった時点で、その次は変換情報ファイルの内容が検索されます。

シフトキーが押下されていた場合はもう少し処理がややこしくなります。四つの配列情報ファイルに対してまずシフトキーつきの変換情報を検索し、どこかで変換されれば無論それが利用されます。一方、シフトキーつきの情報が見つからなかった場合はシフトキーなしの場合の情報で再検索するのですが、この再検索においてはかな配列情報ファイルを参照しません。

これは MS-IME 2000 において(他の IME で実装されているかどうかは未調査)「ローマ字でかな入力をしているときにシフトキーを押しながらキーを押すと英字が入力され、自動的に英数入力に切り替わる」という処理に対応するためのものです。ただし、シフトキーを使ってかな入力をするような配列では使えないのはもちろんですが、現在のところこの機能は IME の設定が「ローマ字かな入力」のときしか機能せず、いわゆる「JISかな入力」になっているときは無意味な動作をしてしまいます(該当アルファベットの元のキーに書いてあるかな文字(のシフト側)が入力される)。バグというよりは仕様の欠陥なのですが直せるかどうかわからんです。

配列ファイル

配列ファイルの目的

キー入力に対する第一段階の変換の内容をこれらのファイルで指定します。

厳密には必ずしも「第一段階」ではなく、 Numlock 時の機種依存情報が必要なときは先にそれが使用されます。

配列ファイルの書式

変換ファイル

変換ファイルの目的(1)

多くのかな配列変換ソフトでは、事前にかな漢字変換ソフトにおいてローマ字入力もしくはかな入力の一方にあらかじめ設定するようにという指示があります。

ですが、導入時にそういった切り替え操作を使用者に要求するのは極力避けたいということで、どちらであっても内部的に対応できるようにはじめから二つのファイルを用意することにしています。

また、実際には表に挙げたような直感的でないキー対応文字表記に対して、他の文字(主に漢字)一字を定義することで配列ファイルの記述をいくらかでもわかりやすくするためにも使用されています。

後者の目的では、二つのファイルで情報が重複してしまうのであまりきれいな仕様とは言えないのですが、基本的に編集・交換の必要の無いファイルであるためそのままになっています。

書式の説明でお分かりいただけると思いますが、原則としてローマ字変換を行う場合は小書きの文字もいちいち分割して出力されています(たとえば「しょ」の出力は syo ではなく silyo になる)。かなタイプソフト対応機能が有効のときに限り、内部的に出力の一部を操作して、拗音などを分割しないで出力できるようにしています。

変換ファイルの目的(2)

上記の様な目的で当初提供された変換ファイルですが、さらに版 1.0998 号で英語キーボードへの対応をこの変換ファイルで提供することにしました。

このために出力側だけでなく、入力側を日本語キーボード互換用に切り換える情報も含まれることになりました。

変換ファイルの書式

NumLock時の機種依存情報

目的

この情報は、NumLock が掛かっている状態に対して配列の変更を行う場合にのみ使用されます。

ノートパソコンでは、NumLock が掛かるとフルキーの一部のキー配列が変化してしまいます。このとき、配列ファイル(NumLock使用時の配列)に情報を集約してしまうと異なるパソコンでの同じファイルによる同じ変換を提供することができなくなってしまいます。

そこで NumLock に関しては配列ファイルと機種依存情報ファイルを分け、機種依存情報だけを変更すればよいようになっています。

書式

一行目にNumLockによって変化した結果打鍵できるようになる(つまり姫踊子草的には余計なお世話の)キーに対応した表記文字を並べます。

二行目に一行目に記述した順に対応するようにNumLockがかかっていない状態のキーに対応した表記文字を並べます。以上で完成です。

表記文字に H などの特殊なものを指定することはできません。

他の情報ファイルと異なり、この情報ファイルの記述は至って単純です。注釈の存在すら許していませんのでご注意ください。

文字表記とキーの対応表

一部のキーは出力側のみ有効であることがあります(CapsLock,NumLock,かな,半角/全角など)。また「英数」・「カタカナひらがな」・Windows キー・Alt・Application キーおよびノートパソコンにある Fn キーなどは指定の方法がありません。検出方法に於いて他のキーにない問題が生じるからです。

文字表記とキーの対応
文字表記キー備考
0〜9数字キー特にテンキーと示さない場合、全てフルキー側を意味する。以下同様。
a〜zアルファベット文字表記の大文字小文字は区別される。以下同様。
BBackSpace
CCapsLockShiftキーを一緒に押さなくてもロックがかかる。
DDelete
EEnter
F(別表参照)後続の文字と合わせて情報を構成。
Gカーソル左カーソルキーとは、いわゆる矢印キー。以下同じ。
HShiftキー強制オン次の1キーに対してのみ有効。
シフトキー無しの操作でシフトキー側の文字を入力するときに指定。
IInsert
Jカーソル右
Kかなシフトキーのような一時切り替えには FK を使う。
いわゆる「ひらがな・カタカナ」キーとは違うらしい。 FK も同様。
L親指左親指キー・補助キーの設定に依存
MShiftキー強制オフ次の1キーに対してのみ有効。
シフトキーを伴う操作でシフトなしの文字を入力するときに指定。
NEnd
OHome
PPage Up
QEsc
R親指右親指キー・補助キーの設定に依存
TTab
Uカーソル上
Vカーソル下
WPageDown
X無変換
Y変換
Z半角/全角今のところ変換ファイルで特定条件が成り立たないと入力としては使用不可
-^\@[;:],./各々その文字があるキーシフト入力については H を前置する。
_アンダースコアがあるキーアンダースコアを入れるときは H_ の形になる。
(半角空白)・$スペースキー変換ファイル内では $ で代用。
~直後の FX の効果を否定する主に英数配列データ内で文字としてでなくキーとして表現するために用いる。
その他(未使用)エラーになる。
文字表記とキーの対応(Fと後続の組み合わせによるもの)
文字表記キー備考
F0〜F9テンキーの数字キー
Fa〜FxF1〜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設定で右親指に指定されているキーコードを出力。
FTNumLock
FXかな配列から検索していたときは明示的に英字として処理する。ただし、直前で ~ が記されていれば無視される。
FZこの表の直後の注参照。
その他のF(未使用)エラーになる。

FZ に関する注意: この表記は『IME が有効で英数入力になっているときとそうでないときを区別する』ために設けています。 英数配列ファイルか機能キー配列ファイルにおいて有効で、たとえば FZ空FZ変 という表記で英数入力時は空白として、そうでないときは変換キーとして機能するようになります(空・変の定義は別途変換ファイル内で指定されているため)。

キーから文字表記への逆引き
キー文字表記備考
数字キー0〜9テンキー側はこの表の下部参照。
アルファベットa〜z文字表記の大文字小文字は区別される。要注意。
_(アンダースコア)があるキー_アンダースコアを入れるときは H_ の形になる。
BackSpaceB
CapsLockCShiftキーを一緒に押さなくてもロックがかかる。
DeleteD
EndN
EnterE
EscQ
F1〜F24Fa〜Fx
HomeO
InsertI
NumLockFT
PageDownW
Page UpP
Shiftキー強制オンH次の1キーに対してのみ有効。
シフトキー無しの操作でシフトキー側の文字を入力するときに指定。
Shiftキー強制オフM次の1キーに対してのみ有効。
シフトキーを伴う操作でシフトなしの文字を入力するときに指定。
TabT
親指右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 の指定がなかった場合は、もとの入力時におけるシフトキーの操作がそのまま継承されることになります。

前頁次頁目次