WEB2GOPHER

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.

 - The Free Thinker, 2022.