i18n: complete and polish the Japanese catalog

Add the 20 strings the Japanese catalog was missing (caption track
deletion, panel docking, eyedropper, edit point trim types, transport
overflow, effect shutter angle), update the hardware decoding note to the
current English source (NVDEC), and fix house-style slips (half-width
parentheses, a space before パネル, 長さ for Duration, Replicate no longer
shares 複製 with Duplicate).

Add a test that requires a Japanese entry for every menu label, tl!
literal and dynamic name, as the Chinese catalog already has.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
FacedFour1207 2026-10-11 16:34:15 +09:00
parent 4e2d0bc2d3
commit 4da2c0ce40
2 changed files with 57 additions and 5 deletions

View File

@ -1819,7 +1819,7 @@
Hard Limiter ハードリミッター
Hard Mix ハードミックス
Hardware decoding ハードウェアデコード
Hardware decoding: Auto uses the system's video decoder (VideoToolbox on macOS, Media Foundation on Windows, VA-API for H.264 and HEVC on Linux) for the streams it supports, and FilmCraft's own decoder for everything else or if the hardware fails. Media that is already open keeps its decoder until it is reopened. ハードウェアデコード: 「自動」では、対応しているストリームにはシステムのビデオデコーダー (macOS では VideoToolbox、Windows では Media Foundation、Linux では H.264・HEVC 用の VA-API) を使用し、それ以外のストリームや、ハードウェアで失敗した場合は FilmCraft 独自のデコーダーを使用します。すでに開いているメディアは、開き直すまで現在のデコーダーを使い続けます。
Hardware decoding: Auto uses the system's video decoder (VideoToolbox on macOS, Media Foundation on Windows, VA-API or NVDEC for H.264 and HEVC on Linux) for the streams it supports, and FilmCraft's own decoder for everything else or if the hardware fails. Media that is already open keeps its decoder until it is reopened. ハードウェアデコード: 「自動」では、対応しているストリームにはシステムのビデオデコーダー (macOS では VideoToolbox、Windows では Media Foundation、Linux では H.264・HEVC 用の VA-API または NVDEC) を使用し、それ以外のストリームや、ハードウェアで失敗した場合は FilmCraft 独自のデコーダーを使用します。すでに開いているメディアは、開き直すまで現在のデコーダーを使い続けます。
Head Size 頭部サイズ
Heart ハート
Height 高さ
@ -2282,7 +2282,7 @@
Repeat Edge Pixels エッジピクセルを繰り返す
Replace Color 置換後の色
Replace With Clip From Source Monitor ソースモニターのクリップで置換
Replicate 複製
Replicate レプリケート
Responsive Design - Position レスポンシブデザイン - 位置
Responsive Design - Time レスポンシブデザイン - 時間
Restore open sequences when opening projects プロジェクトを開くときに、開いていたシーケンスを復元する
@ -2839,7 +2839,7 @@
Keyboard: US キーボード: US 配列
Save preset as: 保存するプリセット名:
Commands: コマンド:
{panel} Panel {panel}パネル
{panel} Panel {panel} パネル
Application shortcuts work whatever panel has focus アプリケーションのショートカットは、どのパネルにフォーカスがあっても機能します
Panel shortcuts override application shortcuts while that panel has focus パネルのショートカットは、そのパネルにフォーカスがある間、アプリケーションのショートカットより優先されます
Modifier held / selected 押下中 / 選択中の修飾キー
@ -2981,7 +2981,7 @@
Apple ProRes 422 LT Apple ProRes 422 LT
Apple ProRes 422 Proxy Apple ProRes 422 Proxy
Apple ProRes 4444 Apple ProRes 4444
Apple ProRes 4444 with Alpha Apple ProRes 4444(アルファ付き)
Apple ProRes 4444 with Alpha Apple ProRes 4444 (アルファ付き)
Apple ProRes 4444 XQ Apple ProRes 4444 XQ
Application アプリケーション
Apply Guide Template ガイドテンプレートを適用
@ -3537,10 +3537,30 @@
Text to Speech テキスト読み上げ
Edit Narration ナレーションを編集
Clear Transition トランジションを消去
Set Transition Duration トランジションのデュレーションを設定
Set Transition Duration トランジションの長さを設定
Refresh Changed Media 変更されたメディアを更新
Project Notes プロジェクトメモ
Get Project Notes プロジェクトメモを取得
Edit Project Notes プロジェクトメモを編集
Notes for this project: to-dos, instructions, frame numbers… Saved with the project. このプロジェクトのメモ: やること、指示、フレーム番号など… プロジェクトと一緒に保存されます。
GPU acceleration is unavailable; preview renders on the CPU GPU アクセラレーションを利用できません。プレビューは CPU でレンダリングされます
Caption Tracks キャプショントラック
Delete Caption Track キャプショントラックを削除
Delete Caption Tracks キャプショントラックを削除
Delete Empty Caption Tracks 空のキャプショントラックを削除
Dock Panel パネルをドッキング
Undock Panel パネルのドッキングを解除
Docking Action ドッキング操作
Resize floating panel フローティングパネルのサイズを変更
Eyedropper (pick a color from the Program monitor) スポイト (プログラムモニターから色を取得)
Eyedropper: no picture to sample スポイト: 色を取得できる画像がありません
In イン
Out アウト
More transport controls その他の再生コントロール
Ripple Trim In リップルトリム (イン)
Ripple Trim Out リップルトリム (アウト)
Roll Edit ロール編集
Trim In トリム (イン)
Trim Out トリム (アウト)
Use Effect Shutter Angle エフェクトのシャッター角度を使用

Can't render this file because it contains an unexpected character in line 11 and column 59.

View File

@ -484,6 +484,38 @@ mod tests {
assert!(missing.is_empty(), "untranslated Chinese strings: {missing:#?}");
}
/// The Japanese catalog is complete: every menu label, every `tl!` literal and every name the
/// interface translates through `i18n::t`.
#[test]
fn japanese_translates_every_menu_label_tl_literal_and_name() {
let app = crate::FilmcraftApp::new(filmcraft_engine::Session::default());
let mut missing: Vec<String> = Vec::new();
let mut need = |text: &str| {
if translatable(text) && !Language::Ja.has(text) && !missing.iter().any(|m| m == text) {
missing.push(text.to_string());
}
};
for top in crate::menus::MENUS {
need(top);
}
for it in crate::menus::menu_items(&app) {
need(&it.label);
for p in &it.path {
need(p);
}
}
for (_, text) in sources() {
for lit in tl_literals(&text) {
need(&lit);
}
}
for name in dynamic_names() {
need(&name);
}
missing.sort();
assert!(missing.is_empty(), "untranslated Japanese strings: {missing:#?}");
}
/// Chinese switches and persists like the other languages when a Chinese face is available,
/// and is refused (the interface stays as it was) without one.
#[test]