O que é o formato de ficheiro QM?
Arquivos .qm estão associados ao Qt Linguist, uma ferramenta de software de tradução desenvolvida pela The Qt Company (originalmente Trolltech).
Arquivos com a extensão .qm armazenam o texto de origem e sua tradução compilada para um idioma de destino. Os arquivos .qm armazenam dados em formato binário para acesso rápido aos dados e consulta em tempo de execução. Eles são usados para distribuir traduções de aplicativos em idiomas locais no Windows, macOS, Linux, Android, iOS e outras plataformas suportadas pelo Qt.
O .qm é a contraparte compilada e carregada em tempo de execução do arquivo .TS (Translation Source) editável por humanos. O fluxo de trabalho é: desenvolvedores e tradutores trabalham no arquivo XML .ts, então a ferramenta de linha de comando lrelease o compila em um binário .qm compacto que o aplicativo carrega na inicialização por meio da classe QTranslator do Qt.
O Qt Linguist permite que os usuários criem traduções e localizações de aplicativos. Como o .qm é um arquivo binário compilado e não um arquivo de texto simples, não é possível ler seu conteúdo diretamente - nem mesmo com o próprio Qt Linguist. O arquivo começa com um número mágico fixo de 16 bytes, seguido por blocos de dados marcados (Hashes, Messages, Contexts, NumerusRules, Dependencies) que permitem a busca rápida de strings em tempo de execução.
Para abrir um arquivo .qm com o Qt Linguist, é necessário convertê-lo de volta para .ts primeiro. Existem muitas ferramentas que permitem tal conversão; a maioria delas são utilitários de linha de comando, incluindo o lconvert (parte do pacote de ferramentas Qt). O arquivo .ts resultante pode ser aberto diretamente com o Qt Linguist. Arquivos .ts são editáveis - um usuário pode traduzir o texto e depois converter o arquivo de volta para .qm usando o lrelease. Esse processo permite que os usuários gerem e distribuam pacotes de idiomas para aplicativos.
Segurança e proteção
RISCO: LOWUm .qm consiste em dados de tradução passivos carregados pelo QTranslator do Qt e não executa nenhum código. É seguro. A única precaução prática é editar o arquivo errado: as alterações devem ser feitas na origem .ts e recompiladas, pois a edição manual do binário .qm irá corrompê-lo.
Detalhes do formato
em resumo- Metadados QuickTime / diversos - Ocasionalmente visto para dados de ferramentas não relacionados; o significado dominante é a tradução compilada do Qt.
Programas que abrem arquivos QM
Detalhes técnicos
especificação profunda| Desenvolvedor | The Qt Company (originalmente Trolltech / Nokia / Digia) |
| Tipo de formato | Catálogo de tradução binário compilado |
| Tipo MIME | application/x-qm (também application/octet-stream) |
| Assinatura do arquivo (magic bytes) | Cabeçalho de 16 bytes no deslocamento 0: 3C B8 64 18 CA EF 9C 95 CD 21 1C BF 60 A1 BD DD |
| Ordem dos bytes | Big-endian |
| Estrutura interna | Blocos Tag/length/value: Hashes, Messages, Contexts, NumerusRules, Dependencies |
| Codificação de strings | UTF-16 ou UTF-8 por string |
| Compressão | Nenhuma - strings armazenadas como estão; regras de plural (numerus) codificadas de forma compacta |
| Tamanho típico do arquivo | 5 KB - 2 MB, dependendo do número de strings traduzidas |
| Formato de origem | .ts (Translation Source, XML) - a contraparte editável por humanos compilada pelo lrelease |
| Ferramenta de compilação | lrelease (ferramenta de linha de comando Qt, parte do pacote de ferramentas Qt) |
| Ferramenta de conversão reversa | lconvert (ferramenta de linha de comando Qt) - converte .qm de volta para .ts ou outros formatos |
| Carregador de tempo de execução | Classe QTranslator no framework Qt |
| Busca de strings | O(1) via tabela de hash por mensagem incorporada no arquivo |
| Plataformas suportadas | Windows, macOS, Linux, Android, iOS, alvos Qt embarcados |
| Lançado | 1990s (Qt internationalization framework) |
| Versão mais recente | Tied to the Qt release stream (Qt 6.x in 2026); QM binary layout stable |
| Padrão aberto | Sim · livre de royalties |
| Especificação | doc.qt.io |
Conversões de QM
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos QM.