ruby io console

¿Cómo puedo usar "puts" en la consola sin un salto de línea en ruby on rails?



io console (1)

Tengo un método que pasa por un ciclo: quiero que muestre un "." cada ciclo para que pueda verlo en la consola. sin embargo, pone un salto de línea al final de cada uno cuando uso puts "." .

Si hay alguna manera para que solo tenga una línea continua?


Debe usar imprimir en lugar de poner. Además, si desea que los puntos aparezcan sin problemas, debe enjuagar el búfer de stdout después de cada impresión ...

def print_and_flush(str) print str $stdout.flush end 100.times do print_and_flush "." sleep 1 end

Editar: Estaba investigando el razonamiento detrás de la descarga para responder el comentario de @ rubyprince, y me di cuenta de que esto podría limpiarse simplemente usando $stdout.sync = true ...

$stdout.sync = true 100.times do print "." sleep 1 end