Commit Briefs
remove phos; now unused
phos was an attempt at building a gemini client/server library. It didn't went as I expected, mostly because it's such a simple protocol... Anyway, the only use in telescope was for the uri module, which has already been replaced with the built-in iri. Which still sucks (and despite the name, can still only handle URIs) but it's hopefully better. The APIs are better.
net: don't need a uri, just host and port fields
While here, make 'em dinamically allocated.
apply load-url-use-heuristic for command line arguments too
This semplifies a bit the handling. humanify_url() now takes the base URL which we can then use when not using the heuristics. Command-line arguments now take an implicit base of <file://$PWD/> when the heuristics are disabled, so that foo.gmi resolves to the local file even without <./>. See github issue #10.
iritest: one more test, just in case
It stemmed from my misuse of iri_parse(). There's nothing wrong in the parser (that I found at least), but one more test won't harm.
add the up, root and home commands
These navigates respectively one level up in the path hierarchy, to the root directory and to the "home". The home is considered to be the first path component in the form of ~username. `home' is yet to be implemented.
add load-url-use-heuristic knob
This is still WIP and may change before the next release. It could be worthwile to resolve the URLs in load-url using the current page as base, so that while browsing <gemini://a.org/b/c>, using load-url to go to "/" would load <gemini://a.org/> instead of <file:///>. The new option `load-url-use-heuristic', if unset, provides exactly this behaviour. It is still a bit rough to use, as for e.g. loading <d.net> would now yield <gemini://a.org/b/d.net> instead of <gemini://d.net>. Will need more work in-tree, but for now add it so we can reason about it. See github issue #10