Nano is currently my default text editor. I’m drawn to it in that it is focused and readily configured to operate within a Software Tools model where fairly sophisticated behavior could be defined in the form of calls to external command flows. The source code is very clean and readable, and I’m also likely to ultimately create my own toy version of it to make it a bit more extensible, support personal conventions, and just to play around with technologies.
I have a Twiddler 3 keyer that I picked up several years ago. I’m currently starting with twidlk to manage the configuration. Somewhat coincidentally I started a similar project shortly after getting the keyer which was also in Haskell but was using Aeson to produce the output (it would be more suprising if it didn’t seem like the type of people using keyers would also be likely to find Haskell appealing). I’ll like push an updated fork soonish.
Emacs is a tool I keep crawling back to. For the time being I’ll be using it as my primary baseline for interactions, but that may be revisited if other pieces start to snap together. In particular I’m currently using the emacs-ng fork.