=== random things i learned about gopher === === in no particular order or structure. === it's plain text! sites are folder-based. when you go to a folder, the client looks for a gophermap file, which is equivalent to index.html. the gophermap file structure is line-based, just like how most shell utils work line by line over their input. each line in a gophermap is really simple: 0caption subfolder localhost 70 |\_____/ | | | / _____/ | \_. |_. | .__| ._/ __/ .__/ ___________| | | | | | / | / tag text tab location tab host tab port "tag" & "text" are joinedtogether. other fields are tab-separated. tag just tells the client what kind of content the the line has. that's it. every line, built up like that, makes a gopher map. some most common tags are: i:simple plaintext. other fields not needed. keep a tab at end. 1:this is a link to a folder at specified location[:host:port] i0:this points to textfile. valid tags for different filetypes are already listed on so many places, so i won't repeat them here. TEXT how-to-gophermap@baud.baby by the way, the example line above will show the content of subfolder/gophermap at localhost:70 (70 is standard gopher port). +----------------------------------------------------------+ | it seems to me gopher was specifically created to act as | | an index menu for files. so what i'm doing now, writing | | plain text content right inside a gophermap, this could | | well have been illegal, if there were any gopher police. | +----------------------------------------------------------+ i keep a tab at the end of info lines for safety. so don't enable EOL whitespace truncation in your text editor. also keep displayed text lines in gophermap files short. in my experience, lines are truncated at 67 chars. this doesn't apply to linked text files or other types of files obviously. when viewing gopher links, there will be a tag number after the hostname. such as tilde.club/1/~bdeshi. there, see? see that /1/? when linking inside gophermaps, remember that the tag is not part of the actual path. so to link to tilde.club/0/~bdeshi/passwords.txt, i might use these i 0sEcReTs! /0/~bdeshi/passwords.txt tilde.club 70 i 0sEcReTs! /~bdeshi/passwords.txt tilde.club 70 well, i might use either, but only the second one will work TEXT sEcReTs! TEXT sEcReTs! oh and since this page is already on tilde.club, i don't have to redeclare the host and port. now look, this here is e very interesting feature. you can mark gophermaps as executable, and it will be run through the shell to generate the final content! isn't that amazing? it's definitely among the top six exciting things i've learned today before breakfast!! (tbh i discovered it in the evening, but that's a minor minor non-issue. Anyway...) !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! DIR !! Demo of executable gophermap !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! what's also interesting is the enhanced features added to the gopher protocol by the gophernicus server (which is the usual gopher server used in tildes.) but... before talking about that... ====<< intermission >>==== TEXT look at this drawing i did ====<< intermission >>==== ok my short notes on gophernicus DIR are here ----------------------------------------------------------------- please do not write below this line DIR ..