Estoy creando un IDE de python basado en la web utilizando la biblioteca Skulpt JavaScript (y codemirror).
Cuando ejecuto código python desde el editor, que contiene varias declaraciones de impresión seguidas de una declaración de entrada, las declaraciones de impresión no se ejecutan hasta que se ingresa una entrada, que no es el comportamiento esperado.
¿Cómo puedo asegurarme de que se ejecute el código que precede a una declaración de entrada?
Aquí está mi código de configuración de Skulpt KS, dentro de la función runit:
function runit() { var prog = myCodeMirror.getValue(); var mypre = document.getElementById("output"); mypre.innerHTML = ''; Sk.pre = "output"; Sk.configure({ output:outf, read:builtinRead, inputfun: function (prompt) { return window.prompt(prompt); }, inputfunTakesPrompt: true, }); (Sk.TurtleGraphics || (Sk.TurtleGraphics = {})).target = 'mycanvas'; var myPromise = Sk.misceval.asyncToPromise(function() { return Sk.importMainWithBody("<stdin>", false, prog, true); }); myPromise.then(function(mod) { console.log('success'); }, function(err) { console.log(err.toString()); outf(err.toString()); }); }