April 27, 2021 I came across the Wandering Geek phlog's rant about unformatted text and gopher protocol the other day. gopher://gopher.unixlore.net/0/glog/gopher-annoyances.md The point was generally made that gopher is not the web, and we should keep it that way. I agree with that point. One item I take issue with, though, is the Geek's assertion that all text in gopher should be hard formatted to no longer than 70 character lines for the apparent sole purpose being so that the writer's aging computer and gopher browser won't "barf." Annoyances can cut both ways. I believe strongly that the 70-80 character examples mentioned in the gopher protocol specs were just that: examples. I will argue here that line formatting is not part of the official gopher protocol, and that we are free to leave formatting to 'well tempered' gopher client software. First, many older gopher browsers already wrap text lines so that the user will have an experience better suited to their screen. These days, mobile gopher browsing is an actual thing. Hard formatted text makes for jagged mishapen display, which is difficult and annoying to read. Even the venerable old Lynx text browser has no trouble wrapping text in gopher. Since the creators of gopher protocol saw fit to leave most formatting issues to the browser developers, I don't have a problem with text lines longer than 70 characters. Ah ha, the Wandering Geek might say, wagging his finger in my face. What about section 3.9 of gopher protocol, "User display strings and server selector strings." Doesn't the protocol clearly state that "user display string should be kept under 70 characters in length." Indeed it does, with the writer specifically indicating "SHOULD" rather than "MUST." The reason a line "should" be formatted is because "longer lines may not fit across some screens." The writer clearly intended this as a recommendation, not an incontestible part of gopher protocol. In the context of the date of publication, "should" would meet most user experience cases and was suggested as an illustrative example; but because the authors were well aware that screen width would most certainly change at some point, they stopped short of saying lines "must" be 70 characters. Additionally in section 3.9, the writer suggests "User display strings are intended to be displayed on a line on a typical screen for a user's viewing pleasure." 70 character strings are not very typical these days, are they? That's the reason they did not specify that text line length "SHALL" be 70 characters. Display strings are not text files. They are the portion of selectors that are displayed. The most obvious evidence for there being no 80 character mandate in Gopher protocol is also in Section 3.9: "Clients may truncate to a length convenient to them." In otherwords, if a selector string or a text file line is too long, the client should just wrap it or cut it off. Any decent gopher client will simply wrap text. Gopher clients have a great deal of power, and they should use it wisely to give the user the best experience. The authors of gopher protocol, being wise men, most certainly understood the screens would change over time, and so they suggested that we format for a 'typical screen'. Indeed, they were concerned enough to single out a "user's viewing pleasure" as a consideration in formatting text. The idea of 70 character line lengths is better placed as a directive to gopher browsers, rather than to format every text document in the world to a hard line length. And just how do I infer this? From Section 4.0, "Simplicity is intentional." Here the internet Gopher philosphy was clearly stated: a. Intelligence is held by the server, and b. the well tempered server ought to send "text". "Should this text include tabs, formfeeds, frufru? Probably not, but rude servers will probably send them any way." I read this as a license, indeed as an instruction, to remove hard line formatting of text files. To me, hard line formatting is 'frufru' that forces a particular line length on every viewer of a text file, despite the size of their screen, inevitably leading to a poor experience. The authors did not want that. Instead, Gopher's fathers intended intelligence (text file) to be held by the server, while the client would provide "access" to the document, whatever the type of the document. Imagine, if most screens in the world were 720x480, they may have suggested 720x480 pixel formatting of video, but -- just as they suggested 70 character lines -- they would not mandate it, because what was important to them was user experience. Going back to the Note in RFC1436: [url: https://tools.ietf.org/html/rfc1436] In the note that suggests a 70 character displayable line, the clear reason stated for this is that "longer lines may not fit across some screens." Being formatted correctly to the user's screen is important to the writer. Gopher's authors were concerned with user experience, that the text should fit the screen. This suggestion is given more as a suggestion and guidance appropriate to this moment in March 1993. It was never suggested that 70 characters should be the only permitted line length. Certainly, they could have done this, but chose not to. The writer's main concern is with a) the user experience on a typical screen, and b) formatting in the gopher browser, and also that c) documents, including text documents, should not contain extraneous formatting that would interfer with the user's experince, while conceding that many servers will probably send files with 'frufru' formatting anyway. Therefor, the "well-tempered client should do something reasonable with funny characters received in text; filter them out, leave them in, whatever." So now in 2021, one of the most convenient and best gopher experiences is mobile browsing. Yet some people are calling for every doc in gopherspace to have hard formatting that jeopardizes the experience of short width screens, as well as screens with widths much longer than 80 characters. I suggest we remain true to the authors primary focus on the user's exprience, and their call in 4.c to build "well-tempered" clients that will deliver this experience. Clearly, they intended for content formatting to occur in the client, and for the client to do something "reasonable" with it. A "Well-tempered" client will simply wrap text to fit the screen and give the user a better experience. This is why I have no problem offering users, espcieally mobile users, the 'best' experience that gopher can provide by allowing their gopher clients to manage text file content without frufru formatting interference coming from the Magical.fish server. Although you will occasionally encounter text files here that have some hard formatting, the content we generate will primarily be longer text lines which any well-tempered client should reasonably be able to deal with. Just as the authors intended. If you don't like how text files display on your screen, then take it up with the developer of your gopher browser. Or find a better one. Most of them can wrap text just fine. -fish