WienerWiener
  • はじめに
  • 競合比較
  • 価格・入手
  • FAQ
  • 向いているケース
  • ライセンス
  • Unity Asset版とStandalone版の違い
  • 簡易難読化・改ざん検知
  • 整合性検知・デバッグ
  • ローカライズ
  • バージョン管理
  • Google Sheets入力
  • Excel
  • YAML
  • 設定ファイル
  • データフォーマット
  • マスターデータコンバート
  • ValueOnlyフォーマット
  • スタートアップ
  • サンプル
  • Converter
  • YAML Editor
  • Setting Editor
  • 日本語
  • English
  • はじめに
  • 競合比較
  • 価格・入手
  • FAQ
  • 向いているケース
  • ライセンス
  • Unity Asset版とStandalone版の違い
  • 簡易難読化・改ざん検知
  • 整合性検知・デバッグ
  • ローカライズ
  • バージョン管理
  • Google Sheets入力
  • Excel
  • YAML
  • 設定ファイル
  • データフォーマット
  • マスターデータコンバート
  • ValueOnlyフォーマット
  • スタートアップ
  • サンプル
  • Converter
  • YAML Editor
  • Setting Editor
  • 日本語
  • English
  • YAML Editor

    • YAML Editor

YAML Editor

Unity Asset版はローカルExcel入力と、header.input_path にGoogle Sheets URLを指定する入力の両方に対応しています。

概要

WienerのYAMLファイルをUnityEditorから編集するためのEditorWindowです。

起動

メニューバーから Tools > Wiener > Open Yaml Editor で起動します。

Image from alias

画面

Image from alias

ウィンドウ構成

エリア説明
ツールバールートフォルダ選択・ステータス表示
YAMLツリーフォルダ/ファイルのツリービュー・検索
エディタペインHeader/Fields/Multi YAML Action の編集
プレビューペイン編集中YAMLのテキストプレビュー

ツールバー

Image from alias

Root フォルダ

YAMLのルートディレクトリを指定します。

デフォルト:Assets/Wiener/Data/client/yaml

... ボタンでフォルダダイアログを開いて変更できます。

Google Sheets Credential JSON

Googleスプレッドシートを読み込む場合に使用する、サービスアカウントの認証JSONファイルを指定します。

認証JSONファイルの生成手順は Google Sheets入力の設定手順 を参照してください。

... ボタンでJSONファイルを選択できます。

指定済みの場合は Clear ボタンで設定を解除できます。


YAMLツリー

Image from alias

左ペインのツリーにYAMLファイルがフォルダ単位で表示されます。

  • ファイルの選択:クリックで選択し、右ペインで編集できます
  • 検索:ツリー上部の検索フィールドに文字を入力すると、一致するYAMLファイルだけを表示します。表示時は一致ファイルまでの親フォルダを残すため、絞り込み後もフォルダ構造を確認できます
  • 複数選択:Ctrl + クリック で個別追加/解除、Shift + クリック で範囲選択できます。複数選択時の Duplicate / Delete は選択中のファイル・フォルダすべてに適用されます
  • 空白部分の右クリック:ツリー末尾より下の空白を右クリックすると、ルートフォルダに対するメニューを表示します
  • 作成・リネーム後の選択:フォルダ作成、YAML作成、リネーム、複製の完了後は対象の項目が選択状態になります
  • 自動再構築:ウィンドウがフォーカスを得た時に自動でツリーを再構築します。Unity外部でのファイル・フォルダの追加・削除・変更が即座に反映されます

右クリックメニュー

操作対象説明
Refreshフォルダツリーを再読み込みします
Create Folderフォルダ/ファイル選択フォルダ内にサブフォルダをツリー上でインライン入力して作成します
New YAMLフォルダ/ファイル選択フォルダ内に新しいYAMLファイルを作成します
Create From Inputフォルダ/ファイル指定したExcelまたはGoogleスプレッドシートのシートからHeaderとFieldsを自動生成します
Create From Enumフォルダ/ファイルEnum専用のExcelまたはGoogleスプレッドシートから、シート数分のEnum形式YAMLを一括生成します
Recreate From Enumフォルダ/ファイル前回成功したCreate From Enumの設定で、選択フォルダにEnum形式YAMLを再生成します。前回設定がない場合は選択できません
Renameファイル/フォルダファイルまたはフォルダ名を変更します
Duplicateファイル/フォルダファイルまたはフォルダを複製します
Open (external)ファイル関連付けられたエディタでファイルを開きます
Deleteファイル/フォルダファイルまたはフォルダを削除します(確認ダイアログあり)

