uLilithSuite独自のキーコマンドメモ

はじめに

uLilithSuiteプラグイン作者のお一人で、ver1.05からabeshi氏が機能追加や強化、バグ取りなどを担っていましたが、
ver1.21のリードミーで、「今後はSettings.txtを更新せず、Settings.htmlを更新していきます」と書かれていました。
しかし、Settings.htmlのabeshi氏のサイトは2019年9月現在、閉鎖されていて具体的なコマンドキーの説明などが見られません。
よってSettings.txtの更新内容 (2014/4/27) ver1.21までのuLilith Suite独自のキーの解説しかありません。
簡単にReadme.txtの更新内容からver1.22以降の追加キーの説明が書かれていますが、詳細ではありません。

というわけで下記からver1.22以降追加されたキーをメインに記載していますが、歌詞関連だけです。一応ver1.21以前のキーも一部
書いています。
…ぶっちゃけuLilith Suiteは歌詞表示メインで、それでも一部の機能ぐらいしか使えていません。アルバムジャケットは殆どデフォ設
定で使っているのでリフレクションとか変形とか全く分かっていません。

●uLilith Suite独自のキー

[Lyrics] フィールド関連

・Lyrics
　　SubCategory キーの値
　　CategoryはPluginFrameBufferを指定

・SizePixelFlag キー
　　コマンドキー
　　パラメータはTrueのみ
　　フォントサイズの単位をpixelにするかどうか判別する為のキー
　　デフォルトはpoint指定

・TextColor1　　※ver1.29から追加
　　コマンドキー
　　パラメータ　RGB(24bitカラー)を6桁の16進数で指定。フェイス側でフォントの色を指定する。

・TextColor2　　※ver1.29から追加
　　コマンドキー
　　パラメータ　RGB(24bitカラー)を6桁の16進数で指定。フェイス側でフォントの色を指定する。

・TextColor3　　※ver1.29から追加
　　コマンドキー
　　パラメータ　RGB(24bitカラー)を6桁の16進数で指定。フェイス側でフォントの色を指定する。

・MTextColor1　　※ver1.34から追加
　　コマンドキー
　　パラメータ　RGB(24bitカラー)を6桁の16進数で指定。フェイス側で多段ワイプの色指定。

・MTextColor2　　※ver1.34から追加
　　コマンドキー
　　パラメータ　RGB(24bitカラー)を6桁の16進数で指定。フェイス側で多段ワイプの色指定。

・MTextColor3　　※ver1.34から追加
　　コマンドキー
　　パラメータ　RGB(24bitカラー)を6桁の16進数で指定。フェイス側で多段ワイプの色指定。

・NotAntiAliasFlag = True
　　コマンドキー
　　パラメータ　TrueまたはFalse
　　True：歌詞表示のフォントにアンチエイリアスが掛からなくなる。
　　Falseまたはキー省略：アンチエイリアスが掛かる。

・Align
　　表示位置を調整するキー。(PluginFrameBufferには対応していないキーなので独自キー扱い。)
　　全てのフィールドに対応。値は通常のAlignキーに準拠。
　　LyricsのデフォルトはTopLeft。
　　AlbumJacketとAlbumJacketReflectionのデフォルトはCenterですがフィットの優先度の方が高いので注意。

・PrecedeLineCount　　※ver1.32から追加
　　コマンドキー
　　パラメータ　0を含む自然数（整数）で、フェイス側で先読み行数を指定する。

・uLS_Command
・uLS_InitirizeCommand
・uLS_PreCommand
　　特定のタイミングでフェイスコマンドを実行するキー。
　　AlbumJacketとLyrics対応コマンド。
　　パラメータ　値はカンマ区切りでCommand,呼び出し元アイテム名(省略可),CommandParamType,CommandParam,CommandTargetWindow(省略可),CommandTargetPlugin(省略可)
の値を順に指定。各キーでコマンド2つ分の値12個を使う。

※例はuLilithSuite同梱のSettings.txtを参照してください。

・uLS_InitSyncJunctionCommand　　※ver1.40から追加
　　AlbumJacketとLyrics対応コマンド
　　歌詞取得時に同期か非同期かの分岐でフェイスコマンドを実行する
　　パラメータ　値はカンマ区切りでCommand,呼び出し元アイテム名(省略可),CommandParamType,CommandParam,CommandTargetWindow(省略可),CommandTargetPlugin(省略可)
の値を順に指定。各キーでコマンド2つ分の値12個を使う。

・ManualTurnPage　　※ver1.26から追加
　　コマンドキー
　　パラメータ　Manual：同期・非同期と演奏時間に関わらず一番最初の歌詞を表示し、自動で次の歌詞を表示しなくなる。
　　　　　　　　SemiAuto：指定するとプラグイン側Lyrics設定の同期タイプ「半自動」と同様の動作になる。※ver1.42から追加

