But DOS was developed on/for systems with CRT displays.
It doesn't really bother me, but every now and then this strikes me as peculiar.
But DOS was developed on/for systems with CRT displays.
It doesn't really bother me, but every now and then this strikes me as peculiar.
Dealing with raw vs cooked (where LF is automatically translated to CRLF) ttys in UNIX is also a giant pain when you have to do it, so in a way it's not surprising that they decided to leave that out. The original DOS kernel was very minimal compared to UNIX even of the same era. Of course, it turns out that having to write CRLF into files is also a pain - Windows has binary and text mode files instead of raw and cooked mode ttys - and one that you encounter much more often.
On the other hand, there are far fewer use cases for LF without CR, certainly nothing that isn't better done using ANSI codes.
LF without CR is something that one would do on a typewriter for typing tabulated data or mathematical formulae. It's just a way to go "down" but stay at the horizontal position you were previously at.
* http://jdebp.eu./Softwares/nosh/italics-in-manuals.html
I wrote a better manual page for ul(1) that explains some of this. ul is basically a TTY-37 to your-terminal-type converter, and it implements a lot of the effects that one would see on a real teletype. Unfortunately, the old manual hasn't progressed much beyond the original 1970s one and doesn't explain a lot of the functionality that the program actually has.
https://www.google.com/search?q=python+universal+newlines+mo...
Edit: added the PEP (it's from 2002) and excerpt from it:
https://www.python.org/dev/peps/pep-0278/
This PEP discusses a way in which Python can support I/O on files which have a newline format that is not the native format on the platform, so that Python on each platform can read and import files with CR (Macintosh), LF (Unix) or CR LF (Windows) line endings.
That seems to be the reason for a lot of odd design choices. ;-)