4 ms·
What terminal interprets "\r" as "clear the line"? I would have thought that is considered a bug.
by jstanley 3y ago
What terminal interprets "\r" as "clear the line"? I would have thought that is considered a bug.
- fragmede 3y agomost of them do. it's what a /r means. it's how cli programs can easily output a spinning wheel/similar for busy status.
- jstanley 3y agoNo, "\r" means return the cursor to the start of the line without clearing the line. Try this: $ echo -ne "ooo\rf\n" foo If a "\r" cleared the line, you would just see a "f", not a "foo".
- fragmede 3y agoisn't that what I said?
- t-3 3y agoYou want to know how I know you never wrote your own text editor? Carriage return is a carriage return, not a delete or backspace or clear line.
- benj111 3y ago>Carriage return is a carriage return To be fair it isn't. On typewriters it also adds a new line. On Mac, it is (used to be?) the new line character. I don't know how non vt terminals handled it.
- fragmede 3y agowho said anything about clearing? I just meant that \r goes to the beginning of the line, so you can output a busy spinner
- t-3 3y ago> What terminal interprets "\r" as "clear the line"? I would have thought that is considered a bug. >> most of them do. it's what a /r means. it's how cli programs can easily output a spinning wheel/similar for busy status. You did.
- DonHopkins 3y agoYou want to know how I know you never wrote your own C program or terminal emulator? /r means "slash, then the letter r". \r means carriage return, which doesn't clear the line, just moves the cursor to the left margin. Unless you're on an Apple ][, in which case CHR$(13) moves to the beginning of the next line, but still doesn't clear anything. And CHR$(4) is where the real magic happens, but it has to follow a CHR$(13)! ]PRINT CHR$(4) + "INIT HELLO"
- fragmede 3y agoyou're absolutely right. It's impossible that I've ever written any C, and just fat fingered the / and \. ... Point is, \r goes to the beginning of the line, without going to the next one, as you reiterated, so you can output a spinner using - / - \