かすみでむぱ テーマファイル仕様書 ver. 1.1

かすみでむぱ テーマファイル 仕様書

このドキュメントについて

目的

このドキュメントはかすむでむぱのテーマファイルに関する仕様書です。
テーマファイルの改変及び新規作成をする場合に使うと便利かもですよ。

記述形式

べた書きのHTML+CSSで書かれています。
WebKitもしくはKHTML、あるいはGecko系のブラウザで閲覧下さい
IEはどうなるか知らんです

おことわり

このドキュメントはかすみでむぱテーマファイルv1.1(かすみでむぱv2.1相当)について書かれています。
これは今現在の実装であり、今後の実装と異なる場合があります。ご注意ください。

基本構造

images かすむでむぱテーマファイル(以下、テーマ)は一つのフォルダに収められた
複数のファイルによってなりたっています。
これらは一つの主設定ファイル(theme.tsbff)とそれ以外のリソース群に分類できます。
今後、副設定ファイルを規定するつもりですが、まだ何も決まってません。

フォルダパッケージ

テーマそのものとなるフォルダです。
(図では「default」フォルダ)
将来的にパッケージ化される予定とか。
ファイル名は自由ですが、ユニークなものにしてください。

主設定ファイル (theme.tsbff)

tsbff形式(後述)の設定ファイルです。
テーマについての基本情報(名称、作成者等)と
テーマ設定のほとんどをこれに記述します。
(一部の設定は副設定として別ファイルに記述される予定です)
ファイル名は常に「theme.tsbff」で固定です。

副設定ファイル

主設定ファイルを補助する、付加的な設定を記述するファイルです。
現段階では存在しません。

画像ファイル

テーマに利用される画像ファイルたちです。
ファイル形式は(Cocoaが読めるもの限定で)特に規定されていませんが、
透過の必要性からPNGもしくはTIFFがオススメです。
(PSDとかでもいいけどファイルサイズが大きくなっちゃうので)

効果音ファイル

かすみでむぱv2.1(テーマファイルv1.1)からサポートされました
詳しくは効果音の章をお読みください

tsbff

tsbffファイル形式はテキストベースの記述形式で
HTMLなどの『めーくあっぷらんげーじ』に近いものです。
ヘッダとデータ部を持ってたりいろいろするのですが、
かすむでむぱではそれらの機能の一部のみ利用するため、あまり意識する必要はありません。
ただ、拡張子が変で、少しだけ約束事のついた、テキストファイルだと思っていただければ。

Header

tsbffではファイルの頭にヘッダを付加しなくてはいけません。
主設定ファイルでは以下の物を利用します。

これは一行めが、かすみでむぱ用のtsbffファイルであることを示し、
二行めが、かすみでむぱテーマファイル用のフォーマットであることを示しています。
まさに最低限って感じのヘッダです。これつけないと読んでくれませんので注意。

Data

ヘッダの後に続くのはデータです。
ヘッダのあと一行空行をあけ、設定パラメータを書いていきます。
それらは行単位で処理され、空行は無視されます。
また、行頭に「#」のついた行もコメントとして無視されます。

設定パラメータ

設定パラメータは『「宣言子」+半角スペース+「値」』の形で記述します。
宣言子の一覧は後述しますが、これらは基本的にはその役割の英訳の単語となっています。
宣言子は半角英数からなる文字列であり、スペースを含みません。
また、同じ宣言子が重複して記述されることは許されません。
(複数出現した時はそのいずれかが利用されます。どれが選ばれるかは実実装によります)
大文字小文字は同一視されるので注意してください。

宣言子

現段階で規定されている宣言子の一覧です。
ここでは「宣言子 [引数]」のように記述していきます

一般

name [string]
テーマの名前、必須
description [string]
テーマの説明、必須
creater [string]
作成者名、必須
createrSite [url]
作成者のWebSiteのアドレス
「http://www.hoge.com/」の様に記述してください
createrMail [mail]
作成者のメールアドレス
「hoge@hoge.com」の様に記述してください。
build [date]
作成年月日(「HHMMDD」)、必須
例えば2005年1月4日なら「050104」の様に記述してください。

共通画像