Create From Input

ExcelファイルまたはGoogleスプレッドシートを読み込み、指定したシートのヘッダー行をもとにYAMLを1ファイル生成します。

入力項目説明
SourceExcel / Spreadsheet のいずれかを選択します
Excel File / Spreadsheet URLExcelファイルのパス、またはスプレッドシートのURL
Sheet対象シートをドロップダウンから選択します
Type Row型情報が記載されている行番号
Name Rowフィールド名が記載されている行番号
YAML Name生成するYAMLファイル名
Key StyleUpperCamel / SnakeCase から選択します

Key Style で UpperCamel を選択した場合は、生成される fields[].key だけでなく header.name もUpperCamelになります。

Type RowでEnumを指定する

Type Row のセルには、通常の型名に加えて、YAMLルート内にあるEnum形式YAMLのファイル名(拡張子なし)または header.name を指定できます。対象になるのは header.source_type が Enum のYAMLだけです。指定名の大文字小文字は区別しません。

たとえば enum/item_type.yaml の header.name が ItemType の場合、型として item_type または ItemType を指定すると、次のフィールドを生成します。

- key: ItemType
  name: item_type
  type: Foreignkey
  relation:
    yaml: enum/item_type.yaml
    from: From
    to: To

from と to には、参照先Enum形式YAMLに実際に定義されている From / from、To / to のキー名を使用します。指定したEnumが見つからない場合は type: String として生成します。

Create From Enum

Enum専用のExcelファイル(EnumBase.xlsx など)またはGoogleスプレッドシートを読み込み、全シートからEnum形式のYAMLを一括生成します。

動作仕様

  • 全シートが対象。シート選択は不要です。
  • シート名が EnumRule のシートは存在していても除外されます。EnumRule シートは必須ではありません。
  • 各シートの A1セル をenum名およびファイル名のベースとして使用します。A1セルが空の場合はシート名を使用します。
  • 対象フォルダ内に 同名のYAMLが既に存在する場合はそのシートをスキップします(上書きしません)。
  • ヘッダー行(to / from / value 列)を自動検出します。見つからない場合は5行目をデフォルトとします。
  • value 列の値がすべて整数の場合は type: Int、それ以外は type: String として出力します。

入力項目

入力項目説明
Excel FileExcelファイルをBrowseボタンで選択します
Key StyleUpperCamel / UpperSnakeCase から選択します

最後に成功したSource、ExcelファイルパスまたはスプレッドシートURL、Key Styleは保存され、次回ダイアログを開いた時に復元されます。Targetフォルダは保存されず、常に右クリックしたフォルダまたはファイルの親フォルダが対象になります。

Recreate From Enum

前回成功した Create From Enum のSource、ExcelファイルパスまたはスプレッドシートURL、Key Styleを使って、右クリックしたフォルダにEnum形式YAMLを再生成します。

Unity Asset版はローカルExcelとGoogleスプレッドシートの両方に対応しており、GoogleスプレッドシートからのRecreate From Enumも使用できます。

出力YAMLの構造

Key Style を UpperCamel に設定し、A1セルに gender_type と記載されたシートがある場合、以下のYAMLが生成されます(ファイル名: gender_type.yaml)。A1セルが空の場合は、シート名がファイル名と header.name の元になります。

header:
  input_path:
  - path: EnumBase.xlsx
  sheet: 性別
  row: 5
  base_type: Normal
  source_type: Enum
  name: GenderType
  output_path: Enum
fields:
- key: To
  name: to
  type: Enum
  enum: GenderType
  enum_value: Value
  enum_comment: From
- key: From
  name: from
  type: String
- key: Value
  name: value
  type: Int
...

ヘッダーエディタ

YAMLの header: 項目を編集できます。

Image from alias

