設定ファイル
概要
Unity Asset Store版 Wiener 1.0.0のConverterが読み込む設定YAMLです。
対象バージョン
このページでは、現在リリース済みのUnity Asset Store版 1.0.0で利用できる設定を説明します。Wiener StandaloneとWiener.exeはComing Soonであり、1.0.0のサポート対象外です。
指定方法
Unityメニューから Tools > Wiener > Open Setting Editor を開き、設定YAMLを作成または編集します。保存したファイルはConverterの Develop Settings YAML、Develop Binary Settings YAML、Production Settings YAML のいずれかに指定して使用します。
標準の開発用設定ファイルは次の場所にあります。
Assets/Wiener/Data/client/settings/develop_settings.yaml
記入例
# UnityプロジェクトルートからのWienerテキストパス
wiener_text_path: "Assets/Wiener/WienerText.csv"
# Wiener本体のテキスト言語
wiener_text_language: "ja"
output_format:
# Unityランタイム用バイナリのみ出力
- format: Binary
bom: false
newline_lf: true
# C#コード出力
- format: CSharp
bom: false
newline_lf: true
# Json出力
- format: Json
bom: false
newline_lf: true
# SQL出力
- format: SQL
bom: false
newline_lf: true
# CSV出力
- format: CSV
bom: true
newline_lf: true
# PHP出力
- format: PHP
bom: false
newline_lf: true
# Manual出力
- format: Manual
bom: false
newline_lf: true
# PHP
php:
# テーブルハッシュ出力の入力テンプレートパス
input_hash_list_template: "HashListPhp.php"
# テーブルハッシュ出力パス
output_hash_list: "HashList.php"
# Manual
manual:
# HTMLのタイトル
title: "マスターデータマニュアル"
# UnityプロジェクトルートからのYAMLのパス
yaml_search_path: "Assets/Wiener/Data/client/yaml"
# Unityプロジェクトルートからのローカル表入力のパス(Google Sheetsのみを使う場合は省略可)
input_search_path: "Assets/Wiener/Data/excel"
# Unityプロジェクトルートからの出力パス
output_path: "Assets/Wiener/Data/client/makes"
# Unityプロジェクトルートからのテンプレートパス(PHP出力を使う場合は必須)
template_path: "Assets/Wiener/Data/template"
# Windowsのタイムゾーン
windows_timezone: "Tokyo Standard Time"
# Mac、Linuxのタイムゾーン
unix_timezone: "Asia/Tokyo"
# 開発環境の有無
development: true
# 自動生成コードのnamespace(空文字だとWiener)
namespace: ""
google_sheets:
credential_path: "C:/Users/<ユーザー名>/.wiener/credentials/wiener-service-account.json"
# ローカライズ設定
localization:
enable: true
input:
path: "Assets/Wiener/Data/localize/translations.csv"
target_languages:
- value: "ja"
- value: "en"
# 並列実行数
processor_count: 1
# Excel内のマスターバージョン名
version_excel_name: "master_version"
詳細
wiener_text_path
wiener_text_path: "Assets/Wiener/WienerText.csv"
- 定義:必須
Wiener内部で使用するメッセージファイルのパスを、Unityプロジェクトルートからの相対パスで指定します。
wiener_text_language
wiener_text_language: "ja"
- 定義:必須
Wiener内部で使用するメッセージファイルの言語を指定します。WienerText.csv の1行目の文字列を指定します。
output_format
output_format:
- format: CSharp
bom: false
newline_lf: true
- 定義:必須
出力形式を1つ以上定義します。
format
- 定義:必須
次のいずれかを指定します。
| 値 | 説明 |
|---|---|
| Binary | Unityランタイム用バイナリのみを出力 |
| CSharp | C#読み込みコードとUnityランタイム用バイナリを出力 |
| Json | JSONファイルを出力 |
| SQL | SQLファイルを出力 |
| CSV | CSVファイルを出力 |
| PHP | PHPファイルを出力 |
| Manual | マニュアルHTMLを出力 |
UE5出力はComing Soonです
Unity Asset Store版 1.0.0のConverterは format: UE5 を処理できません。現行のSetting Editorでは選択肢に UE5 が表示されますが、選択しないでください。UE5向け出力は今後のバージョンで提供予定です。
bom
- 定義:オプション
- デフォルト:true
出力は UTF-8 です。BOM の有無を指定します。
newline_lf
- 定義:オプション
- デフォルト:true
改行コードを指定します。
| 値 | 改行コード |
|---|---|
| true | LF |
| false | CRLF |
ue5
Coming Soon
ue5 設定はUnity Asset Store版 1.0.0では非対応です。設定YAMLに追加しないでください。
is_utc
- 定義:Unity Asset Store版 1.0.0では非対応
現行のSetting Editorではこの項目が表示されますが、Converterでは使用できません。
php
php:
input_hash_list_template: "HashListPhp.php"
output_hash_list: "HashList.php"
- 定義:オプション
input_hash_list_template
- 定義:オプション
PHPのハッシュテーブル用テンプレートファイル名を指定します。template_path からの相対パスを指定します。
output_hash_list
- 定義:オプション
PHPのデータハッシュ一覧ファイルの出力先パスを指定します。output_path からの相対パスを指定します。
各データのハッシュ値を記録し、前回出力から差分があるデータだけをリロードする用途を想定しています。
manual
manual:
title: "マスターデータマニュアル"
- 定義:オプション
title
- 定義:オプション
マニュアルHTMLのタイトル名を指定します。
yaml_search_path
yaml_search_path: "Assets/Wiener/Data/client/yaml"
- 定義:必須
UnityプロジェクトルートからのYAMLディレクトリのパスを指定します。
input_search_path
input_search_path: "Assets/Wiener/Data/excel"
- 定義:条件付き必須(
google_sheets.credential_pathを指定しない場合)
Unityプロジェクトルートからのローカル表入力ディレクトリのパスを指定します。
header.input_path に指定したローカルExcelのパスは、このディレクトリからの相対パスとして解決されます。Google Sheets URLはこのディレクトリの影響を受けません。
Google Sheets URLのみを入力として使用し、google_sheets.credential_path を指定している場合は省略できます。
output_path
output_path: "Assets/Wiener/Data/client/makes"
- 定義:必須
Unityプロジェクトルートからの出力ディレクトリのパスを指定します。
template_path
template_path: "Assets/Wiener/Data/template"
- 定義:条件付き必須(
output_formatにPHPを含む場合)
Unityプロジェクトルートからのテンプレートディレクトリのパスを指定します。
PHP出力を使用しない場合は省略できます。
windows_timezone
windows_timezone: "Tokyo Standard Time"
- 定義:必須
Windowsのタイムゾーンを指定します。
unix_timezone
unix_timezone: "Asia/Tokyo"
- 定義:必須
Mac、Linuxのタイムゾーンを指定します。
development
development: true
- 定義:オプション
- デフォルト:false
開発モードを有効にします。true にすると以下の動作が変わります。
- 表入力のA列の「@」行を出力対象に含める
- YAML
header.development_input_pathに指定した追加入力を読み込む - ローカライズの未翻訳エントリ(
----)によるコンバートエラーを抑制する
A列「@」行の有効化 {#development-excel-at}
| 値 | 動作 |
|---|---|
| true | A列に「@」が付いた行を出力対象に含める |
| false | A列に「@」が付いた行をスキップする |
開発データのA列に @ を入れておき、開発中は true、本番では false にして運用します。
development_input_path の有効化 {#development-input-path}
YAMLの header.development_input_path に指定したパスは、development: true の場合にのみ読み込まれます。development: false のときは無視されます。
テストデータなど開発専用の入力を本番入力と分離するために使用します。
ローカライズ未翻訳エラーの抑制
ローカライズ機能を使用している場合、development: false(本番モード)では未翻訳(----)のエントリが残っているとコンバートエラーになります。development: true のときはこのチェックが抑制されます。
google_sheets
google_sheets:
credential_path: "C:/Users/<ユーザー名>/.wiener/credentials/wiener-service-account.json"
- 定義:オプション
header.input_path にGoogle Sheets URLを指定する場合、またはローカライズのinput/outputにスプレッドシートURLを指定する場合の設定です。
詳細な設定手順はGoogle Sheets入力を参照してください。
credential_path
- 定義:条件付き必須(Google Sheetsを使用する場合)
Googleサービスアカウントの認証JSONファイルのパスを指定します。入力だけに使用する場合は対象スプレッドシートを閲覧者として共有し、書き込み機能を使用する場合にだけ必要な編集権限を付与してください。
認証JSONはUnityプロジェクトやGitリポジトリの外にある、アクセス権を制限したユーザー専用フォルダへ保存してください。Setting Editorでプロジェクト外のJSONを選択すると、絶対パスが設定されます。
配布パッケージのダミーファイルを上書きしないでください
Assets/Wiener/Data/secrets/wiener-service-account.json は有効な認証情報を含まないダミーファイルです。実際の認証JSONで上書きせず、外部に保存したファイルを credential_path に指定してください。実際のキーをGitへコミットしないでください。
保存場所と登録手順はGoogle Sheetsの設定を参照してください。
namespace
namespace: "Wiener"
- 定義:オプション
- デフォルト:"Wiener"
C#自動生成コードの namespace を指定します。
未指定の場合、従来通り Wiener namespace に出力します。マネージャークラス名は WienerManager 固定です。
localization
- 定義:オプション
ローカライズ機能を使う場合に設定します。
CSVを読み込んでCSVに書き込む(最もシンプルな構成)
localization:
enable: true
input:
path: "Assets/Wiener/Data/localize/translations.csv"
スプレッドシートを読み込んでスプレッドシートに書き込む
localization:
enable: true
input:
path: "https://docs.google.com/spreadsheets/d/xxxxxxxx/edit#gid=0"
sheet: "translations"
スプレッドシートを読み込んでCSVに書き込む
localization:
enable: true
input:
path: "https://docs.google.com/spreadsheets/d/xxxxxxxx/edit#gid=0"
sheet: "translations"
output:
path: "Assets/Wiener/Data/localize/translations.csv"
enable
- 定義:オプション
- デフォルト:false
true を指定するとローカライズ機能が有効になります。
開発中の運用について
enable: true の状態でコンバートを実行すると翻訳CSVが更新されるため、マスターデータ変更のたびにCSVのコミットが発生します。
開発中は enable: false(または設定を省略)にしておき、以下のタイミングでのみ enable: true にすることを推奨します。なお、本番コンバート(development: false)時に ---- の未翻訳エントリが残っているとエラーになります。
- 翻訳作業の開始前(CSVを最新状態に更新して翻訳者に渡す)
- ローカライズ対応のバイナリを実際に確認・検証するとき
- 本番コンバート時
input
- 定義:条件付き(enableがtrueの場合は必須)
翻訳データの読み込み元を指定します。
input.path
- 定義:必須
翻訳用ファイルのパスを指定します。
Unityプロジェクトルートからの相対パス、またはGoogle SheetsのURLを指定します。
URLが http:// または https:// で始まる場合はスプレッドシートとして扱います。
コンバート時に自動生成・自動更新されます(出力先が別途指定されていない場合)。
input.sheet
- 定義:スプレッドシートの場合は必須
入力がスプレッドシートURLの場合に、読み込むシート名を指定します。
output
- 定義:オプション
翻訳データの書き込み先を指定します。省略時は input と同じ場所に書き込みます(入出力が同一の場合は内容が変わらなければ書き込みをスキップします)。
output.path
- 定義:オプション
翻訳用ファイルの書き込み先パスを指定します。
Unityプロジェクトルートからの相対パス、またはGoogle SheetsのURLを指定します。
output.sheet
- 定義:スプレッドシートの場合は必須
出力先がスプレッドシートURLの場合に、書き込むシート名を指定します。
差分出力について
原文の変更・削除が発生した場合、差分データが出力されます。
| 出力先 | 差分の書き込み先 |
|---|---|
| CSV ファイル | {csv名}_diff_{timestamp}.csv(同ディレクトリ) |
| スプレッドシート | 同一スプレッドシートの diff_{timestamp} シート(新規作成) |
target_languages
- 定義:オプション
本番モード(development: false)における未翻訳エラーのチェック対象言語を絞り込みます。
定義なし(または空リスト)の場合は、CSVの全言語列がエラーチェック対象になります。定義した場合は、リストに含まれる言語のみエラーチェックを行い、含まれない言語は未翻訳(----)のまま原文フォールバックで通過します。
運用中に新しい言語を翻訳対象として追加する際は、翻訳作業が完了するまでその言語だけ target_languages から除外しておくことで、本番コンバートをエラーなく継続できます。
output_info_path
output_info_path: "output_info.json"
- 定義:オプション
- デフォルト:""
コンバート結果の情報をJSONファイルとして出力する場合に指定します。output_path からの相対パスを指定します。
出力内容は YamlHash と DataHash を含むJSONです。
指定しない場合は出力しません。
processor_count
processor_count: 1
- 定義:オプション
- デフォルト:実行マシンのスレッド数
並列実行数を指定します。
設定しない場合は、実行マシンに応じたスレッド数で実行されます。
version_excel_name
version_excel_name: "master_version"
- 定義:オプション
- デフォルト:""
バージョン指定をして出力する際に使用する、表入力内のフィールド名を指定します。