画像、セルの双方に共通/どちらにも含まれない画像に関する宣言子一覧です。
screenshotImage [file]
スクリーンショットの画像ファイル
questionImage [file]
はてな(?)なイメージ。用途未定。
errorImage [file]
エラーかつ他に適当なイメージが存在しない時に利用。
animate [?]
アニメーション。未実装。

画像パネル

画像パネルに関する宣言子の一覧です。
defPanelSize [size]
画像パネルの初期サイズ
resultN(Nは整数) [file]
「result0」、「result1」、「result2」等でそれぞれ
発見数1本、発見数2本、発見数3本に対応する画像ファイル。
Nの上限はintの範囲
イメージ的には「ぜろ、いち、にー、さん、たくさん」で。
resultMany [file]
resultNで設定されてない本数の場合に表示される画像ファイル、必須
deflaultImage [file]
発見数を示していない画像ファイル、必須
failedImage [file]
スキャン失敗した場合に表示される画像ファイル、必須
poweroffImage [file]
AirMacが切の場合に表示される画像ファイル、必須
notAvailableImage [file]
AirMacが存在しない場合に表示される画像ファイル、必須

セルパネル

セルパネルに関する宣言子の一覧です。
defCellSize [size]
セルパネルの初期サイズ
defCellImage [file]
強度を示していない画像ファイル、必須
cellSysImage [file]
セルパネルの基本セルの画像、必須
cellErrorImage [file]
電波の強度が分からない場合等にstatusNの代わりに利用
statusN(Nは0〜10の整数) [file]
電波の強度に対応する画像ファイル。
Nは強度の十分率の小数点以下切り捨て。
例えば、23% => 2.3 => 2 => status2
0〜9% status0
10〜19% status1
となる、11個全部必須
signalBarColor [color]
信号強度のバーの色、未実装
noiseBarColor [color]
信号ノイスのバーの色、未実装

バージョンチェック、未実装

versionCheck [bool]
バージョンチェックの有効無効、未実装
versionCheckMethod [vc_method]
バージョンチェックに用いる手法、未実装
versionCheckAddress [url]
バージョンチェックに用いるアドレス、未実装
versionCheckServerと排他利用
versionCheckServer [url]
バージョンチェックに用いるサーバ、未実装
versionCheckAddressと排他利用
versionCheckCode [string]
バージョンチェックに用いる識別子、未実装

[string] 文字列

改行文字以外は含んで大丈夫らしい文字列です。

[file] ファイル

拡張子を含めた相対パスで記述します。

[bool] 有効/無効、はい/いいえ

enable
有効
disable
無効
yes
はい
no
いいえ

[size] サイズ

『「幅」,「高さ」』
例:「240,320」は幅240px、高さ320px

[date] 日付

「HHMMDD」

[url] アドレス

「http://www.hoge.com/」

[mail] メールアドレス

「hoge@hoge.com」

[vc_method] VersionCheckMethod

tsbvc
TSB VersionCheck

[color] 色

未定

更新確認

TSBVC形式の更新確認を利用することができます。
まだ実装してませんけど。

単独ファイル形式

TSBVC情報ファイルをWebサーバ上に設置するだけで
簡単に更新確認を利用できます。
これはTSBVCの一部機能を利用したものです。
versionCheckにenableを
versionCheckMethodにtsbvcを指定し
versionCheckAddressに設置したTSBVC情報ファイルのURLを記述します。
また、versionCheckCodeにユニークな識別コードを指定してください。
(これは照合に使われます)
TSBVC情報ファイル例

通常形式

TSBVCの本来の形式に基づいた利用で、いくつかの機能が追加利用可能です。
サーバ上にTSBVCディレクトリを形成した上で
versionCheckServerにサーバ上のTSBVCのディレクトリを記述してください。
詳しくはTSBVCのドキュメントを参照してください。

その他

わかりにくい

実際のファイルを見て理解してください。
それでも分からなかったら
TSBps.comのサポート掲示板等に書き込むか
メールで問い合わせてください

ここに書いてあるのと実際の挙動が違ってる

実装変更したのにドキュメントに書き忘れてたり
ドキュメントに書いたのに実装し忘れていたりすることがあるので
この場合はどちらが正しいとは言えなかったりします、ごめんなさい。
気になった場合はサポート掲示板メールで問い合わせてください。
修正してどちらかに統一します。

