[gopher] gopher++ examples with Gophernicus/0.5-alpha

Kim Holviala kim at holviala.com
Wed Mar 31 11:51:39 UTC 2010


Woohoo!

Gopher++ up and running as planned. New spec not written yet... this 
time I'll do plenty of real-world code before bothering anyone with 
theories.

First of all, there's now a client with nearly full gopher++ support 
(only Referrer is missing, and I'm not sure if that's necessary)! The 
client is no other than - here comes the good part - NSCA Mosaic! I 
happend to have the sources on my ~/code/ (thanks, Cameron) so I hacked 
together a quick patch which adds gopher++ header support for it:

gopher://gophernicus.org/1/software/patches/gopher++/

The patch is *very* small, only 85 lines of which only ~33 are actual 
code changes. Which means adding support for gopher++ is _really_ simple 
to pretty much any existing gopher client.

After patching & building Mosaic the following things start working 
against the Gophernicus/0.5-alpha server running on holviala.com:

* Server knows about User-Agent and logs say it's "NCSA_Mosaic/2.7ck8"
* Server knows about the actual request filetype (no guessing)
* Server formats all menus to 74 char wide as requested by Mosaic
* Virtual hosting works without any selector;domain.com hacks
* Output charset is changed from US-ASCII to ISO-8859-1

Some examples - compare these between patched Mosaic and some other 
client like Firefox to see the difference.

Real virtual hosting:
gopher://holviala.com/
gopher://gophernicus.org/

Filetype no longer needs guessing:
gopher://holviala.com/g/foo/bar

Non-ascii characters in menus:
gopher://holviala.com/1/~kimmy/images/comics/



- Kim




More information about the Gopher-Project mailing list