Providing stdin zu einem HTML-Programm emscripten?

Ich habe ein C-Programm, das ein Argument (ein Zeichen-Array / eine Zeichenfolge) über die Befehlszeile akzeptiert und auch von stdin liest. Ich habe es mit emscripten in JavaScript kompiliert. Dies war erfolgreich und ich kann es wie das normale C-Programm mit node.js ausführen:

emcc -O2 translate.c
node translate.js "foo" < bar.txt

Wie Sie sehen können, gebe ich den String "foo" als Argument und den Inhalt von bar.txt als stdin an. Jetzt möchte ich, dass dies eine in sich geschlossene HTML-Datei ist.

Durch Ändern der Ausgabe in HTML:

emcc -O2 translate.c -o trans.html

Ich stelle das Argument vonaddingarguments: ['foo'], zu den Definitionen invar Module. Dies funktioniert wie erwartet, das Programm erhält das Argument korrekt.

Now, wie kann ich die stdin-Eingabe für dieses Programm bereitstellen? Ich muss das nicht dynamisch machen. Es wäre in Ordnung, einfach irgendwo im HTML-Code eine Zeichenfolge mit dem erforderlichen Standardinhalt zu deklarieren.

Bearbeite

Nur eine Lösung gefunden, die für mich funktioniert. In der JS-Datei für das generierte HTML gibt es einen Standardeingabehandler, derprompt()s der Benutzer, wenn keine andere Eingabemethode definiert ist. Bearbeiten Sie einfach die Variableresult oder eigene Funktion aufrufen:

} else if (typeof window != 'undefined' &&
    typeof window.prompt == 'function') {
    // Browser.

    // REPLACE THIS CODE:
    result = window.prompt('Input: ');  // returns null on cancel
    if (result !== null) {
        result += '\n';
    }

Antworten auf die Frage(6)

Ihre Antwort auf die Frage