[gopher] Line terminators in Gopher transactions
Alistair
alistair at alistairsserver.no-ip.org
Wed May 23 02:59:49 UTC 2012
On 23/05/2012 03:13, Nick Matavka wrote:
> If I am sending a text file through Gopher, is it the job of the
> server to ensure that the file uses CRLF? Or is it the job of the
> client to properly interpret whatever line ending the server chooses
> to use?
>
In my personal opinion it should always be the client's duty as you
never know what you will receive from a server you have to make a best
effort to render it correctly. In an *ideal world* there would be a
common standard for line endings in ascii files but this isn't such a
world and history has presented us with different encodings in different
files.
I certainly wouldn't advocate servers trying to be "intelligent" and
mangling files because even when ensuring you are only mangling text
files it can cause unnecessary hassle. [1]
I see Gopher as a transit mechanism for data, that is to say the client
and server both exist to get data from one place to another and they
should do it without changing that data.
It's 4.00 AM and I fear I'm rambling on here... Basically my view is
"when serving a file: never change the line endings" and "when
displaying the contents of a text file in a client: interpret all
possible encoding of line ends"
Alistair.
[1] I had an example of an "intelligent" computer causing me
line-ending-grief recently; I was checking out a subversion repository
for a *nix centric project on windows. Together the client and the
server conspired to decide that because I was on windows it would be
helpful to muck about with the line endings. Unfortunately when I then
tried to run some of the scripts in bash they of course crashed all over
the place! It took me a while to discover what had been done to the
files and I never did find a way to convince the client to just check
the files out without interference. In the end I just ran dos2unix
recursively over the whole source tree so I could get on with it *sigh*
More information about the Gopher-Project
mailing list