Consertar problemas do dicionário no iBooks 1.1

Introdução
Como leitor assíduo de e‑books, muitos utilizadores convertem livros para o formato EPUB usando ferramentas como Calibre. Depois da atualização para o iBooks 1.1, alguns perceberam que o recurso de dicionário deixou de funcionar nos títulos convertidos por si — aparecerá um alerta como ‘Dictionary not available for this language’. Este guia explica o porquê e mostra como corrigir o ficheiro EPUB de forma segura.
Importante: este guia explica uma operação local nos seus ficheiros. Não é necessário enviar nada a terceiros. Faça sempre uma cópia antes de alterar um ficheiro.
Diagnóstico rápido
- Sintoma: ao selecionar uma palavra num EPUB convertido por Calibre, iBooks retorna ‘Dictionary not available for this language’.
- Observação: ebooks descarregados diretamente da loja (por exemplo, Project Gutenberg no iBookstore) normalmente não apresentam o problema.
- Causa comum: Calibre grava o idioma no ficheiro EPUB como “UND” (undefined). iBooks 1.1 não mapeia “UND” para um dicionário útil.
Nota: iBooks 1.0.x parecia ignorar ou fazer fallback automático. A versão 1.1 é mais rígida quanto ao código de idioma.
Como o EPUB armazena o idioma
Um ficheiro EPUB é, na prática, um ficheiro ZIP com uma estrutura definida. No interior existe um ficheiro XML chamado content.opf que contém metadados como título, autor e idioma (dc:language). É essa tag que iBooks usa para decidir qual dicionário disponibilizar.
Exemplo simplificado do fragmento relevante em content.opf:
UND
Mudar para:
en
ou
pt
conserta a associação ao dicionário.
Solução passo a passo (macOS Terminal)
- Faça uma cópia do ficheiro EPUB original para segurar uma versão de backup.
- Localize o EPUB no Finder (no iTunes: clique com o botão direito -> Mostrar no Finder).
- Arraste o ficheiro EPUB para o Terminal para inserir o caminho do ficheiro.
- Extraia apenas o ficheiro content.opf do EPUB:
unzip -p '/caminho/para/ficheiro.epub' 'content.opf' > content.opf
- Edite content.opf com um editor simples (TextEdit) ou um editor de texto/ XML:
open -e content.opf
Procure a tag
- Guarde o ficheiro content.opf modificado.
- Atualize o EPUB reinserindo o ficheiro no ZIP:
zip -g '/caminho/para/ficheiro.epub' content.opf
- Opcionalmente, valide o EPUB com uma ferramenta de validação EPUB para garantir conformidade.
- Reimporte/recopie o ficheiro para o iTunes e sincronize com os dispositivos.
Imagem: esta operação é apenas edição de ficheiro; as imagens originais do guia mantêm os caminhos.
Comandos ilustrados (exemplo prático)
Suponha que o ficheiro está em: /Users/seunome/Books/minhaobra.epub
cp /Users/seunome/Books/minhaobra.epub /Users/seunome/Books/minhaobra_backup.epub
unzip -p /Users/seunome/Books/minhaobra.epub 'content.opf' > /tmp/content.opf
open -e /tmp/content.opf
# editar a tag para 'pt'
zip -g /Users/seunome/Books/minhaobra.epub /tmp/content.opf
Depois, arraste o EPUB para o iTunes ou sincronize normalmente.
Important: se o content.opf não aparecer na raiz do EPUB, o ficheiro pode estar numa subpasta. Use unzip sem -p para listar o conteúdo:
unzip -l '/Users/seunome/Books/minhaobra.epub'
e localize o caminho correto para content.opf dentro do ZIP.
Abordagens alternativas (se não quiser editar o ZIP manualmente)
- Recriar o EPUB com Calibre, definindo o idioma corretamente se a sua versão permitir. Nem todas as versões do Calibre expõem esse campo durante conversões.
- Usar um editor EPUB (por exemplo, Sigil) para abrir o EPUB, editar o metadata e guardar. Editores visuais reduzem o risco de corromper o ficheiro.
- Exportar o ficheiro para HTML, ajustar metadados e reempacotar com uma ferramenta de empacotamento EPUB.
Vantagens do Sigil: interface gráfica, validação integrada, edição de metadados sem manipular o ZIP manual.
Quando esta solução pode falhar (contraexemplos)
- EPUBs com DRM: não podem ser alterados sem remover a proteção; remover DRM pode violar termos legais locais.
- EPUBs que usam outro ficheiro de metadados ou uma estrutura não padrão: talvez content.opf esteja em caminho diferente ou use diferentes namespaces.
- Se o iBooks tiver um bug adicional que ignore totalmente dc:language, a correção pode não surtir efeito (situação rara).
Verificação e validação
- Antes de sincronizar, valide o EPUB com uma ferramenta como epubcheck (opcional). Isso detecta problemas XML e de empacotamento.
- No iPhone/iPad, abra o livro, selecione uma palavra e verifique se o dicionário aparece.
Checklist por papel (rápido)
- Leitor:
- Fazer backup do EPUB original
- Testar dicionário após alteração
- Técnico (quem executa as alterações):
- Localizar content.opf no EPUB
- Substituir ‘UND’ pelo código ISO correto
- Reempacotar sem corromper o EPUB
- Validar com epubcheck (opcional)
Glossário (uma linha cada)
- EPUB: formato aberto de livro eletrónico, baseado em ZIP e HTML/XML.
- content.opf: ficheiro XML no EPUB que contém metadados do livro.
- dc:language: tag XML que indica o código de idioma (ISO 639‑1 ou 639‑2).
- DRM: proteção que impede editar ou copiar um ficheiro protegido.
Casos práticos e recomendações finais
- Se converter muitos livros com Calibre, considere ajustar o fluxo de conversão para garantir que o campo de idioma seja definido corretamente, ou use um plugin/rotina pós‑conversão que atualize content.opf automaticamente.
- Para grandes bibliotecas, automatize: um pequeno script pode abrir cada EPUB, verificar dc:language e corrigir valores ‘UND’ para um idioma padrão à sua escolha.
- Para compatibilidade máxima com dispositivos Apple, use códigos ISO2 (en, pt, es, fr, de). Evite valores personalizados.
Resumo: o problema do dicionário no iBooks 1.1 resulta quase sempre de um código de idioma ausente ou ‘UND’ no content.opf. Editar esse ficheiro e reinserir no EPUB resolve a situação. Faça sempre backups e valide o EPUB se possível.
Perguntas frequentes
O que é ‘UND’ e por que aparece?
UND significa ‘undefined’ (não definido). O Calibre, em algumas conversões, deixa esse campo por preencher ou usa ‘UND’ como padrão.
Posso automatizar a correção em muitos ficheiros?
Sim. Um script que use unzip/zip e um parser XML pode procurar e substituir ‘UND’ por um idioma padrão. Teste em poucos ficheiros antes de executar em massa.
Editar o EPUB pode quebrar o livro?
Editar apenas o content.opf corretamente não costuma quebrar. Ainda assim, um erro na estrutura ZIP ou XML pode tornar o EPUB inválido. Por isso o backup e a validação são recomendados.
Materiais semelhantes

Monitoramento Apache Tomcat — contadores e regras

Como se Proteger do Clickjacking

Papéis de parede distintos por tela no Android

Como remover seus dados de corretores de dados

Papéis de parede por tela no Android
