Como alterar o método de entrada do navegador emscripten de window.prompt para algo mais sensato?

Eu tenho uma função de C ++ que uma vez chamada consome entrada de stdin. Exportar esta função para o JavaScript usando o emscripten causa chamadas para window.prompt.

Interagir com o prompt do navegador é tarefa realmente tediosa. Primeiro de tudo você pode colar apenas uma linha no tempo. Em segundo lugar, a única maneira de indicar EOF é pressionando 'cancelar'. Por último, mas não menos importante, a única maneira (no caso da minha função) de fazê-lo parar de perguntar ao usuário por input por window.prompt é marcando a caixa de seleção impedindo que mais prompts apareçam.

Para mim, o melhor método de entrada seria ler algum blob. Eu sei que posso hackar library.js, mas vejo alguns problemas:

O blob de leitura é assíncrono.Para ler um blob, primeiro você tem que abrir um arquivo que o usuário deve selecionar primeiro.Eu realmente não sei como impedir que minha função leia este blob para sempre - não há nenhuma caixa de seleção como com window.prompt e não tenho certeza se a detecção de EOF irá pará-lo se não estiver no caso window.prompt (somente verificar uma caixa de seleção ajudou).

A melhor solução seria algum tipo de retorno de chamada, mas gostaria de ver dicas de usuários mais experientes.

questionAnswers(2)

yourAnswerToTheQuestion