Emacs 環境を刷新した

金曜日の終業間際に Emacs 環境が壊れてしまい。週末はその復旧にあてがった。

おそらくアップグレードした Emacs 29 と Helm の噛み合わせが悪くなったことが原因 (かもしれない) 。

もともといい加減 Helm から Ivy に変更したかったのと、el-get もあまりうまく活用できている感じではなかったことから、Emacs 環境を再整備する機会として 8 年ぶりに init.el をスクラッチでリライトすることにした。@onk 経由で知った言葉を借りれば、これもまたソフトウェア式年遷宮みたいなものかもしれない。

下環境構築メモ。

  • まず anything.el の流れのものがないとどうにもならないので、Helm に変わり Ivy を入れる。2018年くらいに @elct9620 から Ivy が良さそうという話を聞いてからかなり時間が経っていた
  • recentf もないとどうにもなので、Ivy と連携して動くようにする
  • eglot 設定をする
  • git-gutter がないと git のソースコード差分がわからないので設定する
  • ghq と Ivy を連携して動くようにする
  • (global-set-key (kbd "C-h") 'delete-backward-char) とかいつものは過去の dotfiles から持ってくる

などなど詳細は割愛するが諸々手を加えていた。

一番の変更点はターミナル (iTerm2) を含めて Emacs のテーマも白背景から黒背景にしたこと。その昔「ターミナルの黒い画面が怖い」というものへのネタとして「画面白いから怖くないよ」という @kenchan の返しが当時面白かったので白い画面にしていたけれど、どうもその後ウケをうまく伝えられなかったので 10 年ぶりくらいに黒い画面にした。

この10年の白い画面生活からのフィードバックとしては、いろいろなターミナルツールが黒い画面を前提にしたデフォルト配色になっているので、実は白い画面は世の中のデフォルト配色と相性が良くなかったりしたのはノウハウとして伝えられることかもしれません。

なお、この機会に VS Code へという考えはありませんでした。M-x Forever!