Pular para o conteúdo principal

Conversor de PO para MO

Compile um arquivo de origem de tradução .po do GNU gettext em um arquivo binário .mo, pronto para PHP, Python, WordPress ou qualquer aplicativo baseado em gettext. Executado inteiramente no seu navegador — sem upload.

Entrada

Drop a file or browse
One file · text

Lido como texto UTF-8 e inserido diretamente na caixa acima.

Saída

Your compiled .mo file will appear here to download.
Isso foi útil?

Guias

Um arquivo .po é a metade editável por humanos de uma tradução GNU gettext — texto simples, um par msgid/msgstr por string. Mas nada que realmente carrega traduções em tempo de execução lê diretamente: PHP, Python, glibc e WordPress todos esperam o formato binário compilado .mo (Machine Object), normalmente produzido pela ferramenta de linha de comando msgfmt. Este conversor faz a mesma etapa de compilação no seu navegador, para que você possa passar de .po para .mo sem instalar gettext ou uma cadeia de ferramentas PHP/Python.

Como usar

Cole o conteúdo do seu arquivo .po na caixa de texto ou carregue o arquivo diretamente — de qualquer forma, o arquivo nunca sai do seu navegador. Clique em Compilar para MO e baixe o messages.mo resultante.

O que é suportado

  • Strings multi-linha — um msgid/msgstr dividido por várias linhas entre aspas é reunido novamente, assim como msgfmt.
  • Formas pluraismsgid_plural e msgstr[0], msgstr[1], … indexados são compilados na codificação binária plural unida por NUL do gettext, para que as buscas ngettext()/_n() funcionem corretamente.
  • Contextos de mensagens — um msgctxt é dobrado na chave compilada exatamente como pgettext()/_x() espera.
  • Entradas fuzzy e não traduzidas são ignoradas, correspondendo ao comportamento padrão de msgfmt (sem --use-fuzzy). Uma string sinalizadas como #, fuzzy é uma adivinhação aproximada de máquina que um tradutor não confirmou — enviá-la como uma tradução real seria pior do que voltar ao texto original, então é deixada fora do catálogo compilado em vez de ser confiável.
  • Entradas obsoletas (#~-prefixadas, deixadas por msgmerge quando uma string desaparece da origem) são descartadas, assim como uma compilação real.

Privacidade

Tudo acontece do lado do cliente — análise do texto .po e montagem do arquivo binário .mo ambas são executados no seu navegador. Nada é carregado em um servidor.

Por que minha string traduzida não está aparecendo no arquivo .mo?

Verifique se está sinalizada como #, fuzzy no arquivo .po. Strings fuzzy são intencionalmente deixadas fora do catálogo compilado (veja acima) — remova a flag fuzzy depois de confirmar que a tradução está correta, então recompile.

O arquivo compilado funciona com WordPress?

Sim — WordPress (e qualquer outro consumidor PHP gettext/Gettext_PO) lê arquivos .mo padrão. Coloque o arquivo compilado na pasta languages/ do seu tema ou plugin usando o nome de arquivo esperado <textdomain>-<locale>.mo.

Preciso fazer o caminho inverso, de um .mo compilado de volta para um .po editável

Essa é uma etapa de descompilação separada — uma ferramenta MO para PO está planejada. Enquanto isso, a maioria dos editores com reconhecimento de gettext (Poedit, msgunfmt do próprio gettext) pode abrir um arquivo .mo diretamente.

Para editar outros formatos de tradução/configuração estruturada, consulte o Formatador de Arquivo Java Properties.

gettextpo filemo filemsgfmttranslation filei18nl10nlocalizationwordpress translationcompile po

Mais formas de usar esta ferramenta

API REST

curl -X POST https://api.iotools.cloud/v1/tool/po-to-mo \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "po": "#\nmsgid \"\"\nmsgstr \"\"\n\"Content-Type: text/plain; …"
  }'

Troque pela sua própria chave, da sua conta. Os campos da ferramenta viram o corpo da requisição — sem envelope.

Peça a um agente de IA

Use the IOTools `po-to-mo` tool (PO to MO Converter) on this input:

YOUR_INPUT_HERE

Cole isto em qualquer agente conectado ao servidor MCP do IOTools e depois adicione sua entrada.

Widget para incorporar

<iframe
  src="https://iotools.cloud/embed/po-to-mo/"
  width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
  title="Conversor de PO para MO — iotools.cloud"
  sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
  allow="clipboard-write"
  style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>

Coloque isso na sua própria página — grátis, sem chave, só um link de volta.

Custo por chamadaA partir de 5 créditos

Também disponível via

Ama as ferramentas? Livre-se dos anúncios.

Um único pagamento remove todos os anúncios da sua conta, para sempre. Sem assinatura, sem rastreamento.