
Tenho alguns arquivos que contêm dados com sintaxe ConTeXt, por exemplo, contendo macros e instruções para símbolos especiais, mas nenhum preâmbulo, seções ou outros recursos que vinculem os dados a qualquer local específico de uma página. Preciso compilar esses arquivos, mas em vez de criar um PDF, basta converter os arquivos para um arquivo de texto UTF-8.
Por exemplo, um arquivo pode conter os seguintes dados:
\quotation{Do you want to go to the caf\acutee?}
\quotation{No, it costs 30\percent more than it did before.}
Depois de compilá-lo com o ConTeXt, ele é convertido para isto:
"Do you want to go to the café?"
"No, it costs 30% more than it did before."
Existe alguma maneira de compilar esses arquivos usando ConTeXt, mas gerar um arquivo de texto UTF-8?
Responder1
O ConTeXt possui backends alternáveis integrados em sua arquitetura, mas o backend que você deseja ainda não existe. Existe um back-end XML, cuja saída você pode querer conectar a um conversor de XML para texto; ou você pode querer escrever seu próprio back-end. De qualquer forma, não sei o suficiente para ajudá-lo ainda mais.
Se você quiser saber mais sobre como escrever backends, envie um e-mail para a lista de discussão em [email protected]
. Os desenvolvedores participam ativamente lá e sua pergunta certamente os interessará. Pelo menos você deve ser capaz de descobrir se está dentro de suas habilidades.
Ah, e como diz Joseph Wright, você precisará pensar sobre seus requisitos. Você quer saída paginada? Como você lidará com notas de rodapé e referências cruzadas? Para onde vão os carros alegóricos? E os parágrafos nas células da tabela? Resumindo: quantos recursos você deseja traduzir?
A resposta termina acima; abaixo estão alguns fatos sobre back-ends
ConTeXt mantém backends em back-*.*
. Arquivos atuais:
back-ini.mkiv, back-ini.lua # Initialization
back-exp.mkiv, back-exp.lua # XML export
back-pdf.mkiv, back-pdf.lua # PDF
back-swf.mkiv # Shockwave experiment (for *inclusion* in PDFs?)
back-u3d.mkiv # U3D experiment (3D graphics) (for inclusion?)
Desde o início de back-ini.mkiv
:
Desde o início, o ConTeXt tinha um sistema backend baseado em código conectável em tempo de execução. Como a maioria dos problemas de back-end envolviam especiais e como os pós-processadores não tinham muito em comum, acabamos com um sistema onde poderíamos alternar o back-end, bem como o código de saída para vários back-ends ao mesmo tempo.
Como o LuaTeX tem o backend integrado e como alguns problemas de backend foram movidos para o frontend, decidi fornecer um novo código de backend para o MkIV, começando com o que foi realmente usado.
Neste momento
.dvi
não é mais usado para saída avançada de documentos e, portanto, abandonamos o suporte para este formato. Versões futuras poderão suportar mais back-ends novamente, mas isso tem baixa prioridade.A grande questão é: o que deve ser considerado um problema de back-end e o que não. No momento tratamos inclusão de imagem, reutilização de objetos, rastreamento de posição e cor como problemas de frontend, mesmo porque lidamos com eles via código Lua e como tal não dependemos muito de chamadas de macro que precisam injetar código para o backend .