Posts tagged Emacs

The Big Switcheroo

:: Racket, Emacs

In my previous post I talked about how Racket Mode now will often want the back end command server, before actually needing a live REPL — but it has to start a REPL anyway. This was bothering me. So I went on to address that. Doing so entailed reversing the I/O model for the back end. As a bonus, that set up fairly short strokes to supporting multiple REPLs.

Using check-syntax in Racket Mode

:: Racket, Emacs

During most of January and into February, I’ve been working full-time to have Racket Mode make better use of drracket/check-syntax analysis of fully-expanded code. I’m pretty excited by it.

Supporting multi-in

:: Racket, Emacs

In racket-mode I improved support for the multi-in form provided by racket/require.

racket-mode

:: Racket, Emacs

Even though it’s been one of my most time-consuming projects, I’ve hardly blogged about racket-mode — an Emacs major mode for Racket. To change that, here’s a post giving an overview of how racket-mode works, as well as a look at how it might grow someday.

Please scroll

:: Racket, Emacs

Recently I got more time to catch up on racket-mode. I improved two things that happen to fit one theme — an extraordinarily advanced UX concept I call, “scrolling down to the point of interest.”

Emacs Themes

:: Emacs

Until a few months ago I didn’t use Emacs themes. A custom-set-faces form in my init file gradually accumulated face specs like a lint-roller.

Then I started to use Solarized. Mostly light, sometimes dark. Switching between them using M-x load-theme worked fine.

Later I liked the look of Material. Although too high-contrast to use full-time, it works well in certain situations.

After I installed it I had two annoyances:

  1. I didn’t love the 3D “button” look it gives org-mode headings. Must tweak.

  2. Switching between the Solarized and Material themes using load-theme definitely did not work well: If the old theme defined a face, but the new theme did not, the old face would remain in effect. So for example I might switch to Material then back to Solarized, and get a weird mix of mostly Solarized but with Material org headings.

Here’s what I’m doing to address both issues.