• rswail 33 minutes ago

    It's a damn shame that the control characters for "Field Separator" (FS ASCII 28 decimal) and "Record Separator" (RS ASCII 30 decimal) weren't used instead of TAB and CR/LF.

    Then the whole CRLF vs CR vs LF for line endings in files would have been totally avoided, with CR returning the print-head/cursor to the left-most position (right-most on R-L languages) and LF literally moving the print-head/cursor down.

    The drivers for the particular terminal could have translated as required, and we would not need (in 2025!) to be specifying to git and elsewhere what to convert line endings to/from.

    I know that back in the days of literal TTYs (ASR-33) where I cut my teeth, the BEL/BS/SP/CR/LF/FF etc characters were literally controlling a print head, but even then it didn't make much sense that we didn't have internal representation of what was needed (field separator, group separator, record separator) that was translated when doing actual I/O to a physical device.

    • weinzierl 24 minutes ago

      We had distinct keys for Enter and Return for the longest time. An ISO standard keyboard has Return in the main block and Enter in the numpad.

      https://en.m.wikipedia.org/wiki/Enter_key#/media/File%3AEnte...

      • aag 4 hours ago

        What a wonderful essay. I learned to type on a manual Underwood typewriter with a carriage return lever. I don't miss it, but there was something so satisfying about moving that lever and feeling the whole carriage move. It meant that I had typed another line, and had made progress. The thing I truly don't miss was not being able to afford a new ribbon, and having to move back over every character and type it again to make sure that it showed up because the ribbon was so dry. Or not being able to undo mistakes.

        • jama211 12 minutes ago

          I wonder if I should make a joke menubar program where every time you make a newline while typing it sounds a slide-ding noise! I might do that…

        • jasperry 5 hours ago

          I remember being mildly intrigued as a kid when I started seeing PCs with the Enter key where my C64 had Return.

          It's ironic that, though we haven't seen a Return key for a long time, the down-left arrow symbol still used on many keyboards represents the motion of a carriage return. I guess there's no other symbol that would convey the meaning of Enter as well.

          • wpm 2 hours ago

            Every Apple keyboard, even the iPhone I’m typing this comment on, has had a Return key. Only the Num Pad has an Enter key on Apple’s keyboards.

            • aldto an hour ago

              And Fn+Return can be used for Enter if the keyboard doesn't have a Num Pad, for the few Applications that use it.

              • jama211 11 minutes ago

                Huh, TIL. I do wonder though what programs are looking so specifically for the exact Enter code.

            • weinzierl an hour ago

              Same for me. It had the smell of professionalism. Even more than for an Enter key I longed for the luxury of four distinct cursor keys.

              • kstrauser 3 hours ago

                The 2023 MacBook Air I'm typing this on has a return key.

                • hulitu 2 hours ago

                  > I guess there's no other symbol that would convey the meaning of Enter as well.

                  Just wait until UI mafia from Microsoft, Apple or Google find about this. They will come with a new symbol every 3 months.

                • layer8 5 hours ago

                  The first programmable device I owned was an HP scientific calculator, which had a big Enter key, the only key spanning the space of two regular keys on the device. A friend opined that you could tell that it was a real computer and not just a calculator by the presence of that key. It wasn’t true though, the Enter key was there for the HP’s RPN operation and wasn’t otherwise relevant to its programmability.

                  • userbinator 4 hours ago

                    To me, "return" implies a "go back" action (like "backspace"), which is the opposite of "enter", so naming the key the latter makes more sense. Plenty of TUIs used the arrow keys, Backspace, and Enter for navigation.

                    Also, the text is nicely readable but none of the images are viewable.

                    • vmladenov 2 hours ago

                      It was one of the things I found amusing my first time using OS X after growing up on Windows. Enter would “enter” a folder or execute a program, while Return in Finder starts renaming the file.

                      • gyomu 3 hours ago

                        As I understand it, "return" is a shorthand for "carriage return" - as on typewriters, going to a new line meant returning the carriage to its original (start of line) position.

                        • rswail 30 minutes ago

                          Carriage return moved the paper (on typewriters before the IBM Ball) and moved the print head (the "ball" on an IBM typewriter, or the actual print head on TTYs and DECWriter equivalents) back to column 0.

                          Line Feed moved the paper up one line, Form Feed moved the paper up by a "form length" or, in the case of chain printers, to the particular position on the chain that was synchronized with the perforations on the paper itself.

                          The carriage return physical device on the typewriter combined moving the carriage (which could be done by hand) and the rolling of the paper up one line (which could also be done by hand) into one convenient motion.

                          • esafak 3 hours ago

                            Going to a new line is "line feed", hence the combo CR/LF.

                            • ArnoVW an hour ago

                              I believe that it also has to do with the fact that at the time there no ‘screens’, only teletypers. So a new line is “return the carriage to the start” and “feed another line” (of paper) into the printer.

                              • flomo an hour ago

                                Yeah, it kinda blew my mind when I figured out that DOS was actually correct in that way, and unix was 'cheating' by magically inserting CR into the terminal codes.

                            • wpm an hour ago

                              You’re “returning” whatever text you typed to the program accepting input.

                              • falcor84 an hour ago

                                That doesn't quite fit the regular usage of the word. When someone asks you a question, you don't "return", but rather "respond" or "reply" or perhaps "submit" your response.

                                • userbinator an hour ago

                                  Some people will "revert", which doesn't help matters much either.

                            • kimixa 2 hours ago

                              I remember back in the day I had a demo disc where one of the installers (I think it was Theme Park?) had a prompt of "Press return to quit, press enter to continue". And that confused single-digit-years me for a surprising amount of time, as there wasn't, to my mind, a real difference between the two keys.

                              Even then I assume it was really a troll as much as anything else.

                              • Doxin 26 minutes ago

                                Perhaps a confused translation of escape/enter happening there? I don't think there's many (if any) PCs with both a return key and an enter key.

                                • brianpan 7 minutes ago

                                  My experience is with IBM AT and OS 2 which had a Return and a numpad with an Enter. The AT and Model M keyboard at least were part of a very popular and influential generation or two of "PC".

                                  https://en.wikipedia.org/wiki/Model_M_keyboard

                                  EDIT: Holy cow, those Model M pictures are so nostalgic.

                              • 3036e4 2 hours ago

                                Older (pre-1980 or so?) Swedish texts call it vagnretur. Literally a wagon (or carriage; Swedish has only a single word for those things) return. Guess English picked up the word carriage from French at some point and that word ended up being used for carriage return rather that wagon return that would have made as much sense to me, but that might sound weird to native speakers.

                                • adastra22 an hour ago

                                  Why would wagon return make sense? I don’t see the connection. A carriage is something that holds things for transport. A wagon is specifically the wheeled thing that is pulled along. Typewriters aren’t wheeled transports.

                                  • Etheryte an hour ago

                                    It makes sense because it's the same word in Swedish, the distinction doesn't exist.

                                    • amszmidt an hour ago

                                      A carriage is a wagon that transports people, not "things", a carriage are also usually wheeled, just like wagons.

                                      In this case, one reason why "wagon return" might have made more sense is because there is a wagon that holds the platen of the typewriter.

                                      • GLdRH an hour ago

                                        Carriage is another word for wagon (german Wagen, swedish vagn)

                                    • strken an hour ago

                                      When the essay says "a literal tooth", does it really mean a literal calcium tooth from some animal's mouth?

                                      • rswail 27 minutes ago

                                        There was a metal tooth that the shift lock engaged on the shift key below it, effectively "locking" the key carriage in place in the "shifted" position (caps lock for alphabetic characters, the "special" characters for the numerics).

                                        To release it, you either pressed the shift key down, or pressed the shift lock again to "unlock" the shift.

                                        No animals were harmed by the implementation of the tooth :)

                                        • anotherhue an hour ago

                                          No those would be "literal canines", i.e. grammatical assistance dogs.

                                        • usr1106 5 hours ago

                                          Technically the difference is clear. Return is for character based protocols, teletypes, ttys, VT100, ssh and the like.

                                          Enter is for IBM 3278 style where a "screenful" or form of inputs is buffered by the terminal and sent as a whole when the user presses enter or send. Fewer interrupts and context switches at the mainframe. Required even its own ssh client. Return key exists, too, and can be part of the buffered data record.

                                          In practice the enter term leaked into the character-based world.

                                          • SoftTalker 5 hours ago

                                            And of course ASCII separates them, with LF (linefeed, sometimes called newline) and CR (carriage return, or just return) being two separate characters. Windows (and probably some other) text file conventions used CR+LF to end a line, while unix conventions used just LF (hence the alternate name of "newline").

                                            • chowells 4 hours ago

                                              In line printers, a line feed moves the paper forward one line. A carriage return moves the print head back to the start of a line. You can do interesting things by making them separate commands, like bold text (overstrike) or underlining, so they were independent commands for talking to a line printer.

                                              ASCII standardized on a character set containing control codes for line printers, so it included CR and LF separately. It's a bit weird that some terminals changed the semantics of those control codes, but I guess things never stay static in time.

                                              • rswail 22 minutes ago

                                                Line printers (also "chain printers" from IBM) used "form feed" to move the paper to the next "form", which for the most part was moving the tractor fed paper to the line after the page perforations.

                                                The printers either kept track of the number of lines printed "so far", or, in the case of a chain printer, there was a literal chain (similar to an engine timing belt) that had a particular location that was supposed to be aligned with the paper perforation.

                                                Standard tractor feed paper had a printable area that was 132 monospaced characters wide (13.2") and 11" high. Tractor feed paper had the holes at a standard distance apart vertically and a standard margin to allow for the tractor holes and an area before printing, so that the paper could also have vertical perforations to remove the tractor feed paper after printing.

                                                Teletypes were 72 characters wide and 0.1" line height and used continuous paper rolls.

                                          • Someone 4 days ago

                                            FTA: Apple also added Enter to the numeric keypad, although an Enter that almost exclusively did the same thing as Return.

                                            If applications followed the UI guidelines, Enter behaved like Return if enter didn’t make sense in the context and vice versa. Yes, that was mostly (when do you have UI to enter a multi-line text to be processed as a separate unit?) but when it mattered, return started a new line, and enter sent entered text to be processed by the application.

                                            MPW shell was a (?the?) prime example. In its editor, Return started a new line, Enter executed the current selection or, if there was none, line.

                                            • YZF an hour ago

                                              My 2013 MBP says `enter` above `return` ... Presumably shift is the modifier (I never use it).

                                              • robinhouston 4 hours ago

                                                On a current Mac laptop, you can still press fn + return to get the effect of the Enter key.

                                                The only thing I really use this for is renaming files in Finder: select a file and press Enter to edit the filename.

                                                Are there any other apps in which it does something useful nowadays?

                                                • littlecosmic 2 hours ago

                                                  On my 16" M1 MacBook Pro both Return and Fn+Return edit the filename... does it work differently on yours?

                                                • etbebl 6 hours ago

                                                  I have a faint memory of Enter creating a page break rather than a newline on a school Mac when I was a kid. Maybe that was in AppleWorks?

                                                  • dkga 4 hours ago

                                                    I wouldn’t doubt it, the way some Mac keys are completely unintuitive.

                                                  • blahedo 3 hours ago

                                                    On at least some Macs well into the 2000s, I remember that if you had a dialog with a text field in it, Return would add a new line in the text field, but Enter would _always_ choose the button with the thick black bar around it (typically "OK"). There were also some websites where OmniWeb (remember OmniWeb?) would interpret the Enter key (but not Return) as "click the 'next' link on this page", which was great for paging through webcomic archives and the like.

                                                  • maxlin 26 minutes ago

                                                    Good read, I didn't realize how much diversity there was in those buttons. Thought it was just a few different options!

                                                    in CR LF, the LF being there to account for timing as its tolerant of the return process still being in progress is genius.

                                                    • mproud 4 hours ago

                                                      Keys are often replaceable; and we can put our own labels on them.

                                                      Why not “Sure”?

                                                      • IgorPartola 3 hours ago

                                                        Make it so.

                                                        Proceed.

                                                        Engage.

                                                        Take that!

                                                        En Garde!

                                                        Go!

                                                        Blam!

                                                        Start your engines!

                                                        Yes.

                                                        Forward.

                                                        Eh, good enough.

                                                        • JdeBP an hour ago

                                                          If you have an "Internet" keyboard, you already have a "Forward" key.

                                                          • wpm 2 hours ago
                                                            • mbork_pl 36 minutes ago

                                                              Allons-y!

                                                              • arduanika 2 hours ago

                                                                Shibbit!

                                                            • bee_rider 4 hours ago

                                                              On my phone with 100% text size, I got a hyphen as follows:

                                                              “Manual hyphenation was not ad-

                                                              vised, either”

                                                              It is a very common older model iPhone, so I wonder if they lined that up on purpose. Brilliant, if so. It isn’t a manual hyphen, it just so happens to hit there.

                                                              • eternauta3k 2 hours ago

                                                                If you want more of these jokes in the structure and flow of the text you should read Gödel Escher Bach.

                                                                • tomr_stargazer 4 hours ago

                                                                  I got lucky in a different spot:

                                                                  "Manual hy-

                                                                  phenation was not advised, either."

                                                                • transfire 3 hours ago

                                                                  I agree. Separate keys would be better.

                                                                  I wonder if hat word processors would have used a separate Enter (or Go!) for?

                                                                  • code_martial 38 minutes ago

                                                                    I was considering a purchase, seeing as it is such a wealth of information and history. However, there are expletives in chapter titles! That’s a no-no for a collection-worthy book.

                                                                    • rrr_oh_man 35 minutes ago

                                                                      The Valley Virgins strike again

                                                                      • IshKebab 32 minutes ago

                                                                        Are you 12?

                                                                        • code_martial 23 minutes ago

                                                                          My child is.