emacs26からの行番号表示がddskk入力時にガタつくのを防ぐ


Emacs26までは、行番号の表示をemacs lispで頑張るというアプローチがために、 重たくてなかなか使いどころに困る問題があった。 それに対してEmacs26では、待望のCで書かれた組み込みの行番号表示である、 display-line-numbers-mode が導入された。 これは軽くてたいへん便利なのであるが、使っていて、ひとつめちゃくちゃ気になる問題があった。

それはごらんの通り、ddskkで日本語を入力するときに行番号の表示がずれて、がたがたとなり見辛いのである。

これには困っていたのだけど、言語化しづらいところもあり解決策が見付けられなかったが、 ソースコード見てパラメータいじってたら以下のパラメータを有効化することで がたつかなくなることがわかった。

(global-display-line-numbers-mode t)
(custom-set-variables '(display-line-numbers-width-start t))

先程のgifと見比べてみると今度はまったくがたつきがないのがわかる。

今のところ、この設定で困ったことはなく、強いて言えば、 見比べてみるとわかるが、はじめから行番号のスペースが広めにとられてしまっている。 そのため、少し画面サイズは小さくなっているものの、これで快適な行番号生活をおくることができる。


関連記事