公開

適切なreadmeファイルを添え、zipなどでアーカイビングして公開してください。
(別にdmgとかでもいいけど

効果音

v2.1から効果音が利用可能になりました。
宣言すると規定されたタイミングで効果音が流れるようになります。
うまく使えば有用ですが、失敗するとうざさ爆発なので、作成した後は必ず一通りの動作確認をしてください。
効果音といっても音声データを利用する事も出来るので、いろいろ遊んでください。
また、標準のビープ音(システム設定のサウンドパネルに出ているもの)も利用可能です。

ファイル形式

利用可能なファイル形式はCocoaで使えるもの、つまり実質QuickTimeで使えるものとなります。
MIDIでもAIFFでもm4aでもmp3でも大丈夫なハズですが、無難にm4aかmp3がオススメです。
あまり長くすると鬱陶しいので短め(〜数秒)がいいとおもいます。

タイミング

様々なタイミングを間隔等を考えずに設定してあるので
全てのタイミングに効果音を指定するのではなく
いくつかを選んで指定するといいと思います。

宣言子-スキャン編

スキャンに関する効果音(scan effect sound)に分類されます
SNDstartscan [sound]
スキャン開始のタイミング
SNDanarysing [sound]
分析開始のタイミング
分析にかかる時間が短いため、あんま使わない方がいい
SNDfoundN (Nは整数) [sound]
スキャン完了のタイミング
N個の霞電波が見つかったときです
SNDfoundMany [sound]
スキャン完了のタイミング
foundNがなかった場合に使われます
resultN/resutManyと似た感じです
SNDscanfail [sound]
スキャン完了のタイミング
スキャンに失敗のした場合に使われます

宣言子-接続編

スキャンに関する効果音(scan effect sound)に分類されます
SNDstartjoin [sound]
接続処理開始タイミング
SNDjoinwaitinput [sound]
接続先&パスワード入力要求のタイミング
接続先未確定時
SNDjoinwaitpass [sound]
パスワード入力要求のタイミング
接続先決定済み時
SNDjoinfine [sound]
接続処理完了のタイミング
接続に成功した場合に使われます
SNDjoinfail [sound]
接続処理完了のタイミング
接続に失敗した場合に使われます

宣言子-一般編

一般の効果音(general effect sound)に分類されます
SNDwakeUp [sound]
アプリケーション起動直後
SNDimageGoingVisible [sound]
画像パネルを開くタイミング
SNDimageGoingInvisible [sound]
画像パネルを閉じるタイミング
SNDimageZoom [sound]
画像パネルを拡大するタイミング
SNDimageUnzoom [sound]
画像パネルを縮小するタイミング
SNDcellToggleVisible [sound]
セルパネルを開くタイミング
SNDcellToggleInvisible [sound]
セルパネルを閉じるタイミング
SNDcellChangeExtendTo [sound]
セルの伸張方向を変更するタイミング
(今の実装だと変更の適用の為にスキャンするのでそれとかぶっちゃうかも)
SNDpowerOn [sound]
AirMacの電源を入りにしたタイミング
SNDpowerOff [sound]
AirMacの電源を切りにしたタイミング
SNDthemeApplied [sound]
テーマが適用されたタイミング
themeAppliedの直後になります
SNDthemeUnapplied [sound]
テーマが適用解除されたタイミング
themeAppliedの直前になります
SNDopenCreaterSite [sound]
作者サイトへのリンクを開くタイミング
SNDsendCreaterMail [sound]
作者宛メールを開くタイミング
SNDversionCheck [sound]
バージョンチェックのタイミング

後書き

最終更新っぽい日:050606
書いた人:とうた

TSB program system
http://tsbps.com/
mailto:support@tsbps.com

履歴

2005/6/6 (KDv2.1/KTv1.1) KDv2.1のサウンド対応にあわせKTもv1.1へ
2005/6/5 (KDv2.0/KTv1.0) KDv2.0にあわせて小修正
2005/6/4 (KDv2.0pr/KTv1.0) 初出し
(KD=かすみでむぱ、KT=かすみでんぱテーマファイル)