828f105c92
Added Polish translations in a new pl.json file and updated all language files to include 'polish' in the language selection. Extended the quality color mapping in ytsage_gui_format_table.py to recognize Polish terms for best, high, medium, and low quality. Updated the default language list in ytsage_localization.py to include Polish.
336 lines
17 KiB
JSON
336 lines
17 KiB
JSON
{
|
|
"language": {
|
|
"display_name": "Português (Portuguese)",
|
|
"select_language": "Selecionar idioma:",
|
|
"current_language": "Idioma atual: {language}",
|
|
"restart_required": "As alterações de idioma terão efeito após reiniciar a aplicação.",
|
|
"english": "Inglês",
|
|
"spanish": "Espanhol",
|
|
"portuguese": "Português",
|
|
"russian": "Русский (Russian)",
|
|
"chinese": "中文 (简体) (Chinese Simplified)",
|
|
"german": "Alemão",
|
|
"french": "Francês",
|
|
"hindi": "Hindi",
|
|
"indonesian": "Indonésio",
|
|
"turkish": "Turco",
|
|
"polish": "Polonês",
|
|
"help_text": "Selecione seu idioma preferido para a interface.",
|
|
"restart_notice": "A alteração de idioma terá efeito após reiniciar a aplicação."
|
|
},
|
|
"app": {
|
|
"title": "YTSage",
|
|
"version": "v{version}",
|
|
"ready": "Pronto"
|
|
},
|
|
"formats": {
|
|
"show_formats": "Mostrar Formatos:",
|
|
"video_format": "Formato de Vídeo:",
|
|
"audio_format": "Formato de Áudio:",
|
|
"no_formats": "Nenhum formato disponível",
|
|
"loading": "Carregando formatos...",
|
|
"select": "Selecionar",
|
|
"quality": "Qualidade",
|
|
"extension": "Extensão",
|
|
"resolution": "Resolução",
|
|
"file_size": "Tamanho do Arquivo",
|
|
"codec": "Codec",
|
|
"audio": "Áudio",
|
|
"notes": "Notas",
|
|
"will_merge_audio": "Irá mesclar áudio",
|
|
"has_audio": "✓ Tem Áudio",
|
|
"audio_only": "Apenas Áudio",
|
|
"large_size": "Tamanho grande",
|
|
"medium_size": "Tamanho médio",
|
|
"standard_size": "Tamanho padrão",
|
|
"compatible": "Compatível",
|
|
"efficient": "Eficiente",
|
|
"high_quality": "Alta qualidade",
|
|
"best_4k": "Melhor (4K)",
|
|
"best_2k": "Melhor (2K)",
|
|
"high_1080p": "Alta (1080p)",
|
|
"high_720p": "Alta (720p)",
|
|
"medium_480p": "Média (480p)",
|
|
"low_quality": "Baixa Qualidade",
|
|
"best_audio": "Melhor Áudio",
|
|
"high_audio": "Áudio Alto",
|
|
"medium_audio": "Áudio Médio",
|
|
"low_audio": "Áudio Baixo",
|
|
"audio_only_resolution": "Apenas áudio"
|
|
},
|
|
"buttons": {
|
|
"download": "Baixar",
|
|
"pause": "Pausar",
|
|
"resume": "Retomar",
|
|
"cancel": "Cancelar",
|
|
"browse": "Procurar",
|
|
"clear": "Limpar",
|
|
"ok": "OK",
|
|
"apply": "Aplicar",
|
|
"close": "Fechar",
|
|
"run_command": "Executar Comando",
|
|
"custom_command_help": "Ajuda",
|
|
"about": "Sobre",
|
|
"analyze": "Analisar",
|
|
"paste_url": "Colar URL",
|
|
"select_videos": "Selecionar Vídeos...",
|
|
"video": "Vídeo",
|
|
"audio_only": "Apenas Áudio",
|
|
"custom_options": "Opções Personalizadas",
|
|
"trim_video": "Cortar Vídeo",
|
|
"download_settings": "Configurações de Download",
|
|
"update": "Atualizar yt-dlp",
|
|
"select_defaults": "Selecionar Padrões",
|
|
"select_all": "Selecionar Tudo",
|
|
"deselect_all": "Desmarcar Tudo"
|
|
},
|
|
"dialogs": {
|
|
"custom_options": "Opções Personalizadas",
|
|
"settings": "Configurações",
|
|
"select_folder": "Selecionar Pasta de Download",
|
|
"sponsorblock_categories": "Categorias SponsorBlock",
|
|
"sponsorblock_description": "Selecione quais tipos de segmentos de vídeo serão removidos automaticamente durante o download.\nO SponsorBlock usa dados enviados pela comunidade para identificar esses segmentos.",
|
|
"select_subtitles": "Selecionar Legendas",
|
|
"filter_languages_placeholder": "Filtrar idiomas (ex., en, pt)...",
|
|
"no_subtitles_available": "Nenhuma legenda disponível",
|
|
"matching": "correspondendo"
|
|
},
|
|
"tabs": {
|
|
"cookies": "Entrar com Cookies",
|
|
"custom_command": "Comando Personalizado",
|
|
"proxy": "Proxy",
|
|
"language": "Idioma"
|
|
},
|
|
"cookies": {
|
|
"help_text": "Escolha como fornecer cookies para fazer login.\nIsso permite baixar vídeos privados e áudio de qualidade premium.",
|
|
"cookie_source": "Fonte de Cookies",
|
|
"use_cookie_file": "Usar arquivo de cookies",
|
|
"extract_from_browser": "Extrair do navegador",
|
|
"cookie_file": "Arquivo de Cookies",
|
|
"cookie_file_placeholder": "Caminho para o arquivo cookies.txt...",
|
|
"browser_selection": "Seleção de Navegador",
|
|
"browser_help": "Selecione o navegador do qual extrair cookies:",
|
|
"browser_label": "Navegador:",
|
|
"profile_label": "Perfil:",
|
|
"profile_placeholder": "padrão",
|
|
"browser_extract_message": "Os cookies do navegador serão extraídos quando aplicados",
|
|
"file_selected_message": "Arquivo de cookies selecionado - Clique em OK para aplicar",
|
|
"select_file_title": "Selecionar Arquivo de Cookies",
|
|
"file_filter": "Arquivos de cookies (*.txt *.lwp)"
|
|
},
|
|
"custom_command": {
|
|
"help_text": "Digite seu comando yt-dlp personalizado abaixo. A URL atual será anexada automaticamente.<br><br>Para a lista completa de opções e exemplos de uso, <a href=\"{docs_url}\">clique aqui para ver a documentação oficial do yt-dlp</a>.<br><br>Nota: O caminho de download e modelo de nome de arquivo serão tratados automaticamente.",
|
|
"input_label": "Argumentos yt-dlp:",
|
|
"input_placeholder": "Digite os argumentos yt-dlp aqui...\n\nex. --extract-audio --audio-format mp3",
|
|
"output_label": "Saída do Comando:",
|
|
"output_placeholder": "A saída do comando aparecerá aqui...",
|
|
"command_placeholder": "Digite comando yt-dlp personalizado...",
|
|
"command_help": "Marcadores disponíveis:\n{url} - URL do Vídeo\n{output} - Diretório de saída\n\nExemplo: --write-info-json --write-thumbnail",
|
|
"full_command": "🔧 Comando completo: {command}",
|
|
"command_success": "✅ Comando personalizado executado com sucesso!",
|
|
"command_failed": "❌ Comando falhou com código de saída {code}",
|
|
"command_error": "❌ Erro ao executar comando personalizado: {error}"
|
|
},
|
|
"proxy": {
|
|
"help_text": "Configure as definições de proxy para download. Deixe vazio para usar conexão direta.",
|
|
"main_proxy": "Proxy Principal",
|
|
"main_proxy_help": "Servidor proxy principal para todos os downloads. Suporta protocolos HTTP/HTTPS e SOCKS5.",
|
|
"proxy_url_label": "URL do Proxy:",
|
|
"proxy_url_placeholder": "http://proxy:porta ou socks5://proxy:porta",
|
|
"proxy_examples": "Exemplos:\n• HTTP: http://proxy.exemplo.com:8080\n• SOCKS5: socks5://proxy.exemplo.com:1080",
|
|
"geo_proxy": "Proxy de Contorno Geográfico",
|
|
"geo_proxy_help": "Proxy secundário especificamente para contornar restrições geográficas.",
|
|
"geo_proxy_url_label": "URL do Proxy de Contorno Geográfico:",
|
|
"geo_proxy_url_placeholder": "http://geo-proxy:porta",
|
|
"clear_main_proxy": "Limpar Proxy Principal",
|
|
"clear_geo_proxy": "Limpar Proxy Geográfico",
|
|
"proxy_url": "URL do Proxy",
|
|
"proxy_placeholder": "http://proxy:porta ou socks5://proxy:porta",
|
|
"geo_bypass": "Proxy de contorno geográfico (para restrições geográficas)",
|
|
"geo_bypass_placeholder": "http://proxy:porta para contornar bloqueios geográficos",
|
|
"invalid_main_url": "Formato de URL do proxy principal inválido",
|
|
"invalid_geo_url": "Formato de URL do proxy geográfico inválido",
|
|
"main_configured": "Proxy principal configurado",
|
|
"geo_configured": "Proxy geográfico configurado"
|
|
},
|
|
|
|
"download": {
|
|
"preparing": "Preparando download...",
|
|
"please_enter_url": "Por favor, digite uma URL primeiro.",
|
|
"please_set_path": "Por favor, defina um caminho de download primeiro.",
|
|
"please_enter_url_and_path": "Por favor, digite uma URL e defina o caminho de download.",
|
|
"please_select_format": "Por favor, selecione um formato primeiro."
|
|
},
|
|
"update": {
|
|
"title": "Atualizar yt-dlp",
|
|
"checking": "Verificando atualizações...",
|
|
"update_available": "Atualização disponível!\nVersão atual: {current}\nÚltima versão: {latest}",
|
|
"up_to_date": "yt-dlp está atualizado (versão {version})",
|
|
"could_not_determine": "Não foi possível determinar as versões.",
|
|
"error_comparing": "Erro ao comparar versões: {error}",
|
|
"update_available_failed": "Atualização disponível! (Comparação falhou)\nAtual: {current}\nÚltima: {latest}",
|
|
"updating": "Atualizando...",
|
|
"initializing": "🚀 Inicializando processo de atualização...",
|
|
"checking_current": "🔍 Verificando instalação atual...",
|
|
"found_at": "📍 yt-dlp encontrado em: {path}",
|
|
"error_getting_path": "❌ Erro ao obter caminho do yt-dlp: {error}",
|
|
"updating_binary": "📦 Atualizando binário yt-dlp gerenciado pela aplicação...",
|
|
"updating_pip": "🐍 Atualizando yt-dlp do sistema via pip...",
|
|
"update_failed": "❌ Falha ao atualizar yt-dlp. Tente novamente ou verifique sua conexão com a internet.",
|
|
"binary_updated": "✅ Binário atualizado com sucesso!",
|
|
"update_failed_stderr": "❌ Atualização do yt-dlp falhou: {error}",
|
|
"update_timeout": "❌ Atualização do yt-dlp expirou.",
|
|
"unexpected_error": "❌ Erro inesperado durante atualização: {error}",
|
|
"checking_pip": "🔍 Verificando instalação pip atual...",
|
|
"current_version": "📋 Versão atual: {version}",
|
|
"not_found_pip": "⚠️ yt-dlp não encontrado via pip, tentando instalação...",
|
|
"checking_latest": "🌐 Verificando última versão...",
|
|
"failed_check_updates": "❌ Falha ao verificar atualizações",
|
|
"latest_version": "🆕 Última versão: {version}",
|
|
"updating_from_to": "⬆️ Atualizando de {current} para {latest}...",
|
|
"running_pip_install": "📦 Executando pip install --upgrade...",
|
|
"pip_completed": "✅ Atualização pip concluída com sucesso!",
|
|
"pip_failed": "❌ Atualização pip falhou: {error}"
|
|
},
|
|
"about": {
|
|
"title": "Sobre YTSage",
|
|
"version": "Versão {version}",
|
|
"description": "Downloader moderno do YouTube com interface limpa em PySide6.",
|
|
"author": "Por: {author}",
|
|
"github": "GitHub: {repo}",
|
|
"system_info": "Informações do Sistema",
|
|
"loading": "🔄 Carregando informações do sistema...",
|
|
"refresh": "🔄",
|
|
"refreshing": "🔄 Atualizando...",
|
|
"refresh_failed": "Atualização Falhou",
|
|
"refresh_failed_message": "Não foi possível atualizar as informações de versão.",
|
|
"detected": "✓ Detectado",
|
|
"missing": "✗ Ausente",
|
|
"not_available": "Não Disponível"
|
|
},
|
|
"time_range": {
|
|
"title": "Cortar Vídeo",
|
|
"time_range_group": "Intervalo de Tempo",
|
|
"start_time": "Tempo de Início (HH:MM:SS)",
|
|
"end_time": "Tempo de Fim (HH:MM:SS)",
|
|
"start_placeholder": "00:00:00",
|
|
"end_placeholder": "00:00:00",
|
|
"start_time_placeholder": "Tempo de início (HH:MM:SS)",
|
|
"end_time_placeholder": "Tempo de fim (HH:MM:SS)",
|
|
"force_keyframes": "Forçar quadros-chave nos pontos de corte",
|
|
"help_text": "Defina os tempos de início e fim para cortar o vídeo.\nDeixe vazio para baixar o vídeo completo.",
|
|
"invalid_format": "Formato de tempo inválido. Use o formato HH:MM:SS.",
|
|
"start_after_end": "O tempo de início não pode ser após o tempo de fim."
|
|
},
|
|
"settings": {
|
|
"title": "Configurações de Download",
|
|
"download_path": "Caminho de Download",
|
|
"browse": "Procurar...",
|
|
"speed_limit": "Limite de Velocidade",
|
|
"speed_limit_placeholder": "Nenhum",
|
|
"auto_update_ytdlp": "Auto-Atualizar yt-dlp",
|
|
"enable_auto_updates": "Habilitar atualizações automáticas do yt-dlp",
|
|
"update_frequency": "Frequência de atualização:",
|
|
"check_startup": "Verificar a cada inicialização (mínimo 1 hora entre verificações)",
|
|
"check_daily": "Verificar diariamente",
|
|
"check_weekly": "Verificar semanalmente",
|
|
"check_updates_now": "Verificar Atualizações Agora",
|
|
"update_check_title": "Verificação de Atualização",
|
|
"could_not_determine_version": "Não foi possível determinar a versão atual do yt-dlp.",
|
|
"update_available_dialog": "Atualização disponível!\n\nAtual: {current}\nÚltima: {latest}\n\nUse o botão 'Atualizar yt-dlp' na janela principal para atualizar.",
|
|
"up_to_date_dialog": "yt-dlp está atualizado!\n\nVersão atual: {version}",
|
|
"error_checking_updates": "Erro ao verificar atualizações: {error}",
|
|
"settings_saved_title": "Configurações Salvas",
|
|
"settings_saved_message": "Configurações de auto-atualização foram salvas com sucesso!",
|
|
"error_title": "Erro",
|
|
"failed_save_settings": "Falha ao salvar configurações de auto-atualização.",
|
|
"error_saving_settings": "Erro ao salvar configurações de auto-atualização: {error}",
|
|
"auto_update_title": "Configurações de Auto-Atualização",
|
|
"auto_update_header": "🔄 Configurações de Auto-Atualização",
|
|
"auto_update_description": "Configure atualizações automáticas para o yt-dlp para garantir que você sempre tenha os recursos mais recentes e correções de bugs.",
|
|
"current_status": "Status Atual",
|
|
"current_version_label": "Versão atual do yt-dlp: Verificando...",
|
|
"last_check_label": "Última verificação de atualização: Nunca",
|
|
"next_check_label": "Próxima verificação: Baseada nas configurações",
|
|
"manual_check_button": "🔍 Verificar Atualizações Agora",
|
|
"update_frequency_group": "Frequência de Atualização",
|
|
"save_settings": "Salvar Configurações",
|
|
"settings_saved_successfully": "✅ Configurações salvas com sucesso!",
|
|
"error_saving": "❌ Erro ao salvar configurações: {error}"
|
|
},
|
|
"main_ui": {
|
|
"url_placeholder": "Digite a URL do vídeo ou playlist do YouTube",
|
|
"merge_subtitles": "Mesclar Legendas",
|
|
"save_thumbnail": "Salvar Miniatura",
|
|
"save_description": "Salvar Descrição",
|
|
"embed_chapters": "Incorporar Capítulos",
|
|
"subtitles_selected": "{count} selecionadas",
|
|
"all_selected": "Todas selecionadas",
|
|
"select_videos_all": "Selecionar Vídeos... (Todas selecionadas)",
|
|
"please_enter_url": "Por favor, digite uma URL primeiro",
|
|
"cookie_file_selected_title": "Arquivo de Cookies Selecionado",
|
|
"cookie_file_selected_message": "Arquivo de cookies selecionado: {path}",
|
|
"browser_cookies_selected_title": "Cookies do Navegador Selecionados",
|
|
"browser_cookies_selected_message": "Os cookies do navegador serão extraídos de: {browser}",
|
|
"error_no_format_info": "Erro: Nenhuma informação de formato disponível.",
|
|
"error_extract_info": "Erro: Não foi possível extrair informações básicas do vídeo. Verifique seu link.",
|
|
"analyzing_preparing": "Analisando (0%)... Preparando solicitação",
|
|
"analyzing_extracting_basic": "Analisando (15%)... Extraindo informações básicas",
|
|
"analyzing_extracting_detailed": "Analisando (30%)... Extraindo informações detalhadas",
|
|
"analyzing_processing_video": "Analisando (45%)... Processando dados do vídeo",
|
|
"analyzing_processing_formats": "Analisando (60%)... Processando formatos",
|
|
"analyzing_loading_thumbnail": "Analisando (75%)... Carregando miniatura",
|
|
"analyzing_processing_subtitles": "Analisando (85%)... Processando legendas",
|
|
"analyzing_updating_table": "Analisando (95%)... Atualizando tabela de formatos",
|
|
"analysis_complete": "Análise completa!",
|
|
"analyzing_extracting_ytdlp": "Analisando (30%)... Extraindo informações com executável yt-dlp",
|
|
"analyzing_processing_data": "Analisando (60%)... Processando dados",
|
|
"analyzing_processing_formats_ytdlp": "Analisando (75%)... Processando formatos",
|
|
"analyzing_loading_thumbnail_ytdlp": "Analisando (85%)... Carregando miniatura",
|
|
"analyzing_processing_subtitles_ytdlp": "Analisando (90%)... Processando legendas",
|
|
"select_subtitles": "Selecionar Legendas...",
|
|
"sponsorblock_categories": "Categorias SponsorBlock..."
|
|
},
|
|
"sponsorblock": {
|
|
"sponsor": "Patrocinador",
|
|
"sponsor_desc": "Promoção paga, referências pagas e anúncios diretos",
|
|
"selfpromo": "Promoção Não Paga/Própria",
|
|
"selfpromo_desc": "Promoção não paga do próprio conteúdo dos criadores",
|
|
"interaction": "Lembrete de Interação",
|
|
"interaction_desc": "Pedindo aos espectadores para curtir, se inscrever ou seguir nas redes sociais",
|
|
"intro": "Introdução",
|
|
"intro_desc": "Introdução do vídeo que pode ser pulada",
|
|
"outro": "Encerramento/Cards Finais",
|
|
"outro_desc": "Créditos ou quando o vídeo termina",
|
|
"preview": "Prévia/Recapitulação",
|
|
"preview_desc": "Recapitulação rápida de vídeos anteriores ou prévia do que está por vir",
|
|
"music_offtopic": "Seção Não Musical",
|
|
"music_offtopic_desc": "Apenas para vídeos musicais. Marca seções não musicais",
|
|
"filler": "Tangente de Preenchimento",
|
|
"filler_desc": "Cenas tangenciais adicionadas apenas para preenchimento ou humor"
|
|
},
|
|
"video_info": {
|
|
"channel": "Canal",
|
|
"views": "Visualizações",
|
|
"likes": "Curtidas",
|
|
"upload_date": "Data de upload",
|
|
"duration": "Duração",
|
|
"unknown_channel": "Canal desconhecido",
|
|
"unknown_date": "Data desconhecida",
|
|
"unknown_title": "Título desconhecido"
|
|
},
|
|
"command": {
|
|
"running": "Executando...",
|
|
"run_command": "Executar Comando"
|
|
},
|
|
"selection": {
|
|
"none_selected": "0 selecionadas",
|
|
"one_selected": "1 categoria selecionada",
|
|
"count_selected": "{count} selecionadas"
|
|
},
|
|
"status": {
|
|
"ready": "Pronto",
|
|
"file_exists": "⚠️ Arquivo já existe",
|
|
"cancelling": "Cancelando download..."
|
|
}
|
|
} |