jbanana: Badly drawn banana (Default)
I've blathered about Gemini. I started gemlog and set up a feed so it's available here: [syndicated profile] jbanana_gemlog_feed
jbanana: Badly drawn banana (Default)
I added drag/drop to open a local file; fixed gopher search; added copying a link URL; allowed user to accept expired/changed certificates; fixed a bunch of little bugs.

I find that I'm reading the news more because I can get it without all the bloat of the web.

I've also found that web browsers now have "reader view" that gets you a Gemini aesthetic: clear fonts, plain text, and no distractions. I recommend that if you haven't tried it. Firefox, Safari and Vivaldi have it built in. Chrome and Edge have extensions that will do it.

Feature possibilities: visited link colour; tabs; feed subscription; persistent history; public release (!)
jbanana: Badly drawn banana (Default)
I said...
I'll try to stop tinkering with it now.
...which didn't go as planned.

I fixed a bunch of bugs with socket timeouts, certificate names and URL handling. I added "find in page" and "search geminispace". I allowed a URL parameter at start up. And I figured how to make gemini:// links work from a browser (icky registry hack).

And I set up a gemini capsule at gemini://freeshell.de/ (I can click that link!)

Bug list: [tumbleweed]
Feature requests: visited link colour; tabs?
jbanana: Badly drawn banana (Default)
I fixed all the things I broke, and Gopher now works. There's a surprisingly large amount of Gopher content.

I'll try to stop tinkering with it now. I guess I really should put some effort into a public release...

Bug list: [tumbleweed]
Feature requests: visited link colour; tabs?
jbanana: Badly drawn banana (Default)
I wanted Jemi to support Gopher as well as Gemini. This was hard because the code was a plate of spaghetti. The protocol handling, the Gemini text rendering and the UI handling were entangled with one another. So I broke everything and put it back in more sane layers. So now I have... lasagne?

I also have previously-working features that are now broken. Sigh. Should be easy enough to fix, I hope.

Well, bookmarks are working.

Bug list: broken external links (http[s], mailto); broken image rendering; history dialog shows URLs; view source toggle back to front; local files don't display; links not showing in status bar on mouseover
Feature requests: visited link colour; gopher protocol; tabs?
jbanana: Badly drawn banana (Default)
I fixed stuff - links to the regular web work, as do images (but doesn't deal with big images well)

At some point I might try a public release. But that would require pushing Compositor to maven central and/or getting my head round modules.

If you want to try it now, you'd need git and maven, then
git clone https://git.code.sf.net/p/compositor/code compositor
cd compositor
mvn package
java -classpath core\target\compositor-1.0-SNAPSHOT.jar;apps\target\apps-1.0-SNAPSHOT.jar net.sf.compositor.gemini.Jemi
...and who has the patience for that?

Bug list: mailto links (I found one!)
Feature requests: bookmarks; visited link colour; gopher protocol; tabs?
jbanana: Badly drawn banana (Default)
It's lovely reading stuff on Gemini. There's no ads, no images, no "design", no cookies or other tracking, just... words. It's really calm. This works fine for reading ordinary people's content - blogs, etc. It doesn't seem to work for, say, a news organisation because they can't get paid for what they're doing.

Anyway, I fixed a bunch of things in Jemi: wait cursor after clicking a link; context menu; user-defined colours; keyboard scrolling; protocol error handling.

Bug list: not handling external links (HTTP, etc); non-text responses... should what?
Feature requests: bookmarks; visited link colour; gopher protocol
jbanana: Badly drawn banana (Default)
I felt pretty awful after my Covid vaccination, so I spent a lot of time sitting in bed working on Jemi.

I added handling for all the error responses; view source; user-selectable font; remember size, position and zoom; fixed link bugs (I think); fixed reading badly formatted response headers; fixed the default page so it's gemini text and in the history; fixed cache bug (nothing ever timed out)

Bug list: no wait cursor after clicking a link; not handling external links (HTTP, etc); non-text responses... should what? (hmm - some other clients allow you to display an image link in line...)
Feature requests: bookmarks; context menu; visited link colour; user-defined colours; gopher protocol, because it's a piece of cake
jbanana: Badly drawn banana (Default)
I fixed the history - a working back button is a big win. I fixed the location bar.

Bug list: no wait cursor after clicking a link; relative links sometimes go to wrong place (or do they?); links with a port number don't work right; not handling external links - HTTP, etc; non-text responses... should what?
Feature requests: bookmarks; cope with badly formatted response header (quite a few of those - gives server authors a hard stare); history; context menu; visited link colour; user-defined colours, fonts, etc Edit: gopher protocol, because it's a piece of cake
jbanana: Badly drawn banana (Default)
I fixed zooming the text because it was infuriating to have tiny text all the time. I added a cache. I've got to the point where I can actually use Jemi to read content in Gemini space and only several aspects are broken (not all aspects). It was frustrating that it didn't work at all. Now it's frustrating because it almost works.

Bug list: relative links sometimes go to wrong place; not handling external links - HTTP, etc; back button... doesn't; location bar doesn't work; non-text responses... should what?
jbanana: Badly drawn banana (Default)
I fixed a bunch of issues with relative URLs, and I'm now reading the response status and mime type correctly. I don't cope too well if it's not 20 text/gemini, but at least I have the right info so I can implement more. Redirects (3x someUrl) should definite work, and so should user input (1x).

Styling is better - fonts, padding sorted and headings work right.

And the client is called Jemi.

Bug list: preformatted text... isn't; not handling external links - HTTP, etc; back button... doesn't; location bar doesn't work; non-20 responses shouldn't all be treated as errors; non-text responses... should what?

Gemini

Mar. 11th, 2021 01:05 pm
jbanana: Badly drawn banana (Default)
I stumbled upon the Gemini protocol. I've no idea if it will be a success, but it seems like a nice idea. And it's not too hard to write a client, so I've been doing that.

I already have a thing for making a GUI. Rendering a page with links just means putting some HTML into JEditorPane and adding a HyperlinkListener, so I just have to fetch a page and translate it. There was some fun and games with the TLS/TOFU requirement, but I asked the internet and got a sensible answer.

Bug list: preformatted text... isn't; all responses assumed text/gemini - whoops; not handling external links - HTTP, etc; back button... doesn't; general styling yuckiness

May 2025

M T W T F S S
   1234
5678 91011
12131415161718
19202122232425
262728293031 

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 15th, 2025 02:27 pm
Powered by Dreamwidth Studios