Add new i18n keys to language files

Add new localization keys across multiple ytsage language JSONs. Common addition: "filter_playlist_placeholder" added to most languages. Spanish, Turkish and Chinese receive several new strings for custom commands, proxy settings, FFmpeg installation messages, history loading, time/placeholders and validation messages. Also ensure files end with newline. Files modified: ar, de, es, fr, hi, id, it, ja, pl, pt, ru, tr, zh.
This commit is contained in:
oop7
2026-04-25 10:58:43 +03:00
parent d19ac96ff7
commit d8c3ce8fa1
13 changed files with 98 additions and 40 deletions
+2 -1
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "تصفية اللغات (مثال: ar، en)...", "filter_languages_placeholder": "تصفية اللغات (مثال: ar، en)...",
"no_subtitles_available": "لا توجد ترجمات متاحة", "no_subtitles_available": "لا توجد ترجمات متاحة",
"matching": "مطابقة", "matching": "مطابقة",
"ytdlp_log_title": "سجل yt-dlp" "ytdlp_log_title": "سجل yt-dlp",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "تسجيل الدخول بالكوكيز", "cookies": "تسجيل الدخول بالكوكيز",
+2 -1
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "Sprachen filtern (z.B. en, de)...", "filter_languages_placeholder": "Sprachen filtern (z.B. en, de)...",
"no_subtitles_available": "Keine Untertitel verfügbar", "no_subtitles_available": "Keine Untertitel verfügbar",
"matching": "passend", "matching": "passend",
"ytdlp_log_title": "yt-dlp-Protokoll" "ytdlp_log_title": "yt-dlp-Protokoll",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "Mit Cookies anmelden", "cookies": "Mit Cookies anmelden",
+25 -7
View File
@@ -17,7 +17,9 @@
"polish": "Polaco", "polish": "Polaco",
"italian": "Italiano", "italian": "Italiano",
"arabic": "Árabe", "arabic": "Árabe",
"japanese": "Japonés" "japanese": "Japonés",
"help_text": "Select your preferred language for the interface.",
"restart_notice": "Language change will take effect after restarting the application."
}, },
"app": { "app": {
"title": "YTSage", "title": "YTSage",
@@ -51,7 +53,8 @@
"deselect_all": "Deseleccionar Todos", "deselect_all": "Deseleccionar Todos",
"open_folder": "Abrir ubicación de carpeta", "open_folder": "Abrir ubicación de carpeta",
"history": "Historial", "history": "Historial",
"save_playlist": "Save Playlist As" "save_playlist": "Save Playlist As",
"custom_command_help": "Help"
}, },
"dialogs": { "dialogs": {
"custom_options": "Opciones Personalizadas", "custom_options": "Opciones Personalizadas",
@@ -63,7 +66,8 @@
"filter_languages_placeholder": "Filtrar idiomas (ej., en, es)...", "filter_languages_placeholder": "Filtrar idiomas (ej., en, es)...",
"no_subtitles_available": "No hay subtítulos disponibles", "no_subtitles_available": "No hay subtítulos disponibles",
"matching": "que coincidan con", "matching": "que coincidan con",
"ytdlp_log_title": "Registro de yt-dlp" "ytdlp_log_title": "Registro de yt-dlp",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "Iniciar sesión con Cookies", "cookies": "Iniciar sesión con Cookies",
@@ -115,7 +119,9 @@
"url_label": "📍 URL: {url}", "url_label": "📍 URL: {url}",
"args_label": "⚙️ Argumentos: {command}", "args_label": "⚙️ Argumentos: {command}",
"download_path_label": "📁 Ruta de descarga: {path}", "download_path_label": "📁 Ruta de descarga: {path}",
"separator": "==================================================" "separator": "==================================================",
"command_placeholder": "Enter custom yt-dlp command...",
"command_help": "Available placeholders:\n{url} - Video URL\n{output} - Output directory\n\nExample: --write-info-json --write-thumbnail"
}, },
"proxy": { "proxy": {
"help_text": "Configurar ajustes de proxy para conexiones de red y geo-verificación.\nEl proxy puede ayudar a evitar restricciones regionales y mejorar el rendimiento de descarga.", "help_text": "Configurar ajustes de proxy para conexiones de red y geo-verificación.\nEl proxy puede ayudar a evitar restricciones regionales y mejorar el rendimiento de descarga.",
@@ -141,7 +147,11 @@
"cleared_title": "Configuración de proxy borrada", "cleared_title": "Configuración de proxy borrada",
"cleared_message": "Se borró y guardó toda la configuración de proxy.", "cleared_message": "Se borró y guardó toda la configuración de proxy.",
"saved_main": "Proxy principal guardado: {proxy}", "saved_main": "Proxy principal guardado: {proxy}",
"saved_geo": "Proxy geo guardado: {proxy}" "saved_geo": "Proxy geo guardado: {proxy}",
"proxy_url": "Proxy URL",
"proxy_placeholder": "http://proxy:port or socks5://proxy:port",
"geo_bypass": "Geo-bypass proxy (for geographic restrictions)",
"geo_bypass_placeholder": "http://proxy:port for bypassing geo-blocks"
}, },
"download": { "download": {
"preparing": "Preparando descarga...", "preparing": "Preparando descarga...",
@@ -195,7 +205,11 @@
"high_audio": "Audio Alto", "high_audio": "Audio Alto",
"medium_audio": "Audio Medio", "medium_audio": "Audio Medio",
"low_audio": "Audio Bajo", "low_audio": "Audio Bajo",
"audio_only_resolution": "Solo audio" "audio_only_resolution": "Solo audio",
"video_format": "Video Format:",
"audio_format": "Audio Format:",
"no_formats": "No formats available",
"loading": "Loading formats..."
}, },
"about": { "about": {
"title": "Acerca de YTSage", "title": "Acerca de YTSage",
@@ -223,7 +237,11 @@
"end_time": "Tiempo de Fin:", "end_time": "Tiempo de Fin:",
"start_time_placeholder": "00:00:00 (o dejar vacío para inicio)", "start_time_placeholder": "00:00:00 (o dejar vacío para inicio)",
"end_time_placeholder": "00:10:00 (o dejar vacío para fin)", "end_time_placeholder": "00:10:00 (o dejar vacío para fin)",
"force_keyframes": "Forzar fotogramas clave en cortes (mejor precisión, más lento)" "force_keyframes": "Forzar fotogramas clave en cortes (mejor precisión, más lento)",
"start_placeholder": "00:00:00",
"end_placeholder": "00:00:00",
"invalid_format": "Invalid time format. Use HH:MM:SS format.",
"start_after_end": "Start time cannot be after end time."
}, },
"update": { "update": {
"title": "Actualizar yt-dlp", "title": "Actualizar yt-dlp",
+2 -1
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "Filtrer les langues (ex: en, fr)...", "filter_languages_placeholder": "Filtrer les langues (ex: en, fr)...",
"no_subtitles_available": "Aucun sous-titre disponible", "no_subtitles_available": "Aucun sous-titre disponible",
"matching": "correspondant", "matching": "correspondant",
"ytdlp_log_title": "Journal yt-dlp" "ytdlp_log_title": "Journal yt-dlp",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "Se connecter avec des cookies", "cookies": "Se connecter avec des cookies",
+2 -1
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "भाषाएं फ़िल्टर करें (जैसे: hi, en)...", "filter_languages_placeholder": "भाषाएं फ़िल्टर करें (जैसे: hi, en)...",
"no_subtitles_available": "कोई उपशीर्षक उपलब्ध नहीं", "no_subtitles_available": "कोई उपशीर्षक उपलब्ध नहीं",
"matching": "मेल खाता", "matching": "मेल खाता",
"ytdlp_log_title": "yt-dlp लॉग" "ytdlp_log_title": "yt-dlp लॉग",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "कुकीज़ के साथ लॉगिन", "cookies": "कुकीज़ के साथ लॉगिन",
+2 -1
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "Filter bahasa (misalnya: id, en)...", "filter_languages_placeholder": "Filter bahasa (misalnya: id, en)...",
"no_subtitles_available": "Tidak ada subtitle yang tersedia", "no_subtitles_available": "Tidak ada subtitle yang tersedia",
"matching": "yang cocok", "matching": "yang cocok",
"ytdlp_log_title": "Log yt-dlp" "ytdlp_log_title": "Log yt-dlp",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "Masuk dengan cookies", "cookies": "Masuk dengan cookies",
+2 -1
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "Filtra lingue (es: it, en)...", "filter_languages_placeholder": "Filtra lingue (es: it, en)...",
"no_subtitles_available": "Nessun sottotitolo disponibile", "no_subtitles_available": "Nessun sottotitolo disponibile",
"matching": "corrispondenti", "matching": "corrispondenti",
"ytdlp_log_title": "Registro yt-dlp" "ytdlp_log_title": "Registro yt-dlp",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "Accedi con i cookie", "cookies": "Accedi con i cookie",
+2 -1
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "言語でフィルタ (例: ja, en)...", "filter_languages_placeholder": "言語でフィルタ (例: ja, en)...",
"no_subtitles_available": "利用可能な字幕がありません", "no_subtitles_available": "利用可能な字幕がありません",
"matching": "一致", "matching": "一致",
"ytdlp_log_title": "yt-dlpログ" "ytdlp_log_title": "yt-dlpログ",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "Cookieでログイン", "cookies": "Cookieでログイン",
+2 -1
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "Filtruj języki (np: pl, en)...", "filter_languages_placeholder": "Filtruj języki (np: pl, en)...",
"no_subtitles_available": "Brak dostępnych napisów", "no_subtitles_available": "Brak dostępnych napisów",
"matching": "dopasowujące", "matching": "dopasowujące",
"ytdlp_log_title": "Log yt-dlp" "ytdlp_log_title": "Log yt-dlp",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "Zaloguj za pomocą ciasteczek", "cookies": "Zaloguj za pomocą ciasteczek",
+2 -1
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "Filtrar idiomas (ex., en, pt)...", "filter_languages_placeholder": "Filtrar idiomas (ex., en, pt)...",
"no_subtitles_available": "Nenhuma legenda disponível", "no_subtitles_available": "Nenhuma legenda disponível",
"matching": "correspondendo", "matching": "correspondendo",
"ytdlp_log_title": "Log do yt-dlp" "ytdlp_log_title": "Log do yt-dlp",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "Entrar com Cookies", "cookies": "Entrar com Cookies",
+2 -1
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "Фильтр языков (например, en, ru)...", "filter_languages_placeholder": "Фильтр языков (например, en, ru)...",
"no_subtitles_available": "Субтитры недоступны", "no_subtitles_available": "Субтитры недоступны",
"matching": "соответствующие", "matching": "соответствующие",
"ytdlp_log_title": "Журнал yt-dlp" "ytdlp_log_title": "Журнал yt-dlp",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "Войти через Cookie", "cookies": "Войти через Cookie",
+14 -4
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "Dilleri filtrele (örn: tr, en)...", "filter_languages_placeholder": "Dilleri filtrele (örn: tr, en)...",
"no_subtitles_available": "Altyazı mevcut değil", "no_subtitles_available": "Altyazı mevcut değil",
"matching": "eşleşen", "matching": "eşleşen",
"ytdlp_log_title": "yt-dlp Günlüğü" "ytdlp_log_title": "yt-dlp Günlüğü",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "Çerezlerle giriş yap", "cookies": "Çerezlerle giriş yap",
@@ -178,7 +179,9 @@
"geo_set_title": "Coğrafi proxy ayarlandı", "geo_set_title": "Coğrafi proxy ayarlandı",
"geo_set_message": "Coğrafi doğrulama proxy'si ayarlandı ve kaydedildi: {proxy}", "geo_set_message": "Coğrafi doğrulama proxy'si ayarlandı ve kaydedildi: {proxy}",
"cleared_title": "Proxy ayarları temizlendi", "cleared_title": "Proxy ayarları temizlendi",
"cleared_message": "Tüm proxy ayarları temizlendi ve kaydedildi." "cleared_message": "Tüm proxy ayarları temizlendi ve kaydedildi.",
"saved_main": "Saved main proxy: {proxy}",
"saved_geo": "Saved geo proxy: {proxy}"
}, },
"download": { "download": {
"preparing": "İndirme hazırlanıyor...", "preparing": "İndirme hazırlanıyor...",
@@ -549,14 +552,21 @@
"redownload_confirm_message": "Tekrar indir?\n\n{title}", "redownload_confirm_message": "Tekrar indir?\n\n{title}",
"redownload_started": "İndirme başladı", "redownload_started": "İndirme başladı",
"no_url_error": "Geçmiş kaydında URL bulunamadı", "no_url_error": "Geçmiş kaydında URL bulunamadı",
"redownload_failed": "Yeniden indirme başlatılamadı: {error}" "redownload_failed": "Yeniden indirme başlatılamadı: {error}",
"loading": "Loading history..."
}, },
"ffmpeg": { "ffmpeg": {
"installation_title": "FFmpeg Kurulumu", "installation_title": "FFmpeg Kurulumu",
"installation_message": "YTSage, videoları işlemek için FFmpeg'e ihtiyaç duyar.\n\nAşağıdan bir kurulum seçeneği seçin:", "installation_message": "YTSage, videoları işlemek için FFmpeg'e ihtiyaç duyar.\n\nAşağıdan bir kurulum seçeneği seçin:",
"install_button": "FFmpeg Kur", "install_button": "FFmpeg Kur",
"manual_guide": "Manuel Kılavuz", "manual_guide": "Manuel Kılavuz",
"installation_failed": "FFmpeg kurulumu bir sorunla karşılaştı." "installation_failed": "FFmpeg kurulumu bir sorunla karşılaştı.",
"already_installed": "FFmpeg is already installed!",
"installation_complete": "Installation complete. You can close this dialog and continue using YTSage.",
"installing": "Installing FFmpeg... Please wait",
"install_success": "FFmpeg has been installed successfully!",
"installation_complete_close": "Installation complete. You can now close this dialog and continue using YTSage.",
"try_manual": "Please try using the manual installation guide instead."
}, },
"ytdlp_setup": { "ytdlp_setup": {
"required_title": "yt-dlp Kurulumu Gerekli", "required_title": "yt-dlp Kurulumu Gerekli",
+26 -6
View File
@@ -96,7 +96,8 @@
"filter_languages_placeholder": "过滤语言(例如:en, zh...", "filter_languages_placeholder": "过滤语言(例如:en, zh...",
"no_subtitles_available": "无可用字幕", "no_subtitles_available": "无可用字幕",
"matching": "匹配", "matching": "匹配",
"ytdlp_log_title": "yt-dlp 日志" "ytdlp_log_title": "yt-dlp 日志",
"filter_playlist_placeholder": "Filter videos..."
}, },
"tabs": { "tabs": {
"cookies": "使用 Cookie 登录", "cookies": "使用 Cookie 登录",
@@ -127,7 +128,10 @@
"browser_selected_title": "已应用浏览器 Cookie", "browser_selected_title": "已应用浏览器 Cookie",
"browser_applied_message": "将从以下位置提取浏览器 cookie{browser}", "browser_applied_message": "将从以下位置提取浏览器 cookie{browser}",
"cleared_title": "已清除 Cookie", "cleared_title": "已清除 Cookie",
"cleared_message": "Cookie 设置已被清除" "cleared_message": "Cookie 设置已被清除",
"active_browser": "✓ Active: Browser cookies ({browser})",
"active_file": "✓ Active: Cookie file ({file})",
"none_active": "○ No cookies active"
}, },
"custom_command": { "custom_command": {
"help_text": "在下面输入您的自定义 yt-dlp 命令。当前网址将自动附加。<br><br>有关选项和使用示例的完整列表,<a href=\"{docs_url}\">点击此处查看官方 yt-dlp 文档</a>。<br><br>注意:下载路径和文件名模板将自动处理。", "help_text": "在下面输入您的自定义 yt-dlp 命令。当前网址将自动附加。<br><br>有关选项和使用示例的完整列表,<a href=\"{docs_url}\">点击此处查看官方 yt-dlp 文档</a>。<br><br>注意:下载路径和文件名模板将自动处理。",
@@ -140,7 +144,14 @@
"full_command": "🔧 完整命令:{command}", "full_command": "🔧 完整命令:{command}",
"command_success": "✅ 自定义命令执行成功!", "command_success": "✅ 自定义命令执行成功!",
"command_failed": "❌ 命令失败,退出代码 {code}", "command_failed": "❌ 命令失败,退出代码 {code}",
"command_error": "❌ 执行自定义命令时出错:{error}" "command_error": "❌ 执行自定义命令时出错:{error}",
"error_no_url": "❌ Error: No URL provided. Please enter a URL in the main window.",
"error_no_command": "❌ Error: No command provided. Please enter yt-dlp arguments.",
"executing": "🚀 Executing custom yt-dlp command",
"url_label": "📍 URL: {url}",
"args_label": "⚙️ Arguments: {command}",
"download_path_label": "📁 Download path: {path}",
"separator": "=================================================="
}, },
"proxy": { "proxy": {
"help_text": "配置下载的代理设置。留空使用直接连接。", "help_text": "配置下载的代理设置。留空使用直接连接。",
@@ -168,7 +179,9 @@
"geo_set_title": "已设置地理代理", "geo_set_title": "已设置地理代理",
"geo_set_message": "地理验证代理已设置并保存: {proxy}", "geo_set_message": "地理验证代理已设置并保存: {proxy}",
"cleared_title": "代理设置已清除", "cleared_title": "代理设置已清除",
"cleared_message": "所有代理设置已清除并保存。" "cleared_message": "所有代理设置已清除并保存。",
"saved_main": "Saved main proxy: {proxy}",
"saved_geo": "Saved geo proxy: {proxy}"
}, },
"download": { "download": {
"preparing": "正在准备下载...", "preparing": "正在准备下载...",
@@ -539,14 +552,21 @@
"redownload_confirm_message": "重新下载?\n\n{title}", "redownload_confirm_message": "重新下载?\n\n{title}",
"redownload_started": "已开始下载", "redownload_started": "已开始下载",
"no_url_error": "历史记录中未找到 URL", "no_url_error": "历史记录中未找到 URL",
"redownload_failed": "无法开始重新下载: {error}" "redownload_failed": "无法开始重新下载: {error}",
"loading": "Loading history..."
}, },
"ffmpeg": { "ffmpeg": {
"installation_title": "FFmpeg 安装", "installation_title": "FFmpeg 安装",
"installation_message": "YTSage 需要 FFmpeg 来处理视频。\n\n请选择下面的安装选项:", "installation_message": "YTSage 需要 FFmpeg 来处理视频。\n\n请选择下面的安装选项:",
"install_button": "安装 FFmpeg", "install_button": "安装 FFmpeg",
"manual_guide": "手动指南", "manual_guide": "手动指南",
"installation_failed": "FFmpeg 安装遇到问题。" "installation_failed": "FFmpeg 安装遇到问题。",
"already_installed": "FFmpeg is already installed!",
"installation_complete": "Installation complete. You can close this dialog and continue using YTSage.",
"installing": "Installing FFmpeg... Please wait",
"install_success": "FFmpeg has been installed successfully!",
"installation_complete_close": "Installation complete. You can now close this dialog and continue using YTSage.",
"try_manual": "Please try using the manual installation guide instead."
}, },
"ytdlp_setup": { "ytdlp_setup": {
"required_title": "需要设置 yt-dlp", "required_title": "需要设置 yt-dlp",