I didn't realise it until I had begun routinely using the UMN
Gopher client to browse Gopherspace, but besides the simple and
unencrypted design, another feature of Gopher that I've come to
love is how with the right client it can make keyboard navigation
genuinely usable.
While the simple arrow-key navigation in text-based web browsers
like Lynx promises great convenience, I've never found it to be
realised in practice. Perhaps it's just me, but I really don't
think hypertext works without a mouse - and indeed the most
prominent introductions of hypertext-like technologies in the past
tended to be accompanied by a mouse or mouse-like device.
Navigating hypertext links with the arrow keys leads to the page
jumping about and breaking the context that you would usually see
by scrolling it normally, with navigational links intended to be
visually isolated in navigation bars often interjecting into one's
attempt to move to a link within the page text. Plus you have to
still move your hand away from the arrow keys in otrder to access
page scrolling controls that aren't link-orintated. I've never met
another real-life human who uses a text-based browser, so I don't
know if they have some magic way of avoiding/ignoring these
problems, but it seems to me that they must apply everywhere and
it's a big reason why I choose Dillo as my go-to lightweight web
browsing option instead of something text-based (yes I know many
support mouse actions in the terminal, but that's a compromised
experience).
On top of this, the horrors of CSS menus have made it just
downright tedious to pick out navigational links on many websites,
burried in a list among hundreds of unrelenting possibilities that
take up 95% of the overall page length. I can scarcely imagine the
user who would encounter bad cases of such sites and not soon
develop murderous intentions towards the associated web designers.
Gopher however works wonderfully to navigate using just the arrow
keys, far more efficient than waving a mouse about or darting hands
around a keyboard. By separating navigation pages from text content
you make links easier to navigate, and avoid the need to have
separate keys for moving up/down the text.
As wonderful as all the cuddly personal content from the modern
Gopher resurgence is though, it's not really enough to replace the
web. So what I really want is some way to browse the web like
Gopher.
The basic idea would be to download a web page, scan it for links
and generate a gophermap-like document showing them with a little
surrounding context, then offer a plain-text rendering of the page
itself. Some parsing of the CSS to generate sub-gophermaps
corresponding to menus would avoid the endless links problem. Plus
for sites that are filled with nasty Javascript, it could support
site-specific parsers which tap into the underlying API to grab the
content according to pre-defined menu options, effectively a
platform for my web-dl concept.
This could be done either as a custom web browser, or a Web-Gopher
proxy. For simplicity the latter might be the best starting point.
A script run by the CGI functionality in Gophernicus would do the
job, taking target web URLs as search queries. Though I'd
eventually like to keep inline images to some extent, like in w3m
or links2's graphical mode, so that's where a custom web browser,
or HTML renderer, would be better.
I'm seriously thinking about doing this one, so suggestions, or
links to any similar prior work, would be welcome.