設定データをユーザの目の触れるようにしている以上、ぜひやっておきたいと思っていたのが、そのフォーマットの説明。今更ですが、ここで説明します。
設定データテキストは以下の行で構成されます:
- ヘッダ
記号パネルの設定データであることを示す文字列です。
”##SymbolsPanel"とのみ書かれた行で、空白が入っていたり、後ろに何かが書かれていた場合はヘッダと扱いません。
バージョン0.9bおよびそれ以前の場合、ヘッダで始まるテキストのみを設定データと認識し、そうでなければ設定データとみなしません。
バージョン0.9cからは、ヘッダ以前のテキストは読み飛ばし、ヘッダ以降を設定データとして扱います。もちろんヘッダが存在しなければ設定データとみなしません。
- フッタ
バージョン0.9c以降で使用可能です。
設定データの終わりを示します。
”##end"で始まる行で、"##end of data"などでもフッタとして扱われます。
フッタが現れた時点で読み込みは終了し、これ以降のテキストは無視されます。
- ページ
ページの開始です。
"#:"で始まり、まずページ名、以降ページタグを空白で区切って書きます。
ページ名は、画面上に表示されるページの名前、ページタグはページの別名です。Simeji等から呼ばれる際、渡された文字列がページ名・ページタグと一致、または先頭部分である場合、そのページを表示した状態で画面が開きます。
例えば、初期設定の場合、Simejiで「かな」と入力してから記号パネルを呼び出した場合、「かな」のページが表示された状態で開きます。「suu」と入力してからの場合は、「suugaku」というタグが指定されている「数学記号」が表示されます(「suuji」のタグを持つ「数字」もありますが、「数学記号」ページのほうが先に設定されているため、そちらが見つかった時点で決定されます)。
- 各種指示
バージョン0.9b以降で使用可能です。
"#!"で始まる行は、読み込み処理に対して各種の指示を表します。
今のところ、以後設定されるページに対する指示に使用されます(これらは現在設定中のページに対しては機能しません)。
- #!create
同名のページがあったとしても、別ページとして新しく作られます。
- #!update
同名のページがあった場合、そのページを上書きします(それまでの設定はすべて削除されます)。
- #!append
同名のページがあった場合、そのページ内に追加して設定します。
- #!merge
同名のページがあった場合、そのページ内に追加して設定します。ただし、同名のキーの設定については追加されません。
- #!create
- コメント
"#"で始まる行は(他の機能を持たない限り)コメントとして無視されます。
将来的に何らかの機能追加を行うかもしれませんので、"#"の直後からコメントを書かず、まず空白文字を入れるようにしてください。
なお、空行(何も書かずに改行だけする)はキー設定として使われてしまいます。必ず"#"を使用してください。
- キー設定
それ以外の行はすべてキー設定情報です。
最初の空白までがキーとして表示・入力される文字、それ以降はキーの説明です。説明はキー選択時に画面下のエリアに表示される文字列で、特に処理上の意味はありません。
キーの内容が「最初の空白まで」ですので、それが一文字でなくてもかまいません。顔文字などのアスキーアートや定型文を設定しておくような使い方も可能です。もちろん、デフォルトではキーの大きさが一文字分しかありませんので表示はうまくできません。「一行あたりの項目数を1にする」といったような設定が必要でしょう(なお、現時点では「個別にキーの大きさを設定」できるようにする予定はありません)。
逆に空白が行の先頭にある場合、つまり「最初の空白まで」に文字列がない場合、「空き地」が設定されます。場所だけは確保されますが、キー自体は表示されず、押しても何も起こりません(画面下のエリアへの説明表示は行われます)。空行の場合もこの扱いになります。
キーの設定では、以下のフォーマットを使用できます:- プレーンテキスト
素の文字列を直接指定する、もっとも手っ取り早くわかりやすい方法です。
- U+xxxx
Unicodeのコードポイントで指定します。初期設定ではすべてこの方法で指定しています(後から確認する時に、半角と全角の違いとか、区別しにくい文字を識別するためで、単に開発上の都合によるものです)。xxxxは16進数4〜6桁です。設定できるのは一文字だけです。
- JIS:xxxx
JISコード(ISO-2022-JP)で指定します。xxxxは16進数4桁です。設定できるのは一文字だけです。
- SJIS:xxxx
Shift-JISコードで指定しています(ちなみにAndroidではShift-JISといったらCP932を指すようです)。xxxxは16進数4桁です。設定できるのは一文字だけです。
- :text
バージョン0.9c以降で使用可能です。
textはURIエンコードされたものとして扱われます。例えば":%23"とすれば"#"を設定することができますし、同様に":m(_%20_)m"というようにして空白文字を含めることもできます。
- :charset:text
バージョン0.9c以降で使用可能です。
上記に加え、textをcharsetの文字コードとして扱います。エスケープシーケンスが必要なcharsetではそれも記述する必要があります。例えば、「友」という文字をJISコードで指定するには「:ISO-2022-JP:%1b%24%42%4d%27%1b%28%42」のようにする必要があります。
- プレーンテキスト
あまり覚えてなくても、自分のよく使う記号を一つのページにまとめてしまう、というくらいなら簡単にできると思います。
0 件のコメント:
コメントを投稿