¿Cómo cambiar el método de entrada del navegador emscripten de window.prompt a algo más sensato?

Tengo una función de C ++ que una vez llamada consume entrada de stdin. Exportar esta función a javascript usando emscripten provoca llamadas a window.prompt.

Interactuar con el indicador del navegador es una tarea realmente tediosa. En primer lugar, solo puede pegar una línea a la vez. En segundo lugar, la única forma de indicar EOF es presionando 'cancelar'. Por último, pero no menos importante, la única forma (en caso de mi función) de hacer que deje de pedirle al usuario que ingrese window.prompt es marcando la casilla de verificación para evitar que aparezcan más mensajes.

Para mí, el mejor método de entrada sería leer un blob. Sé que puedo hackear library.js pero veo algunos problemas:

La lectura de blob es asíncrona.Para leer un blob, primero tiene que abrir un archivo que el usuario tiene que seleccionar primero.Realmente no sé cómo evitar que mi función lea este blob para siempre; no hay una casilla de verificación como con window.prompt y no estoy seguro si detectar EOF lo detendrá si no lo hizo en el caso window.prompt (solo marcando una casilla de verificación ayudó).

La mejor solución sería algún tipo de devolución de llamada, pero me gustaría ver sugerencias de usuarios más experimentados.

Respuestas a la pregunta(2)

Su respuesta a la pregunta