Return | |
##16 2018-06-04(Mon)17:48:46 (archived 2018-07-24(Tue)10:10:27) | |
_____________________________________________________________________ | |
Gopher replacement? | |
_____________________________________________________________________ | |
__[2018-06-04(Mon)17:48:57 #104]______________________________________ | |
I've been fidgeting designing a gopher-esque protocol. Like people | |
say "oh gopher is simple", but it really isn't as much as it ought | |
to be; it's crufty and ugly. And it doesn't use utf-8; go witness | |
the gibberish on gopherpedia. | |
__[2018-06-04(Mon)17:49:43 #105]______________________________________ | |
But I'm not sure. Does gopher need more? Just this simple board is | |
a stretch for the protocol! It would be nice to embed images. It'd | |
be nice to have formatting. It'd be nice to have forms, with file | |
upload and multi-line text. | |
__[2018-06-04(Mon)17:50:04 #106]______________________________________ | |
What if I want to show a complex math formula? LaTeX?! A protocol | |
could be extensible, but the addition of the expectation that | |
somebody implements extensions just complicates it again. | |
__[2018-06-04(Mon)17:50:24 #107]______________________________________ | |
Maybe it should be some kind of X11 clone? A few primitives, of | |
text and images and cards... | |
__[2018-06-04(Mon)17:50:58 #108]______________________________________ | |
(/end) | |
__[2018-06-04(Mon)22:57:27 #109]______________________________________ | |
there's no issues with utf-8 over gopher AFAIK. It could be your | |
gopher *client* doesn't support utf-8 though, or the code gopherpedia | |
uses to convert the Wikipedia data doesn't handle it properly. Could | |
you link to a specific example?\ | |
__[2018-06-04(Mon)23:17:31 #110]______________________________________ | |
Many gopher clients recognize 'h' as an HTML document, esp. hybrid | |
web/gopher clients (lynx, mozilla, FF w/ Overbite). A few gophers | |
have opted to use light HTML instead of plain text for their phlogs. | |
__[2018-06-05(Tue)13:16:34 #111]______________________________________ | |
With inline images will come advertising. It's better to ask what | |
HTML can't do that Gopher can, because what HTML can do, people | |
will use it for instead (as they already do). | |
__[2018-06-05(Tue)23:31:44 #112]______________________________________ | |
gopher is just a protocol, you can serve any kind of file you | |
like over it. The trick is agreeing to a particular format, more | |
featured than plain text w/ links but also lighter than HTML, | |
and adding support for it in various clients. | |
__[2018-06-05(Tue)23:42:58 #113]______________________________________ | |
For the other way around, *receiving* data from clients, you probably | |
do need to extend/replace the protocol. Data can only be sent in the | |
selector (URL) like an HTTP GET request, with a very basic type of | |
"form" (search items). | |
__[2018-06-05(Tue)23:47:49 #114]______________________________________ | |
There's some alternatives, like adding state with "sessions" | |
(so you fill in one "form" item per request, see GopherPoll) or | |
encoding complex input in to something that fits in a selector | |
(e.g., base64, but some clients/servers limit the length of input) | |
__[2018-06-06(Wed)00:02:59 #115]______________________________________ | |
Another alternative is to just use different protocol for input. See | |
Gopherchan, which uses telnet to do more complex posting. | |
__[2018-06-06(Wed)01:13:21 #116]______________________________________ | |
gopher://gopherpedia.com/0/Hangul | |
__[2018-06-06(Wed)01:16:58 #117]______________________________________ | |
#109: Here's a gopherpedia link that nominally contains Unicode. | |
__[2018-06-06(Wed)01:19:32 #118]______________________________________ | |
If you're using telnet for input, you might as well just use telnet | |
for everything else. | |
__[2018-06-06(Wed)09:44:39 #119]______________________________________ | |
#117: What gopher client are you using? It looks okay to me in lynx | |
and Overbite (screenshot to follow). You may have to configure either | |
the client or your terminal to display the characters correctly. | |
__[2018-06-06(Wed)09:46:39 #120]______________________________________ | |
"Hangul" gopherpedia page in Lynx | |
__[2018-06-06(Wed)09:58:46 #121]______________________________________ | |
#118: I don't agree. Supplementing gopher with a small service to | |
capture input is different than implementing an entire BBS. A better | |
example might be an FTP server for "raw" file upload/download + | |
a gopher server for friendlier read-only access. | |