Quiero convertir algunos programas de estilo de línea de comandos en JavaScript para usarlos en un navegador. Estoy planeando usar xterm.js para orquestar el aspecto terminal del proyecto, pero no sé cómo convertirlos a la naturaleza asíncrona de JavaScript en el navegador. Estos programas utilizan la entrada de estilo ocupado/espera... así:
print ("what is your name") name = input() // waits until user enters data print ("hello ", name) print ("how old are you") age = input() // waits until user enters data ...Sé que puedo rediseñar todo el programa para que sea asíncrono, pero quiero evitar eso, ya que sería una cantidad de trabajo bastante importante. ¿Alguien conoce alguna técnica que pueda lograr esto sin un gran rediseño?
Si desea imitar una consola, puede ver el ejemplo en la página principal del sitio web Xterm.js ( código fuente ).
Necesita manejar el evento onData() .