差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
|
メイドいぢり:プラグイン更新チェック用csv [2024/10/18 19:00] fumble |
メイドいぢり:プラグイン更新チェック用csv [2025/06/13 12:50] (現在) fumble |
||
|---|---|---|---|
| 行 1: | 行 1: | ||
| - | =====プラグイン更新チェック用CSVファイルの書き方===== | + | =====プラグイン更新チェック===== |
| + | インターネット上にCSVを配置し((レスポンスとしてCSV文字列が返ってくれば良いのでCGIでもOK))そのURLをメイドいぢりに登録することで、プラグインの更新チェックを行わせることが出来ます。\\ | ||
| + | バージョンチェックが行えるものは、メイドいぢりのプラグインと接続が確立した際に読み込まれているアセンブリです。\\ | ||
| + | ※プラグインならほぼすべて対応出来るはずです。\\ | ||
| - | インターネット上にCSVを配置し((レスポンスとしてCSVが返ってくれば良いのでCGIでもOK))そのURLをメイドいぢりに登録することで、プラグインの更新チェックを行わせることが出来ます。\\ | + | ====こまけぇこたぁいいんだよ!!==== |
| + | Googleのスプレッドシートでやると簡単。\\ | ||
| + | [[https:// | ||
| - | ====CSVの形式==== | + | ====CSVの形式(RFC4180準拠ならOKなはず)==== |
| - | * 文字コードはUTF-8とします。 | + | * 文字コードはUTF-8とします。(ExcelはBOMを付けることを推奨) |
| * 区切り文字は, | * 区切り文字は, | ||
| * 改行コードはCRLFまたはCRまたLFです。 | * 改行コードはCRLFまたはCRまたLFです。 | ||
| - | * 1行目は表題として読み飛ばします。 | + | * 1行目は表題として読み飛ばします。((そのためExcel対策でBOMを付けておいても平気です。)) |
| * カンマをエスケープするには" | * カンマをエスケープするには" | ||
| - | * 改行を含める場合も" | + | * 改行も" |
| ^カラム^内容^必須?^備考^ | ^カラム^内容^必須?^備考^ | ||
| 行 16: | 行 21: | ||
| |2カラム目|判定用キーワード|必須| | |2カラム目|判定用キーワード|必須| | ||
| |3カラム目|バージョン|必須|文字列として扱うのでx.x.x.x形式でなくて良い| | |3カラム目|バージョン|必須|文字列として扱うのでx.x.x.x形式でなくて良い| | ||
| - | |4カラム目|情報サイトURLです。|省略可|まとめサイトでもXのポストでも何でも| | + | |4カラム目|公開/情報サイトURLです。|省略可|まとめサイトでもXのポストでも何でも| |
| |5カラム目|ダウンロードURLです。|省略可|ローダーでもGoogleDriveでも何でも| | |5カラム目|ダウンロードURLです。|省略可|ローダーでもGoogleDriveでも何でも| | ||
| + | 必須の1~3カラムが空欄または存在しない場合、その行は読み飛ばされます。\\ | ||
| + | 行コメントはありません、必須カラムをなくすことで読み飛ばすのでそれを利用してください。\\ | ||
| + | 6カラム目以降は現在のところ使用しませんし、何かが設定されていても問題ありませんが、今後追加される可能性があるので使用しないでください。 | ||
| + | |||
| + | |||
| + | サンプル\\ | ||
| + | https:// | ||
| ===プラグインとCSVデータのマッチングは以下のように行います。=== | ===プラグインとCSVデータのマッチングは以下のように行います。=== | ||
| ==Sybarisプラグインの場合== | ==Sybarisプラグインの場合== | ||
| - | - PluginName属性で指定した文字列を判定用キーワードと完全一致で比較します。\\ | + | - PluginName属性で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - PluginName属性で指定した文字列を表示用キーワードと完全一致で比較します。\\ | + | - アセンブリ名(Assembly.GetName().Name)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - AssemblyTitle属性(FileVersionInfo.FileDescription)で指定した文字列を判定用キーワードと完全一致で比較します。\\ | + | - AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - AssemblyTitle属性(FileVersionInfo.FileDescription)で指定した文字列を表示用キーワードと完全一致で比較します。\\ | + | - ファイル名を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を判定用キーワードと完全一致で比較します。\\ | + | |
| - | - AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を表示用キーワードと完全一致で比較します。\\ | + | |
| - | - ファイル名を判定用キーワードと完全一致で比較します。\\ | + | |
| - | - ファイル名を表示用キーワードと完全一致で比較します。\\ | + | |
| ==BepInExプラグインの場合== | ==BepInExプラグインの場合== | ||
| - | - BepInPlugin属性のGUIDで指定した文字列を判定用キーワードと完全一致で比較します。\\ | + | - BepInPlugin属性のGUIDで指定した文字列を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - BepInPlugin属性のGUIDで指定した文字列を表示用キーワードと完全一致で比較します。\\ | + | - BepInPlugin属性のNameで指定した文字列を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - BepInPlugin属性のNameで指定した文字列を判定用キーワードと完全一致で比較します。\\ | + | - アセンブリ名(Assembly.GetName().Name)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - BepInPlugin属性のNameで指定した文字列を表示用キーワードと完全一致で比較します。\\ | + | - AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - AssemblyTitle属性(FileVersionInfo.FileDescription)で指定した文字列を判定用キーワードと完全一致で比較します。\\ | + | - ファイル名を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - AssemblyTitle属性(FileVersionInfo.FileDescription)で指定した文字列を表示用キーワードと完全一致で比較します。\\ | + | |
| - | - AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を判定用キーワードと完全一致で比較します。\\ | + | |
| - | - AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を表示用キーワードと完全一致で比較します。\\ | + | |
| - | - ファイル名を判定用キーワードと完全一致で比較します。\\ | + | |
| - | - ファイル名を表示用キーワードと完全一致で比較します。\\ | + | |
| ==通常のアセンブリの場合== | ==通常のアセンブリの場合== | ||
| - | - AssemblyTitle属性(FileVersionInfo.FileDescription)で指定した文字列を判定用キーワードと完全一致で比較します。\\ | + | - アセンブリ名(Assembly.GetName().Name)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - AssemblyTitle属性(FileVersionInfo.FileDescription)で指定した文字列を表示用キーワードと完全一致で比較します。\\ | + | - AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を判定用キーワードと完全一致で比較します。\\ | + | - ファイル名を判定用または表示用キーワードと完全一致するか確認します。\\ |
| - | - AssemblyProduct属性(FileVersionInfo.ProductName)で指定した文字列を表示用キーワードと完全一致で比較します。\\ | + | |
| - | - ファイル名を判定用キーワードと完全一致で比較します。\\ | + | 比較は両端の空白文字を削除((String.Trim() ))し、大文字/ |
| - | - ファイル名を表示用キーワードと完全一致で比較します。\\ | + | Plugin, |
| + | Plugin, | ||
| ===バージョンは以下の順で最初に取れたものを使用します。=== | ===バージョンは以下の順で最初に取れたものを使用します。=== | ||
| 行 67: | 行 71: | ||
| - AssemblyVersion属性(FileVersionInfo.ProductVersion)で指定した文字列\\ | - AssemblyVersion属性(FileVersionInfo.ProductVersion)で指定した文字列\\ | ||
| - | ===バージョン比較はトリムした文字列を単純に比較します、従って新旧の判定は行われません。=== | + | つまり、Sybarisプラグインの場合はPluginVersion属性が合えば、AssemblyFileVersion属性が異なっていても同じものとして扱います。\\ |
| + | |||
| + | ===バージョン比較はトリムした文字列を単純に比較します。=== | ||
| + | 従って新旧の判定は行われません。\\ | ||