Building a Transient Menu for Elpher

For fun, I'm helping Matto create a Transient menu for Elpher, the Gopher and Gemini Client available as an Emacs add-on. TIL how to define transient-colums.

Our attempt at an Elpher Transient menu is inspired by Charles Choi's excellent Casual Emacs package.

Once we're ready enough, we'll share it.

The elpher-tmenu quickly started to take up quite a bit of screen space. To save me from typing a thousands words:

the image shows one Emacs window, with two buffers each taking up half the vertical window."

However, Transient comes with columns built-in.

All this is needed, is one extra opening square bracket "[" at the first Menu item you define in transient-define-prefix, and then the closing square bracket "]" where you want the columns to end.

To start, instead of:

(transient-define-prefix our-elpher-tmenu ()
  ["Navigation"

It is:

(transient-define-prefix our-elpher-tmenu ()
  [["Navigation"

Tada!

the image shows one Emacs window, with the bottum buffer taking up just one-sixth of the vertical window."