はじめに

lsde-banner

LS-Dialog Editorとは?

LSDELepaSoft Dialog Editorの略称で、開発者がプロジェクトの執筆と翻訳を支援するために設計されたツールです。
単なる翻訳ツールにとどまらず、LSDEは各プロジェクトに理想的でパーソナライズされたワークフローを確立できるように最適化されています。
手動またはLLMによるテキスト翻訳。
手動またはLLMによるテキスト作成。
ダイアログとテキスト文字列の一元管理。
変更追跡とバージョン履歴。
不整合や問題の自動検出。
複数のエクスポートおよびインポート形式に対応。
外部ツール(ゲームエンジン、CI/CDパイプライン)との統合が可能。
プロジェクトのインターフェース構造とレンダリングの整理。
言語検証ツール(長さ、制約、タグ、変数)。
リアルタイムまたは共有ファイルを介したコラボレーション。
音声ナレーションの生成と同期。
ニーズに合わせたソフトウェアの高度なカスタマイズ。

LS-Dialog Editorの仕組み

LSDEは、翻訳キーを整理するためにi18nのベストプラクティスに基づいています。
独自の構造を強制することなく、フレームワークによって実証されたアプローチを統合し、コンテキストや複数形のような言語の複雑さを管理します。

ワークフローは非常にシンプルです:
新しいプロジェクトを作成します。
プロジェクトのフォルダを定義します。
プロジェクトをスキャンして、手動または自動でキーを作成します。
キーにタスクを適用します(翻訳、修正、再編成など)。

キー

LSDEは、各ダイアログを正確にローカライズするために階層型キーシステムを採用しています。
例:キー game:scenes.events.The-quest-of-sun.d1
game: はネームスペース(名前空間)を示します。この名前は、翻訳ファイル名によって定義されます。例えば、locales/en/game.jsonlocales/en/scenes.jsonなど。
scenes.events.The-quest-of-sun.d1 は、ファイル内のJSON構造でダイアログを見つけるためのパスを表します。

json
// file game.json
	{
		'scenes': {
			'title': '',
			'description': '',
			'events': {
				'The-quest-of-sun': {
					'd1': '',
				},

			},
		},
	},

LS Dialog Editor は、ダイアログを .lsde ファイルにキャッシュします。これにより、プロジェクトの共有と回復が容易になり、複雑なファイルセットを顧客に送る手間を省きます。

i18nキーの規則

W3C Internationalization は、どのソフトウェアライブラリにも依存せず、i18nを標準として定義するリファレンスです。
W3Cの推奨事項は、以下の基本的なルールを定義しています:
連結を避ける
CLDRの言語ルールに従って複数形を処理する
日付、数値、通貨を処理する
翻訳者にコンテキストを提供する
テキストとコードを分離する
フォールバックロケールを提供する
単語の長さや順序を仮定しない
RTL(アラビア語、ヘブライ語)の記述に対応する
JSONの標準およびアーキテクチャのベストプラクティスについては、ICU (International Components for Unicode) がリファレンスとして機能します。

i18next & i18n ?

LSDEは、i18nと、i18next から派生した一部のベストプラクティスの両方に基づいています。
特に、以下の点について:
フォルダ構造
複数形のコンテキスト化
ネストと変数のサポートなど。

ゲーム向け

LSDEは、ゲーム向けの2種類のダイアログをサポートしています。
普遍的な良いアプローチというものはなく、各タスクに適したツールがあるだけです。
SAD:「シングルアクターダイアログ」
ダイアログごとに1人のアクター。アクションゲームや複雑なナレーションのないゲームに通常最適です。
これは、各キーがダイアログまたはテキストの一部に対応し、ゲームエンジンで連結および組み立てられる必要があることを意味します。
このアプローチは、JRPGのように複数のキャラクター間の多くのインタラクションを伴う物語性のあるゲームに多くの複雑さをもたらす可能性があります。
MAD:「マルチアクターダイアログ」
同じダイアログに複数のアクターがタグで識別され、RPGや複数のアクターが関わる複雑なナレーションを持つゲームに最適です。
これは、タグで区切られた一連のダイアログを統合し、それがゲームエンジンによって解釈されることを意味します。
これにより、複数の対話者が関わる複雑なダイアログを俯瞰して見ることを大いに容易にしますが、例えば単純なアクションゲームには少し複雑すぎます。

ウェブ向け

あなたのツールを世界中で公開するためにも、ウェブサイトを翻訳しない理由がほとんどありません。
LSDEは、HMRや、i18nextのReact版やNext.js版のようなi18nライブラリのおかげで、リアルタイムプレビューを伴うウェブサイト開発に作業の快適さを提供します。

Q: ウェブサイトの多言語化は拡張機能に任せるべきではないのでしょうか?
A: はい、といいえ、両方です。これらのツールは一時しのぎになるかもしれませんが、あなたのウェブサイトのUXとUIを損なうでしょう。また、母国語でコンテンツを検索している人々にインデックスされ、提案されることができる翻訳されたウェブサイトとは異なり、良いSEOも期待できません。

ソフトウェア向け

ソフトウェアやアプリケーションの翻訳は非常に重要です。
ソフトウェア開発のアーキテクチャ、言語、技術は、一般的にウェブのものよりもはるかに自由です。
そのため、LSDEは、ニーズとアーキテクチャに適合させるために100%設定可能なツールを提供します。
あなたのアーキテクチャとLSDEの間の結合を作成するのは、正規表現(regex)です。