Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to toggle CR/LF in gnu screen?

I'm using screen to read the text from a serial console. The problem is the output seems to only have newline \n but not carriage return \r, so the display looks like this...

Line1      Line2           Line3 

I wonder if there is any patch to fix this issue?

like image 208
Patrick Avatar asked Oct 18 '11 18:10

Patrick


1 Answers

onlcr is for translating outgoing newlines to carriage returns.

stty -F /dev/ttyS0 inlcr will translate incoming newlines to carriage returns. You can run that from another terminal after starting screen to avoid any resetting that screen may do on startup. Unfortunately however, this will only change the problem. You'll then get only returns and no newlines.

What is needed is an option to append a return to an incoming newline so that the terminal receives \n\r, which is what the serial device should have output in the first place. There seems to be an onlret option to do this for outgoing data, but no inlret option as we would seem to need in this case.

I have the exact same problem (using picocom though) and I've been googling off and on for days trying to find the standard fix, but no one seems to have one. There are a number of serial devices out there which only output \n and simply can't be made to output \r\n and I refuse to believe that all of them belong to only two linux users. What gives!?

like image 96
tacos Avatar answered Sep 29 '22 14:09

tacos