Como você diz, Associação entre tipos de MIME e especificação de aplicativos é a especificação relevante, mas não descreve o formato do arquivo com muito detalhe. No entanto, adia para Desktop Entry Specification para o formato de arquivo; não é particularmente explícito, mas acho que o
The value is a semicolon-separated list of desktop file IDs (as defined in the desktop entry spec).
menção (em relação ao formato dos pares de valores-chave) é uma boa indicação.
Existe uma ferramenta de validação para .desktop
arquivos, desktop-file-validate
, mas não pode ser usada em listas do tipo MIME porque os tipos MIME não são válidos .desktop
chaves de arquivos.
Olhando para o código, por exemplo para xdg-open
, mostra que o formato do arquivo é muito simples: as ferramentas procuram chaves nas seções, e fazem isso iniciando na parte superior do arquivo relevante, procurando a primeira ocorrência da seção entre colchetes , então a primeira ocorrência da chave seguida por um sinal "=". Assim, efetivamente, ao procurar por uma determinada chave em uma determinada seção, a primeira linha correspondente à chave que também está na seção direita será usada.
Isso tem várias conseqüências:
- seções podem ser repetidas
- linhas sem sentido podem estar presentes, elas serão ignoradas
- qualquer linha que não contenha "=" ou colchetes é efetivamente um comentário