※
このコマンドキーは非同期歌詞用の[Lyrics] フィールドに記述してください。
パラメータにManualを指定した場合、下記のページ送りに関するフィールドやコマンドキーが必要です。


非同期歌詞に関するキーコマンド

・PreviousPage　　※ver1.26から追加
　　コマンドキー
　　パラメータ　なし
　　非同期歌詞の前ページへ戻す。SubCategoryにLyricsを指定。

・LoopPreviousPage　　　※ver1.26から追加
　　コマンドキー
　　パラメータ　なし
　　非同期歌詞の前ページへ戻し、ループする。SubCategoryにLyricsを指定。

・NextPage　　※ver1.26から追加
　　コマンドキー
　　パラメータ　なし
　　非同期歌詞の次ページへ進む。SubCategoryにLyricsを指定。

・LoopNextPage　　※ver1.26から追加
　　コマンドキー
　　パラメータ　なし
　　非同期歌詞の次ページへ進み、ループする。SubCategoryにLyricsを指定。

PreviousPage, LoopPreviousPage, NextPage, LoopNextPageの記述例

Command = None
CommandParamType = String
CommandParam = NextPage
CommandTargetPlugin = uLilithSuite.gpi

改ページ用のボタン画像を表示するフィールドに記述。

※戻り用改ページボタンのフィールドの記述例

[ManualPreviousPage]
Category = DynamicImage
SubCategory = Lyrics
Type = StaticItem
ImageFile = lyrics\async_lyrics_prev1.png
MouseOverImageFile = lyrics\async_lyrics_prev2.png
PushedImageFile = lyrics\async_lyrics_prev3.png
TopLeftAnchor = BottomRight, -71, -25
Enable = True
DisableRegion = True

Command = None
CommandParamType = String
CommandParam = PreviousPage
CommandTargetPlugin = uLilithSuite.gpi

自作の「NEO FLAT AlbumArt & Lyrics」フェイスに同梱のAlbumArt & Lyrics_ASYNCLYRICS.inファイルより

非同期歌詞用サブフェイスで上下に拡大縮小させる為、TopLeftAnchorキーを使用しています。ウィンドウが固
定サイズならPosXキーやPosYキーでボタン表示の位置を指定しても大丈夫だと思います。


●おまけ（サクラエディタでフェイスの定義を書いている方へ）

私（てす）は静荷氏作成のサクラエディタ用「uLilithフェイス編集モード」設定ファイル「ulilith_keyword.khp」にuLilithSuite
独自のキーを追記して編集しています。しかしキーワードを追加した設定ファイルそのものを配布するわけには行かないので、私
（てす）が作成した部分のみ下記に記載しておきます。

「ulilith_keyword.khp」をサクラエディタで開いて一番下の行にでも下記のuLilithSuiteのキーワードをコピペしてください。
オリジナルの設定ファイルは保存しておいて、コピーしたファイルで作業しておけば失敗した時にリカバリーが容易です。
あと出来上がったファイルは上書きではなく、別の場所に保存しておいてそれをサクラエディタに設定した方がいいです。

※
間違いや抜けているコマンドキーなどあるかもしれませんが、それでもよろしければフェイスの作成や改造にお役立ていただけ
れば幸いです。
尚、サクラエディタで「ulilith_keyword.khp」ファイルのキーワードヘルプ機能の設定方法などは下記のURLへ。

サクラエディタ用「uLilithフェイス編集モード」設定方法
http://siz-cani.hacca.jp/skin/sakura_ulilith.html

サクラエディタ用「uLilithフェイス編集モード」設定の更新手順
http://siz-cani.hacca.jp/skin/sakura_ulilith_update.html

下記のキーワードをコピペ

