상품 설명
◆ YamaPlayerPlaylistJsonTsvConverter
YamaPlayer のプレイリスト JSON と TSV を相互変換する Unity Editor ツールです。
プレイリストの管理をGoogleスプレッドシートやExcelで行えます。
◆簡易使用説明
大まかな使用方法をスライドにしました。
https://docs.google.com/presentation/d/1W2lwuhbj5c1SbERQ081OtMZCXM5JS5C6A1hGNPFYUbc/edit?usp=sharing
◆ライセンス
ライセンスはCC-0です。ご自由にご利用ください。許諾なく改変再配布可能です。
◆お問い合わせ
何かしら問題があれば、Twitter (@hato_poppo_life) などでご連絡ください。
対応できる範囲で対応させていただきます。
下記GitHubのissueでも問題ありませんが、気づくまで時間がかかるかもしれません。
https://github.com/hatolife/YamaPlayerPlaylistJsonTsvConverter
◆補足
寄付などは受け付けておりません。
VRChatやTwitterでお友達になっていただいたほうが嬉しいです。
コードはCodexを用いて作成しました。
--- 以下 Codex 作成の資料です ---
README
YamaPlayerPlaylistJsonTsvConverter
YamaPlayer のプレイリスト JSON と TSV を相互変換する Unity Editor ツールです。
## このツールの利点
- YamaPlayer 本体にも JSON の出力機能はありますが、そのままでは「見やすい・編集しやすい」形式とは言いにくいです。
- 本ツールで TSV 化することで、プレイリストをテキストベースかつ表形式で管理できます。
- TSV なら Googleスプレッドシートや Excel で、一覧編集・検索・並び替え・フィルタがしやすくなります。
- JSON/TSV の相互変換により、編集は表計算ソフト、反映は JSON という運用に分離できます。
- 出力 JSON の差分確認機能により、意図した変更かどうかを確認しやすくなります。
## 機能
- JSON -> TSV 変換
- TSV -> JSON 変換
- 中断可能プログレスバー
- Result のコピー可能表示
- `Input JSON` と `Output JSON` の差分要約表示
- WinMerge 連携(Windows)
- `Diff with WinMerge`
- `Install WinMerge (winget)`
## UI
- `Input JSON`
- `Output TSV`
- `Output JSON`
- `Input +1` ボタンで連番を自動設定
- 例: `playlists_1.json -> playlists_2.json`
- 末尾連番なしは `_1` を付与
## TSV 形式
ヘッダ(固定):
```text
playlist_name\tplaylist_active\tyoutube_list_id\tplaylist_is_edit\ttrack_mode\ttrack_title\ttrack_url
```
- `playlist_index` / `track_index` は使用しません
- playlist 順・track 順は TSV の行順を採用します
## データ方針
- 空文字は許容
- `Tracks` 0件 playlist は許容
- URL 形式外は警告で許容
- URL は不要文字(空白・tab・改行・制御文字)を削除して正規化
## 既知の互換処理
- 旧不整合TSV(ヘッダ7列なのにデータ先頭に旧 `playlist_index` が残る8列)を読み込んだ場合、先頭列を自動で無視します。
## 使い方(基本)
1. `Input JSON` を選択
2. `Output TSV` / `Output JSON` を設定
3. `JSON -> TSV` または `TSV -> JSON` を実行
4. `Result` で警告・エラー・差分を確認
## 注意
- 実行結果は `Result` の内容を優先して確認してください。
- 差分詳細は最大 200 件まで表示します。
USER_GUIDE
YamaPlayerPlaylistJsonTsvConverter ユーザーガイド
## 1. 概要
このツールは、YamaPlayer のプレイリスト JSON を TSV に変換し、
表計算ソフトで編集した TSV を JSON に戻すための Unity Editor ツールです。
## 2. 起動方法
Unity メニューから以下を選択します。
- `Tools/PoppoWorks/YamaPlayer Playlist Json TSV Converter`
## 3. 画面構成
上から順に次の入力欄があります。
- `Input JSON`
- `Output TSV`
- `Output JSON`
`Output JSON` には `Input +1` ボタンがあります。
- 例: `playlists_1.json` を入力しているとき、`playlists_2.json` を自動設定
- 末尾連番がない場合は `_1` を付与
## 4. 基本操作
### 4.1 JSON -> TSV
1. `Input JSON` に元の JSON を指定
2. `Output TSV` に出力先を指定
3. `JSON -> TSV` を押す
4. `Result` で完了/警告/エラーを確認
### 4.2 TSV -> JSON
1. `Output TSV` に読み込む TSV を指定
2. `Output JSON` に JSON 出力先を指定
3. `TSV -> JSON` を押す
4. `Result` で完了/警告/エラーを確認
5. 同時に `Input JSON` と `Output JSON` の差分要約が表示されます
## 5. TSV 仕様(重要)
ヘッダは固定です。
```text
playlist_name\tplaylist_active\tyoutube_list_id\tplaylist_is_edit\ttrack_mode\ttrack_title\ttrack_url
```
- `playlist_index` / `track_index` は使いません
- playlist 順・track 順は TSV の行順で決まります
- 連続行の playlist メタが同じ間は同じ playlist として扱われます
## 6. データの扱い
- 空文字は許容
- `Tracks` 0件 playlist は許容
- URL 形式外は警告(取り込みは継続)
- URL は不要文字(空白・tab・改行・制御文字)を削除して正規化
## 7. Result の見方
- `Errors`: 変換失敗要因。出力は信用しない
- `Warnings`: 変換は実行されたが注意が必要
- `Diff`: `TSV -> JSON` 実行時の入力/出力差分
`Result` は選択してコピーできます。
## 8. WinMerge 連携(Windows)
- `Diff with WinMerge`: `Input JSON` と `Output JSON` を WinMerge で比較
- `Install WinMerge (winget)`: winget で WinMerge を導入
インストール確認ダイアログから、公式サイトを開いて手動インストールも可能です。
- 公式サイト: https://winmerge.org/?lang=ja
## 9. よくあるトラブル
### 9.1 ヘッダ不一致
- TSV の列名・順序が固定ヘッダと一致しているか確認してください。
### 9.2 bool/int 変換エラー
- `playlist_active` / `playlist_is_edit` は `true`/`false`(または `1`/`0`)
- `track_mode` は整数
### 9.3 意図しない差分が出る
- TSV で行の並びを変更すると playlist/track の順序が変わります。
- `Diff` セクションで変更内容を確認してください。
## 10. 運用の推奨
- 元 JSON は残し、`Output JSON` は別名で出力して比較する
- `TSV -> JSON` 後に必ず `Diff` を確認する
- 大きな変更前に JSON をバックアップする
모든 리뷰
더보기리뷰 등록
리뷰를 작성하려면 로그인이 필요합니다.
로그인하고 리뷰 쓰기