項目説明
base_typeNormal / NoOutput / MultiYamlAction / ManualOnly
input_path参照する表入力のパス一覧
sheet表入力のシート名
rowデータ開始行
source_typeNormal / Enum / Const / ConstSource
container_typeList / Dictionary / DictionaryList / WienerDictionary / WienerDictionaryList
output_path出力フォルダ名
name出力名(クラス名・ファイル名)
groupグループ名(C#のみ)
sort先頭keyでソートするかどうか
encryptionフィールド全体を難読化するかどうか
templatePHPテンプレートファイル名
manual_commentマニュアル出力時のコメント
composite_unique複数keyの複合ユニークチェック

詳細はHeader定義を参照してください。


フィールドエディタ

YAMLの fields: 項目を編集できます。

Image from alias

フィールド一覧操作

ボタン / キー説明
Add Field新しいフィールドを追加します
Delete Field選択中のフィールドを削除します
Move Up / Move Downフィールドの順序を変更します
Delete / Backspaceテキスト入力中でない状態で選択中のフィールドを削除します

フィールドパラメータ

項目説明
keyフィールドのキー名(C#プロパティ名になります)
nameExcelの列名(snake_case推奨)
typeBool / Byte / Short / UShort / Int / UInt / Long / ULong / Float / Double / String / Enum / DateTime / Foreignkey
defaultセルが空の場合のデフォルト値
string_formatテキスト出力時の数値フォーマット
commentソースコードに出力されるコメント
manual_commentマニュアル出力時のコメント
localizeローカライズ対象かどうか
encryptionメモリ難読化の有無
manual_onlyマニュアル出力のみ行うかどうか
obsoleteC#アクセサを非推奨扱いにするかどうか

Relation(Foreignkey時)

type が Foreignkey の場合に表示されます。

項目説明
yaml参照先YAMLのパス(ドロップダウンで選択可能)
from参照先YAMLの検索対象key
to変換先のkey

Enum(Enum時)

type が Enum の場合に表示されます。

項目説明
enumEnum名(source_typeがEnumのYAMLのname)
enum_value列挙値として使用するkey
enum_comment列挙コメントとして使用するkey

Validate

各フィールドのバリデーション設定です。

項目説明
unique重複チェック
key_exist単一YAMLとのデータ存在チェック
key_exists_yaml複数YAMLとのデータ存在チェック
key_exists_yaml_conditionsパラメータ付き複数YAMLとのデータ存在チェック
enum_existsEnum定義の網羅チェック
range値の範囲チェック
string_length文字列長チェック

詳細はFields定義を参照してください。


Multi YAML Actionエディタ

base_type: MultiYamlAction の場合にフィールドエディタの代わりに表示されます。

Image from alias

ボタン説明
Add Itemアクション対象YAMLを追加します
Delete Item選択中のアイテムを削除します
Move Up / Move Down順序を変更します

各アイテムで参照するYAMLと対象keyを設定します。


プレビューペイン

編集中のYAMLをテキスト形式でリアルタイムプレビューします。テキストは選択してコピー可能です。

Image from alias


ツールバーボタン

ボタン説明
Save現在のファイルを保存します
Save All未保存の変更があるすべてのファイルを一括保存します
Reloadファイルを再読み込みします

ショートカット

キー操作
Ctrl + Z元に戻す(Undo)
Ctrl + Shift + Z / Ctrl + Yやり直す(Redo)
Ctrl + S保存(Save)
Ctrl + Shift + S一括保存(Save All)
Ctrl + Nツリーで新規YAMLファイルを作成
Ctrl + Dツリーで選択中のファイルまたはフォルダを複製(複数選択可)
F2ツリーで選択中のファイルまたはフォルダをリネーム
Delete / Backspaceツリーで選択中のファイルまたはフォルダを削除(複数選択可)。UnityのAssets配下では対応する .meta も削除されます
Delete / Backspaceフィールド一覧で選択中のフィールドを削除します(テキスト入力中・ツリーフォーカス時を除く)
↑ / ↓ツリーで前/次のノードを選択
Shift + ↑ / Shift + ↓ツリーで範囲選択
Ctrl + ↑ / Ctrl + ↓選択状態を変えずにキーボードカーソルを移動
Ctrl + Space / Spaceキーボードカーソル位置のノードを複数選択に追加/解除
←フォルダを閉じる(閉じている場合は親フォルダへ移動)
→フォルダを開く(開いている場合は最初の子ノードへ移動)
最終更新:: 2026/06/10 22:12
Contributors: artisan-sawasaka