I have a use case where a daemon thread needs to write periodic updates to sys.stdout. I'd prefer it not to print in the middle of a command being typed. In order to achieve this, I have added to the readline module. There is now a function to determine whether we are reading a line, and one to call rl_forced_update_display. These functions enable me to say (in the daemon thread):
def describe (indicator):
if readline.reading_line ():
print ()
print (indicator.description)
readline.forced_update_display ()
else:
print (indicator.description)
I have read PEP7, and have made patchtest on my patch. |