Some checks failed
CI / Backend (push) Successful in 30s
Release / Test backend (push) Failing after 11s
Release / Docker / backend (push) Has been skipped
Release / Docker / runner (push) Has been skipped
CI / UI (push) Successful in 35s
Release / Docker / caddy (push) Successful in 58s
Release / Check ui (push) Successful in 1m7s
CI / Backend (pull_request) Successful in 31s
CI / UI (pull_request) Successful in 1m1s
Release / Docker / ui (push) Failing after 2m43s
Release / Gitea Release (push) Has been skipped
Three light variants mirroring the existing dark set. All use CSS custom properties so no component changes are needed. Theme dots in the header and mobile drawer show a separator between dark/light groups; light-theme swatches get a subtle ring so they're visible on light backgrounds. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
413 lines
18 KiB
JSON
413 lines
18 KiB
JSON
{
|
||
"$schema": "https://inlang.com/schema/inlang-message-format",
|
||
|
||
"nav_library": "Biblioteca",
|
||
"nav_catalogue": "Catálogo",
|
||
"nav_feedback": "Feedback",
|
||
"nav_admin": "Admin",
|
||
"nav_profile": "Perfil",
|
||
"nav_sign_in": "Entrar",
|
||
"nav_sign_out": "Sair",
|
||
"nav_toggle_menu": "Menu",
|
||
"nav_admin_panel": "Painel admin",
|
||
|
||
"footer_library": "Biblioteca",
|
||
"footer_catalogue": "Catálogo",
|
||
"footer_feedback": "Feedback",
|
||
"footer_disclaimer": "Aviso legal",
|
||
"footer_privacy": "Privacidade",
|
||
"footer_dmca": "DMCA",
|
||
"footer_copyright": "© {year} libnovel",
|
||
"footer_dev": "dev",
|
||
|
||
"home_title": "libnovel",
|
||
"home_stat_books": "Livros",
|
||
"home_stat_chapters": "Capítulos",
|
||
"home_stat_in_progress": "Em andamento",
|
||
"home_continue_reading": "Continuar Lendo",
|
||
"home_view_all": "Ver tudo",
|
||
"home_recently_updated": "Atualizados Recentemente",
|
||
"home_from_following": "De Quem Você Segue",
|
||
"home_empty_title": "Sua biblioteca está vazia",
|
||
"home_empty_body": "Descubra romances e adicione à sua biblioteca.",
|
||
"home_discover_novels": "Descobrir Romances",
|
||
"home_via_reader": "via {username}",
|
||
"home_chapter_badge": "cap.{n}",
|
||
|
||
"player_generating": "Gerando… {percent}%",
|
||
"player_loading": "Carregando…",
|
||
"player_chapters": "Capítulos",
|
||
"player_chapter_n": "Capítulo {n}",
|
||
"player_toggle_chapter_list": "Lista de capítulos",
|
||
"player_chapter_list_label": "Lista de capítulos",
|
||
"player_close_chapter_list": "Fechar lista de capítulos",
|
||
"player_rewind_15": "Voltar 15 segundos",
|
||
"player_skip_30": "Avançar 30 segundos",
|
||
"player_back_15": "−15 s",
|
||
"player_forward_30": "+30 s",
|
||
"player_play": "Reproduzir",
|
||
"player_pause": "Pausar",
|
||
"player_speed_label": "Velocidade {speed}x",
|
||
"player_seek_label": "Progresso do capítulo",
|
||
"player_change_speed": "Mudar velocidade",
|
||
"player_auto_next_on": "Próximo automático ativado",
|
||
"player_auto_next_off": "Próximo automático desativado",
|
||
"player_auto_next_ready": "Próximo automático — Cap.{n} pronto",
|
||
"player_auto_next_preparing": "Próximo automático — preparando Cap.{n}…",
|
||
"player_auto_next_aria": "Próximo automático {state}",
|
||
"player_go_to_chapter": "Ir para capítulo",
|
||
"player_close": "Fechar player",
|
||
|
||
"login_page_title": "Entrar — libnovel",
|
||
"login_heading": "Entrar no libnovel",
|
||
"login_subheading": "Escolha um provedor para continuar",
|
||
"login_continue_google": "Continuar com Google",
|
||
"login_continue_github": "Continuar com GitHub",
|
||
"login_terms_notice": "Ao entrar, você concorda com nossos termos de serviço.",
|
||
"login_error_oauth_state": "Login cancelado ou expirado. Tente novamente.",
|
||
"login_error_oauth_failed": "Não foi possível conectar ao provedor. Tente novamente.",
|
||
"login_error_oauth_no_email": "Sua conta não tem endereço de email verificado. Adicione um e tente novamente.",
|
||
|
||
"books_page_title": "Biblioteca — libnovel",
|
||
"books_heading": "Sua Biblioteca",
|
||
"books_empty_title": "Nenhum livro ainda",
|
||
"books_empty_body": "Adicione livros à sua biblioteca visitando a página de um livro.",
|
||
"books_browse_catalogue": "Explorar Catálogo",
|
||
"books_chapter_count": "{n} capítulos",
|
||
"books_last_read": "Último: Cap.{n}",
|
||
"books_reading_progress": "Cap.{current} / {total}",
|
||
"books_remove": "Remover",
|
||
|
||
"catalogue_page_title": "Catálogo — libnovel",
|
||
"catalogue_heading": "Catálogo",
|
||
"catalogue_search_placeholder": "Pesquisar romances…",
|
||
"catalogue_filter_genre": "Gênero",
|
||
"catalogue_filter_status": "Status",
|
||
"catalogue_filter_sort": "Ordenar",
|
||
"catalogue_sort_popular": "Popular",
|
||
"catalogue_sort_new": "Novo",
|
||
"catalogue_sort_top_rated": "Mais Bem Avaliados",
|
||
"catalogue_sort_rank": "Ranking",
|
||
"catalogue_status_all": "Todos",
|
||
"catalogue_status_ongoing": "Em andamento",
|
||
"catalogue_status_completed": "Concluído",
|
||
"catalogue_genre_all": "Todos os gêneros",
|
||
"catalogue_clear_filters": "Limpar",
|
||
"catalogue_reset": "Redefinir",
|
||
"catalogue_no_results": "Nenhum romance encontrado.",
|
||
"catalogue_loading": "Carregando…",
|
||
"catalogue_load_more": "Carregar mais",
|
||
"catalogue_results_count": "{n} resultados",
|
||
|
||
"book_detail_page_title": "{title} — libnovel",
|
||
"book_detail_signin_to_save": "Entre para salvar",
|
||
"book_detail_add_to_library": "Adicionar à Biblioteca",
|
||
"book_detail_remove_from_library": "Remover da Biblioteca",
|
||
"book_detail_read_now": "Ler Agora",
|
||
"book_detail_continue_reading": "Continuar Lendo",
|
||
"book_detail_start_reading": "Começar a Ler",
|
||
"book_detail_chapters": "{n} Capítulos",
|
||
"book_detail_status": "Status",
|
||
"book_detail_author": "Autor",
|
||
"book_detail_genres": "Gêneros",
|
||
"book_detail_description": "Descrição",
|
||
"book_detail_source": "Fonte",
|
||
"book_detail_rescrape": "Atualizar",
|
||
"book_detail_scraping": "Atualizando…",
|
||
"book_detail_in_library": "Na Biblioteca",
|
||
|
||
"chapters_page_title": "Capítulos — {title}",
|
||
"chapters_heading": "Capítulos",
|
||
"chapters_back_to_book": "Voltar ao livro",
|
||
"chapters_reading_now": "Lendo",
|
||
"chapters_empty": "Nenhum capítulo extraído ainda.",
|
||
|
||
"reader_page_title": "{title} — Cap.{n} — libnovel",
|
||
"reader_play_narration": "Reproduzir narração",
|
||
"reader_generating_audio": "Gerando áudio…",
|
||
"reader_signin_for_audio": "Narração de áudio disponível",
|
||
"reader_signin_audio_desc": "Entre para ouvir este capítulo narrado por IA.",
|
||
"reader_audio_error": "Falha na geração de áudio.",
|
||
"reader_prev_chapter": "Capítulo anterior",
|
||
"reader_next_chapter": "Próximo capítulo",
|
||
"reader_back_to_chapters": "Voltar aos capítulos",
|
||
"reader_chapter_n": "Capítulo {n}",
|
||
"reader_change_voice": "Mudar voz",
|
||
"reader_voice_panel_title": "Selecionar voz",
|
||
"reader_voice_kokoro": "Vozes Kokoro",
|
||
"reader_voice_pocket": "Vozes Pocket-TTS",
|
||
"reader_voice_play_sample": "Reproduzir amostra",
|
||
"reader_voice_stop_sample": "Parar amostra",
|
||
"reader_voice_selected": "Selecionado",
|
||
"reader_close_voice_panel": "Fechar painel de voz",
|
||
"reader_auto_next": "Próximo automático",
|
||
"reader_speed": "Velocidade",
|
||
"reader_preview_notice": "Prévia — este capítulo não foi totalmente extraído.",
|
||
|
||
"profile_page_title": "Perfil — libnovel",
|
||
"profile_heading": "Perfil",
|
||
"profile_avatar_label": "Avatar",
|
||
"profile_change_avatar": "Mudar avatar",
|
||
"profile_username": "Nome de usuário",
|
||
"profile_email": "Email",
|
||
"profile_change_password": "Mudar senha",
|
||
"profile_current_password": "Senha atual",
|
||
"profile_new_password": "Nova senha",
|
||
"profile_confirm_password": "Confirmar senha",
|
||
"profile_save_password": "Salvar senha",
|
||
"profile_appearance_heading": "Aparência",
|
||
"profile_theme_label": "Tema",
|
||
"profile_theme_amber": "Âmbar",
|
||
"profile_theme_slate": "Ardósia",
|
||
"profile_theme_rose": "Rosa",
|
||
"profile_theme_light": "Light",
|
||
"profile_theme_light_slate": "Light Blue",
|
||
"profile_theme_light_rose": "Light Rose",
|
||
"profile_reading_heading": "Configurações de leitura",
|
||
"profile_voice_label": "Voz padrão",
|
||
"profile_speed_label": "Velocidade de reprodução",
|
||
"profile_auto_next_label": "Próximo capítulo automático",
|
||
"profile_save_settings": "Salvar configurações",
|
||
"profile_settings_saved": "Configurações salvas.",
|
||
"profile_settings_error": "Falha ao salvar configurações.",
|
||
"profile_password_saved": "Senha alterada.",
|
||
"profile_password_error": "Falha ao alterar a senha.",
|
||
"profile_sessions_heading": "Sessões ativas",
|
||
"profile_sign_out_all": "Sair de todos os outros dispositivos",
|
||
"profile_joined": "Entrou em {date}",
|
||
|
||
"user_page_title": "{username} — libnovel",
|
||
"user_library_heading": "Biblioteca de {username}",
|
||
"user_follow": "Seguir",
|
||
"user_unfollow": "Deixar de seguir",
|
||
"user_followers": "{n} seguidores",
|
||
"user_following": "{n} seguindo",
|
||
"user_library_empty": "Nenhum livro na biblioteca.",
|
||
|
||
"error_not_found_title": "Página não encontrada",
|
||
"error_not_found_body": "A página que você procura não existe.",
|
||
"error_generic_title": "Algo deu errado",
|
||
"error_go_home": "Ir para início",
|
||
"error_status": "Erro {status}",
|
||
|
||
"admin_scrape_page_title": "Extração — Admin",
|
||
"admin_scrape_heading": "Extração",
|
||
"admin_scrape_catalogue": "Extrair Catálogo",
|
||
"admin_scrape_book": "Extrair Livro",
|
||
"admin_scrape_url_placeholder": "URL do livro em novelfire.net",
|
||
"admin_scrape_range": "Intervalo de capítulos",
|
||
"admin_scrape_from": "De",
|
||
"admin_scrape_to": "Até",
|
||
"admin_scrape_submit": "Extrair",
|
||
"admin_scrape_cancel": "Cancelar",
|
||
"admin_scrape_status_pending": "Pendente",
|
||
"admin_scrape_status_running": "Em execução",
|
||
"admin_scrape_status_done": "Concluído",
|
||
"admin_scrape_status_failed": "Falhou",
|
||
"admin_scrape_status_cancelled": "Cancelado",
|
||
"admin_tasks_heading": "Tarefas recentes",
|
||
"admin_tasks_empty": "Nenhuma tarefa ainda.",
|
||
|
||
"admin_audio_page_title": "Áudio — Admin",
|
||
"admin_audio_heading": "Tarefas de Áudio",
|
||
"admin_audio_empty": "Nenhuma tarefa de áudio.",
|
||
|
||
"admin_changelog_page_title": "Changelog — Admin",
|
||
"admin_changelog_heading": "Changelog",
|
||
|
||
"comments_heading": "Comentários",
|
||
"comments_empty": "Nenhum comentário ainda. Seja o primeiro!",
|
||
"comments_placeholder": "Escreva um comentário…",
|
||
"comments_submit": "Publicar",
|
||
"comments_login_prompt": "Entre para comentar.",
|
||
"comments_vote_up": "Votar positivo",
|
||
"comments_vote_down": "Votar negativo",
|
||
"comments_delete": "Excluir",
|
||
"comments_reply": "Responder",
|
||
"comments_show_replies": "Mostrar {n} respostas",
|
||
"comments_hide_replies": "Ocultar respostas",
|
||
"comments_edited": "editado",
|
||
"comments_deleted": "[excluído]",
|
||
|
||
"disclaimer_page_title": "Aviso Legal — libnovel",
|
||
"privacy_page_title": "Política de Privacidade — libnovel",
|
||
"dmca_page_title": "DMCA — libnovel",
|
||
"terms_page_title": "Termos de Serviço — libnovel",
|
||
|
||
"common_loading": "Carregando…",
|
||
"common_error": "Erro",
|
||
"common_save": "Salvar",
|
||
"common_cancel": "Cancelar",
|
||
"common_close": "Fechar",
|
||
"common_search": "Pesquisar",
|
||
"common_back": "Voltar",
|
||
"common_next": "Próximo",
|
||
"common_previous": "Anterior",
|
||
"common_yes": "Sim",
|
||
"common_no": "Não",
|
||
"common_on": "ativado",
|
||
"common_off": "desativado",
|
||
|
||
"locale_switcher_label": "Idioma",
|
||
|
||
"books_empty_library": "Sua biblioteca está vazia.",
|
||
"books_empty_discover": "Livros que você começar a ler ou salvar de",
|
||
"books_empty_discover_link": "Descobrir",
|
||
"books_empty_discover_suffix": "aparecerão aqui.",
|
||
"books_count": "{n} livro{s}",
|
||
|
||
"catalogue_sort_updated": "Atualizado",
|
||
"catalogue_search_button": "Pesquisar",
|
||
"catalogue_refresh": "Atualizar",
|
||
"catalogue_refreshing": "Na fila…",
|
||
"catalogue_refresh_mobile": "Atualizar catálogo",
|
||
"catalogue_all_loaded": "Todos os romances carregados",
|
||
"catalogue_scroll_top": "Voltar ao topo",
|
||
"catalogue_view_grid": "Visualização em grade",
|
||
"catalogue_view_list": "Visualização em lista",
|
||
"catalogue_browse_source": "Explorar romances do novelfire.net",
|
||
"catalogue_search_results": "{n} resultado{s} para \"{q}\"",
|
||
"catalogue_search_local_count": "({local} local, {remote} do novelfire)",
|
||
"catalogue_rank_ranked": "{n} romances classificados do último scrape do catálogo",
|
||
"catalogue_rank_no_data": "Sem dados de classificação.",
|
||
"catalogue_rank_no_data_body": "Sem dados de classificação — execute um scrape completo do catálogo para preencher",
|
||
"catalogue_rank_run_scrape_admin": "Clique em Atualizar catálogo acima para acionar um scrape completo.",
|
||
"catalogue_rank_run_scrape_user": "Peça a um administrador para executar um scrape do catálogo.",
|
||
"catalogue_scrape_queued_flash": "Scrape completo do catálogo na fila. A biblioteca e a classificação serão atualizadas conforme os livros forem processados.",
|
||
"catalogue_scrape_busy_flash": "Um job de scrape já está em execução. Volte quando terminar.",
|
||
"catalogue_scrape_error_flash": "Falha ao enfileirar o scrape. Verifique se o serviço de scraper está acessível.",
|
||
"catalogue_filters_label": "Filtros",
|
||
"catalogue_apply": "Aplicar",
|
||
"catalogue_filter_rank_note": "Filtros de gênero e status se aplicam apenas a Explorar",
|
||
"catalogue_no_results_search": "Nenhum resultado encontrado.",
|
||
"catalogue_no_results_try": "Tente um termo de pesquisa diferente.",
|
||
"catalogue_no_results_filters": "Tente filtros diferentes ou volte mais tarde.",
|
||
"catalogue_scrape_queued_badge": "Na fila",
|
||
"catalogue_scrape_busy_badge": "Scraper ocupado",
|
||
"catalogue_scrape_busy_list": "Ocupado",
|
||
"catalogue_scrape_forbidden_badge": "Proibido",
|
||
"catalogue_scrape_novel_button": "Extrair",
|
||
"catalogue_scraping_novel": "Extraindo…",
|
||
|
||
"book_detail_not_in_library": "não está na biblioteca",
|
||
"book_detail_continue_ch": "Continuar cap.{n}",
|
||
"book_detail_start_ch1": "Começar pelo cap.1",
|
||
"book_detail_preview_ch1": "Prévia do cap.1",
|
||
"book_detail_reading_ch": "Lendo cap.{n} de {total}",
|
||
"book_detail_n_chapters": "{n} capítulos",
|
||
"book_detail_rescraping": "Na fila…",
|
||
"book_detail_from_chapter": "A partir do capítulo",
|
||
"book_detail_to_chapter": "Até o capítulo (opcional)",
|
||
"book_detail_range_queuing": "Na fila…",
|
||
"book_detail_scrape_range": "Intervalo de extração",
|
||
"book_detail_admin": "Admin",
|
||
"book_detail_scraping_progress": "Buscando os primeiros 20 capítulos. Esta página será atualizada automaticamente.",
|
||
"book_detail_scraping_home": "← Início",
|
||
"book_detail_rescrape_book": "Reextrair livro",
|
||
"book_detail_less": "Menos",
|
||
"book_detail_more": "Mais",
|
||
|
||
"chapters_search_placeholder": "Pesquisar capítulos…",
|
||
"chapters_jump_to": "Ir para Cap.{n}",
|
||
"chapters_no_match": "Nenhum capítulo encontrado para \"{q}\"",
|
||
"chapters_none_available": "Nenhum capítulo disponível ainda.",
|
||
"chapters_reading_indicator": "lendo",
|
||
"chapters_result_count": "{n} resultados",
|
||
|
||
"reader_fetching_chapter": "Buscando capítulo…",
|
||
"reader_words": "{n} palavras",
|
||
"reader_preview_audio_notice": "Prévia — áudio não disponível para livros fora da biblioteca.",
|
||
|
||
"profile_click_to_change": "Clique no avatar para mudar a foto",
|
||
"profile_tts_voice": "Voz TTS",
|
||
"profile_auto_advance": "Avançar automaticamente para o próximo capítulo",
|
||
"profile_saving": "Salvando…",
|
||
"profile_saved": "Salvo!",
|
||
"profile_session_this": "Esta sessão",
|
||
"profile_session_signed_in": "Entrou em {date}",
|
||
"profile_session_last_seen": "· Visto por último em {date}",
|
||
"profile_session_sign_out": "Sair",
|
||
"profile_session_end": "Encerrar",
|
||
"profile_session_unrecognised": "Estes são todos os dispositivos conectados à sua conta. Encerre qualquer sessão que não reconhecer.",
|
||
"profile_no_sessions": "Nenhum registro de sessão encontrado. As sessões são rastreadas a partir do próximo login.",
|
||
"profile_change_password_heading": "Mudar senha",
|
||
"profile_update_password": "Atualizar senha",
|
||
"profile_updating": "Atualizando…",
|
||
"profile_password_changed_ok": "Senha alterada com sucesso.",
|
||
"profile_playback_speed": "Velocidade de reprodução — {speed}x",
|
||
|
||
"profile_subscription_heading": "Assinatura",
|
||
"profile_plan_pro": "Pro",
|
||
"profile_plan_free": "Gratuito",
|
||
"profile_pro_active": "Sua assinatura Pro está ativa.",
|
||
"profile_pro_perks": "Áudio ilimitado, todos os idiomas de tradução e seleção de voz estão habilitados.",
|
||
"profile_manage_subscription": "Gerenciar assinatura",
|
||
"profile_upgrade_heading": "Assinar o Pro",
|
||
"profile_upgrade_desc": "Desbloqueie áudio ilimitado, traduções em 4 idiomas e seleção de voz.",
|
||
"profile_upgrade_monthly": "Mensal — $6 / mês",
|
||
"profile_upgrade_annual": "Anual — $48 / ano",
|
||
"profile_free_limits": "Plano gratuito: 3 capítulos de áudio por dia, somente inglês.",
|
||
|
||
"user_currently_reading": "Lendo Agora",
|
||
"user_library_count": "Biblioteca ({n})",
|
||
"user_joined": "Entrou em {date}",
|
||
"user_followers_label": "seguidores",
|
||
"user_following_label": "seguindo",
|
||
"user_no_books": "Nenhum livro na biblioteca ainda.",
|
||
|
||
"admin_pages_label": "Páginas",
|
||
"admin_tools_label": "Ferramentas",
|
||
|
||
"admin_scrape_status_idle": "Ocioso",
|
||
"admin_scrape_full_catalogue": "Catálogo completo",
|
||
"admin_scrape_single_book": "Livro único",
|
||
"admin_scrape_quick_genres": "Gêneros rápidos",
|
||
"admin_scrape_task_history": "Histórico de tarefas",
|
||
"admin_scrape_filter_placeholder": "Filtrar por tipo, status ou URL…",
|
||
"admin_scrape_no_matching": "Nenhuma tarefa correspondente.",
|
||
"admin_scrape_start": "Iniciar extração",
|
||
"admin_scrape_queuing": "Na fila…",
|
||
"admin_scrape_running": "Executando…",
|
||
|
||
"admin_audio_filter_jobs": "Filtrar por slug, voz ou status…",
|
||
"admin_audio_filter_cache": "Filtrar por slug, capítulo ou voz…",
|
||
"admin_audio_no_matching_jobs": "Nenhum job correspondente.",
|
||
"admin_audio_no_jobs": "Nenhum job de áudio ainda.",
|
||
"admin_audio_cache_empty": "Cache de áudio vazio.",
|
||
"admin_audio_no_cache_results": "Sem resultados.",
|
||
|
||
"admin_changelog_gitea": "Releases do Gitea",
|
||
"admin_changelog_no_releases": "Nenhum release encontrado.",
|
||
"admin_changelog_load_error": "Não foi possível carregar os releases: {error}",
|
||
|
||
"comments_top": "Mais votados",
|
||
"comments_new": "Novos",
|
||
"comments_posting": "Publicando…",
|
||
"comments_login_link": "Entre",
|
||
"comments_login_suffix": "para deixar um comentário.",
|
||
"comments_anonymous": "Anônimo",
|
||
|
||
"reader_audio_narration": "Narração em Áudio",
|
||
"reader_playing": "Reproduzindo — controles abaixo",
|
||
"reader_paused": "Pausado — controles abaixo",
|
||
"reader_ch_ready": "Cap.{n} pronto",
|
||
"reader_ch_preparing": "Preparando Cap.{n}… {percent}%",
|
||
"reader_ch_generate_on_nav": "Cap.{n} será gerado ao navegar",
|
||
"reader_now_playing": "Reproduzindo: {title}",
|
||
"reader_load_this_chapter": "Carregar este capítulo",
|
||
"reader_generate_samples": "Gerar amostras ausentes",
|
||
"reader_voice_applies_next": "A nova voz será aplicada no próximo \"Reproduzir narração\".",
|
||
"reader_choose_voice": "Escolher Voz",
|
||
"reader_generating_narration": "Gerando narração…",
|
||
|
||
"profile_font_family": "Fonte",
|
||
"profile_font_system": "Sistema",
|
||
"profile_font_serif": "Serif",
|
||
"profile_font_mono": "Mono",
|
||
"profile_text_size": "Tamanho do texto",
|
||
"profile_text_size_sm": "Pequeno",
|
||
"profile_text_size_md": "Normal",
|
||
"profile_text_size_lg": "Grande",
|
||
"profile_text_size_xl": "Muito grande"
|
||
}
|