Skip to content

ja Custom Languages

animeojisan edited this page Sep 4, 2026 · 1 revision

言語ファイルを追加する

English | 日本語

cHiDeScaler-Neo は、標準収録されていない言語をユーザー自身で追加できる設計になっています。

Neo本体を改造・再ビルドする必要はありません。
翻訳したJSONファイルをNeoの locales/ フォルダーへ追加すると、次回起動時に自動検出されて Language メニューへ追加されます。


標準収録言語

Neo v697では次の言語を標準収録しています。

言語 ファイル
日本語 ja-JP.json
English en-US.json
简体中文 zh-CN.json
繁體中文(台灣) zh-TW.json
한국어 ko-KR.json
Português (Brasil) pt-BR.json
Español es.json
Français fr-FR.json
Deutsch de-DE.json

es.json はNeoでは汎用スペイン語タグ es として使用しています。
es-ES.json へ単純にリネームしないでください。


新しい言語を追加する

1. locales フォルダーを開く

Neoのフォルダー内にある、

cHiDeScaler-Neo/
└─ locales/

を開きます。

外部から追加した言語JSONも、この locales/ 直下へ配置します。


2. en-US.json をコピーする

翻訳の基準として、

locales/en-US.json

をコピーしてください。

英語版がNeoの翻訳キーの基準です。

GitHub上でも確認できます。


3. ファイル名を言語タグへ変更する

コピーしたJSONを、追加したい言語の BCP 47言語タグを使った名前へ変更します。

イタリア語の例:

en-US.json
↓
it-IT.json

最終的な配置:

cHiDeScaler-Neo/
└─ locales/
   ├─ en-US.json
   ├─ ja-JP.json
   ├─ ...
   └─ it-IT.json

言語タグの参考:


4. 先頭の言語情報を書き換える

JSON先頭にある次の3項目を変更します。

イタリア語の例:

{
  "_language_name": "Italiano",
  "_language_code": "IT",
  "_language_tag": "it-IT"
}

_language_name

Languageメニューに表示する言語名です。

その言語自身で記述することを推奨します。

例:

"_language_name": "Italiano"

_language_code

NeoのLanguageボタン内に表示する短いコードです。

例:

"_language_code": "IT"

GUI表示を考慮し、2~4文字程度の短い表記を推奨します。

_language_tag

言語を識別するBCP 47タグです。

例:

"_language_tag": "it-IT"

通常はJSONのファイル名と同じタグにしてください。


5. 値だけを翻訳する

例えば英語版に、

"capture.start": "▶ Start"

とある場合、

"capture.start": "▶ Avvia"

のように右側の値だけを翻訳します。

キー名は変更しない

次の左側:

"capture.start"

はNeoが翻訳を探すためのキーなので変更しないでください。


プレースホルダーを変更しない

翻訳文の中に、

{name}

のような {...} がある場合は、その部分を削除・翻訳・変更しないでください。

例:

"preset.delete_confirm": "Delete preset '{name}'?"

イタリア語に翻訳する場合でも、

"preset.delete_confirm": "Eliminare il preset '{name}'?"

のように {name} はそのまま残します。


全項目を一度に翻訳しなくても動作します

Neoのカスタム言語は、存在しない翻訳キーを自動的に英語へフォールバックします。

そのため、翻訳途中でも使用できます。

例えば:

{
  "_language_name": "Italiano",
  "_language_code": "IT",
  "_language_tag": "it-IT",

  "capture.start": "▶ Avvia",
  "capture.stop": "Ferma"
}

のような部分翻訳でも、存在しない項目は英語で表示されます。

ただしNeoがカスタム言語として認識するため、少なくとも

"capture.start"

は含めてください。

実際に配布・公開する翻訳では、en-US.json を基準にできるだけ全項目を翻訳することを推奨します。


6. Neoを再起動する

JSONを保存したらNeoを一度終了し、再起動してください。

Neoは起動時に、

locales/*.json

を検索してカスタム言語を読み込みます。

正常に読み込まれると、Language メニューに例えば、

Italiano [IT]

のように追加されます。

その項目を選択すれば、追加した翻訳へ切り替わります。


読み込まれない場合

JSONの文法を確認する

カンマの不足、余分なカンマ、引用符の不足などがある不正JSONは読み込まれません。

例:

{
  "_language_name": "Italiano",
  "_language_code": "IT",
  "_language_tag": "it-IT",
  "capture.start": "▶ Avvia"
}

JSONエディターやJSON Validatorで確認すると原因を見つけやすくなります。


capture.start が存在するか確認

Neoは、ユーザーが誤って別用途のJSONを locales/ に入れた場合に言語ファイルとして扱わないよう、

capture.start

が存在しないカスタムJSONを無視します。

en-US.json をコピーして作成するのが最も安全です。


標準言語と同じファイル名を使わない

次の名前はNeo標準言語として予約されています。

ja-JP.json
en-US.json
zh-CN.json
zh-TW.json
ko-KR.json
pt-BR.json
es.json
fr-FR.json
de-DE.json

ユーザー追加言語には別の言語タグを使用してください。

例えばイタリア語なら:

it-IT.json

locales のサブフォルダーへ入れない

カスタム言語JSONは、

locales/

直下へ配置してください。

例:

locales/it-IT.json

一部の統計表示について

ユーザー追加言語を選択している場合でも、Neoの一部のステータス・統計情報は内部診断との整合性を保つため英語表示になる場合があります。

通常のGUI項目でカスタムJSONに翻訳が存在しない場合は、英語へフォールバックします。


翻訳を更新するとき

NeoのアップデートでGUI項目が増えると、新しい翻訳キーが追加される場合があります。

アップデート後は最新の、

と自分の言語JSONを比較し、追加されたキーを翻訳してください。

不足しているキーがあってもNeoは英語へフォールバックするため、古い翻訳JSONが原因でGUI全体が使用不能になることはありません。


翻訳を共有する

作成した言語ファイルは、

<BCP 47 tag>.json

1ファイルで共有できます。

利用者はそのJSONを、

cHiDeScaler-Neo/locales/

へコピーしてNeoを再起動するだけで使用できます。

Neo本体のEXEやソースコードを変更する必要はありません。

Clone this wiki locally