#Lagrange v0.12 is as cool as a snowy December morning.
- Subscribe to headings (e.g., Weiph/pikkulogs).
- New sidebar on the right; dual wield on large screens.
- MIME hooks: preprocess Gemini responses on client-side.
- Prominent TLS certificate warning.
- Bug fixes and smaller enhancements.
MIDI music is a good example of how MIME hooks are useful.
- Each OS handles MIDI differently, if at all.
- It's niche so adding the FluidSynth library could be considered bloat.
- A default soundfont would have to be included as a resource.
- Personal preferences vary wrt soundfonts and effects — would need a complex config UI?
- Nice to control music playback in the inline audio player.
I elaborate on the mechanism here: https://gmi.skyjake.fi/gemlog/2020-12_hooks-and-pipes.gmi
Heading subscriptions use the same system as Gemini feeds, except entries are dated based on discovery time.
On the first refresh it just stores all the existing headings without creating any feed entries.
If you look in feeds.txt, URI fragments are used internally to keep track of headings text, so this'll only work for uniquely named ones. (Internal only: fragments won't work anywhere else.)
⭐️ Pro tip: Subscribe to new headings on "about:version" to see Lagrange change log entries in Feeds.
@jk At first I thought there wasn't much going on here beyond what AV-98's handler functionality provides, but actually, having external scripts return text/gemini is a much more powerful design, and translating Atom/RSS is a nice example. Good work!
The core idea was that control is not relinquished to external programs, they are only used to transform the data to something that Lagrange can use.
skyjake's personal Mastodon instance