Lyrics /// Lyrics《SubCategory キーの値》\nuLilith Suite独自のキー\nCategoryはPluginFrameBufferを指定
AlbumJacketReflection /// AlbumJacketReflection《SubCategory キーの値》\nuLilith Suite独自のキー\nCategoryはPluginFrameBufferを指定\nリフレクション機能を利用するためのフィールド\nAlbumJacketフィールドと連動しているのでAlbumJacketの設定も必須\n画像のサイズ等もAlbumJacketに依存しているのでWidthとHeightを小さくすると画像が入りきらない\nAlbumJacket側を「IsHided = True」等で隠していても動作します
SizePixelFlag /// SizePixelFlag【コマンド】\n〔パラメータ〕Trueのみ\nuLilith Suite独自のキー\nフォントサイズの単位をpixelにするかどうか判別する為のキー\nデフォルトはpoint指定
NotAntiAliasFlag /// NotAntiAliasFlag【コマンド】\n〔パラメータ〕TrueまたはFalse\nuLilith Suite独自のキー\nTrue：歌詞表示のフォントにアンチエイリアスが掛からなくなる\nFalseまたはキー省略ではアンチエイリアスが掛かる
GdiplusFlag /// GdiplusFlag【コマンド】\n〔パラメータ〕Trueのみ\nuLilith Suite独自のキー\nDirect2D動作時に該当フィールドの描写をGDI+で処理するかどうか判別する為のキー\nフェイス設定からプラグイン設定に変更されたので\nフェイス側でGdiplusFlagキー設定はver1.25以後未使用
ManualTurnPage /// ManualTurnPage【コマンド】\nuLilith Suite独自のキー\n〔パラメータ〕Manual\n同期・非同期と演奏時間に関わらず一番最初の歌詞を表示し、\n自動で次の歌詞を表示しなくなる\nSemiAuto\n指定するとプラグイン側Lyrics設定の\n同期タイプ「半自動」と同様の動作になる
PreviousPage /// PreviousPage【コマンド】\n〔パラメータ〕なし\nuLilith Suite独自のキー\n非同期歌詞の前ページへ戻す\nSubCategoryにLyricsを指定
LoopPreviousPage /// LoopPreviousPage【コマンド】\n〔パラメータ〕なし\nuLilith Suite独自のキー\n非同期歌詞の前ページへ戻し、ループする\nSubCategoryにLyricsを指定
NextPage /// NextPage【コマンド】\n〔パラメータ〕なし\nuLilith Suite独自のキー\n非同期歌詞の次ページへ進む\nSubCategoryにLyricsを指定\n例\nCommand = None\nCommandParamType = String\nCommandParam = NextPage\nCommandTargetPlugin = uLilithSuite.gpi
LoopNextPage /// LoopNextPage【コマンド】\n〔パラメータ〕なし\nuLilith Suite独自のキー\n非同期歌詞の次ページへ進み、ループする\nSubCategoryにLyricsを指定
PrecedeLineCount /// PrecedeLineCount【コマンド】\nuLilith Suite独自のキー\n〔パラメータの内容〕0を含む自然数（整数）\nフェイス側で先読み行数を指定する
TextColor1 /// TextColor1【コマンド】\n〔パラメータ〕RGB(24bitカラー)を6桁の16進数で指定\nuLilith Suite独自のキー\nフェイス側でフォントの色を指定する
TextColor2 /// TextColor2【コマンド】\n〔パラメータ〕RGB(24bitカラー)を6桁の16進数で指定\nuLilith Suite独自のキー\nフェイス側でフォントの色を指定する
TextColor3 /// TextColor3【コマンド】\n〔パラメータ〕RGB(24bitカラー)を6桁の16進数で指定\nuLilith Suite独自のキー\nフェイス側でフォントの色を指定する
MTextColor1 /// MTextColor1【コマンド】\n〔パラメータ〕RGB(24bitカラー)を6桁の16進数で指定\nuLilith Suite独自のキー\nフェイス側で多段ワイプの色指定
MTextColor2 /// MTextColor2【コマンド】\n〔パラメータ〕RGB(24bitカラー)を6桁の16進数で指定\nuLilith Suite独自のキー\nフェイス側で多段ワイプの色指定
MTextColor3 /// MTextColor3【コマンド】\n〔パラメータ〕RGB(24bitカラー)を6桁の16進数で指定\nuLilith Suite独自のキー\nフェイス側で多段ワイプの色指定
LyricsOrder /// LyricsOrder【Lyricsのみのコマンド】\n〔パラメータ〕Reverse\nuLilith Suite独自のキー\n歌詞表示の行の順番を逆にするキー
uLS_InitirizeCommand /// uLS_InitirizeCommand【AlbumJacketとLyrics対応コマンド】\n〔パラメータ〕値はカンマ区切りで\nCommand,呼び出し元アイテム名(省略可),CommandParamType,CommandParam,CommandTargetWindow(省略可),CommandTargetPlugin(省略可)\nの値を順に指定\n各キーでコマンド2つ分の値12個を使う\nuLilith Suite独自のキー\n特定のタイミングでフェイスコマンドを実行するキー\nフェイス読み込み時に実行(最初がGDI+動作時、次がDirect2D動作時)\n例:uLS_InitirizeCommand = HideItem,,String,AlbumJacket,,,CallSubRoutine,,String,TestCommand,,
uLS_PreCommand /// uLS_PreCommand【AlbumJacketとLyrics対応コマンド】\n〔パラメータ〕値はカンマ区切りで\nCommand,呼び出し元アイテム名(省略可),CommandParamType,CommandParam,CommandTargetWindow(省略可),CommandTargetPlugin(省略可)\nの値を順に指定\n各キーでコマンド2つ分の値12個を使う\nuLilith Suite独自のキー\n特定のタイミングでフェイスコマンドを実行するキー\nファイルからアルバムジャケットor歌詞を取得する際に前回の取得結果を元に実行(最初が前回未取得、次が取得した場合)
uLS_Command /// uLS_Command【AlbumJacketとLyrics対応コマンド】\n〔パラメータ〕値はカンマ区切りで\nCommand,呼び出し元アイテム名(省略可),CommandParamType,CommandParam,CommandTargetWindow(省略可),CommandTargetPlugin(省略可)\nの値を順に指定\n各キーでコマンド2つ分の値12個を使う\nuLilith Suite独自のキー\n特定のタイミングでフェイスコマンドを実行するキー\nアルバムジャケットor歌詞の有無を元に実行する(最初が有った場合、次が無かった場合)AlbumJacketとLyricsの両方動作する場合はアルバムジャケット側が先に動作する
uLS_InitSyncJunctionCommand /// uLS_InitSyncJunctionCommand【AlbumJacketとLyrics対応コマンド】\n〔パラメータ〕値はカンマ区切りで\nCommand,呼び出し元アイテム名(省略可),CommandParamType,CommandParam,CommandTargetWindow(省略可),CommandTargetPlugin(省略可)\nの値を順に指定\n各キーでコマンド2つ分の値12個を使う\nuLilith Suite独自のキー\n歌詞取得時に同期か非同期かの分岐でフェイスコマンドを実行する
NormalFirstAlpha /// NormalFirstAlpha【ジャケット画像表示のフェードイン・フェードアウトの関連コマンド】\n〔パラメータ〕0〜255\nuLilith Suite独自のキー\n初期アルファ値（不透明度）:（プラグイン側デフォルト: 180）
NormalAlpha /// NormalAlpha【ジャケット画像表示のフェードイン・フェードアウトの関連コマンド】\n〔パラメータ〕0〜255\nuLilith Suite独自のキー\n最終アルファ値（不透明度）:（プラグイン側デフォルト： 230 ）
DrawCount /// DrawCount【ジャケット画像表示のフェードイン・フェードアウトの関連コマンド】\n〔パラメータ〕1〜10000\nuLilith Suite独自のキー\nフェードイン・フェードアウト処理の描画回数:（プラグイン側デフォルト: 10）
DrawTime /// DrawTime【ジャケット画像表示のフェードイン・フェードアウトの関連コマンド】\n〔パラメータ〕1〜10000（＝0.001〜10秒)\nuLilith Suite独自のキー\nフェード動作にかける描画時間:（プラグイン側デフォルト: 100（0.1秒））
TurningAngle /// TurningAngle【ジャケット画像の関連コマンド】\n〔パラメータ〕値は90 or 180 or 270のいずれか\nuLilith Suite独自のキー\nアルバムジャケットを回転させるキー\n画像が右方向に値の角度分回転する
Parallelogram /// Parallelogram【ジャケット画像の関連コマンド】\n〔パラメータ〕値は左上,右上,左下の座標をカンマ区切りで指定\nuLilith Suite独自のキー\nアルバムジャケットを平行四辺形に変形させるキー\n基点はAlbumJacketのフィールド左上(0,0)で文字等の不正な値が入っていると機能しない\n数字が7つ以上入っても動くが使うのは前6つまで\nマイナス座標も指定でき、上下反転や左右反転なども出来る\n例:Parallelogram = 75,0,150,75,0,75
EnlargeFlag /// EnlargeFlag【ジャケット画像の関連コマンド】\n〔パラメータ〕TrueまたはFalse\nuLilith Suite独自のキー\n拡大\n  Trueを設定するとチェックを入れた状態として動作します\n  Falseでチェックを外した状態として動作します
GrayscaleFlag /// GrayscaleFlag【ジャケット画像の関連コマンド】\n〔パラメータ〕TrueまたはFalse\nuLilith Suite独自のキー\nグレースケール\n  Trueを設定するとチェックを入れた状態として動作します\n  Falseでチェックを外した状態として動作します
ReflectionFlag /// ReflectionFlag【ジャケット画像の関連コマンド】\n〔パラメータ〕TrueまたはFalse\nuLilith Suite独自のキー\nリフレクションを表示するフラグ
ReflectFitFlag /// ReflectFitFlag【ジャケット画像の関連コマンド】\n〔パラメータ〕TrueまたはFalse\nuLilith Suite独自のキー\nフィットを表示するフラグ
Reflectance /// Reflectance【ジャケット画像の関連コマンド】\n〔パラメータ〕整数\nuLilith Suite独自のキー\反射率\n  ※リフレクションに影響していますが、これらはAlbumJacketでのみ設定可能です
ReflectAlpha /// ReflectAlpha【ジャケット画像の関連コマンド】\n〔パラメータ〕整数\nuLilith Suite独自のキー\n初期アルファ\n  ※リフレクションに影響していますが、これらはAlbumJacketでのみ設定可能です

