Sometimes you want to write something with broken lines and you write in the editor:
That’s right I’m Sokka
It’s pronounced with an Okka
Young Ladies, I rocked ya!
But it ends up looking like this:
That’s right I’m Sokka It’s pronounced with an Okka Young Ladies, I rocked ya!
The fix is to add two spaces between the final character and the carriage return.
I don’t understand what the problem is. CR should be easy enough to translate, and the users intentions are clearly confirmed because they’re looking right at what the expect it to look like when they hit submit.
Why does the user have to add two spaces? Why is the universe like this?
Edit: Holy Shit, look, I’m just an idiot typing text expecting WYSIWYG and I don’t see a good reason for why I’m not getting it other than that programmers lack theory of mind.


From what I gather (someone correct me if I’m wrong), carriage return and line feed do different things.
Think of a typewriter. It has two things. A large lever you spam which lets you move the writing position towards the start of the page (that’s carriage return), and a small wheel you spin which adjusts the vertical positioning of the paper (that’s the line feed).
Computers were modeled after typewriters. And in typewriter logic, to start writing in a new line, first you need to return the horizontal position to the start of the current line (CR), then feed a new line in (LF).
If you just CR, you’ll start to type over the text already present on thal line, and if you just do a LF, you’ll start typing in a new line from the same horizontal position, leaving a large gap of unused space to the left.
Newer models of typewriters made the large lever used for CR automatically do a LF as well as a quality of life improvement, as it was hard to nail down a consistent line spacing manually.
As computer programs atopped thinking in terms of being a 1:1 logical replica of typewriters (simulating ink being stamped on the page with a mechanical arm and supporting stamping over existibg text), but ratger in terms of layers and text boxes, selecting and editing), editors lost the ability to destruxtively atamp over existing text, so CR doesn’t do anything anymore.
Some systems only use LF (CR implicit) or verbosely say CRLF (what a typewriter would do).
Yes, thank you! The typewriter history lesson is all I needed to understand the issue!