which-keyが遅すぎる
最近MacBook 12インチに乗り換えた高尾です。ついでに、「Emacs + 自前の.emacs.d」から「Emacs + Spacemacs」にも乗り換え済み。マシンのメモリ不足からちょっともっさりした感じはありますが、所有欲は十二分に満たされていますので大丈夫です!なにも気にならない、気にしない!!!
さて、今回は、Emacs + Spacemacsに関する記事です。
見つけたぞ、which-key!
次のファイルを編集するよ。Control-x Control-f...あらま、また固まったか...一休みだな。
これはEmacs + Spacemacsを使っているときによく起きることです。
マシンの性能によると思いますが、Spacemacsのコマンド候補の表示(Control+xを押してしばらく待つとminibufferに表示されるやつ)が遅すぎます。少なくとも、手元のMacBook '12 Early 2016だと、候補が多い場合は5秒程度はEmacsが応答しなくなる。これでは困ります。
なんとか改善できないか、調査してみます。そもそも、どのパッケージでそれを実現しているかを調べるところからですね。
ここは、eww-search(Emacs での テキストブラウザ eww を使えるレベルにする | Futurismo)の出番ですね。まだ慣れておらず、うっかりSafariを使ったりしてしまいますが、ewwのほうがよいこともたくさんあります。特に、0キーでマークダウン形式のURLをコピーできるのは使いやすいですね。
で、ググってもなかなか見つけられず...そもそもよいキーワードが思いつきませんね。「spacemacs minibuffer command list」ではだめでした。
それならばということで、 ~/.emacs.d/elpa/
を探索。それっぽいのはないかな。ace-windowってなんだろ、completeを含むものかな、なんて考えながら見ていくと、which-keyというそれっぽいものがあるでないですか。
which-key.elにもそれらしい記述があります。これで間違いなさそうです。
カスタマイズド、which-key。
which-key.elを読むと、defcustomでいろいろ設定項目が定義されています。
気になったのは、コマンド入力をやめてから候補を表示するまでの待ち時間 which-key-idle-delay
だけですね。さて、defcustomってどうやって設定するんだったかな?setqでいいのかな???
ここでもeww-search。役立つね。で、defcustomで定義された変数はsetqではなくcustom-set-variablesで設定すべき理由 - kawamuray's blogを見つけました。
.spacemacsのdotspacemacs/user-config ()
に以下を追加して様子見です。さて、どうかな。
(custom-set-variables '(which-key-idle-delay 10.0))