文字崩れ, 文字が残ってしまうのを防ぐ
問題
iterm2 で tmux, Neovim と使い普段開発をしているが、次のように画面レイアウトが崩れてカーソル位置がおかしくなったり、操作後に文字が画面に残ってしまうことがあった。 特にプラグインによって画面の描画に変更が加わる際には、描画がおかしくなることが多かった。
import
の後ろにカーソルがあるが、実際のカーソル位置は 1 行目 import
の手前。
1 画面に複数 window がある場合は端に文字が残ることが多かった。(残らないときもあった)
開発ができないことはないが、開発スピードに影響が出るのと、単純に必要ない文字が残るのは邪魔でストレスだった。
解決法
設定を見直してみた。文字の扱いに影響する既存の設定が影響していることを仮定。
結果、
https://vim-jp.org/vimdoc-ja/options.html#'ambiwidth'
現在のところ、設定可能な値は次の 2 通りである:
- single: US-ASCII の文字と同じ幅を使う。これはほとんどのユーザーにとって期待どおりになる。
- double: ASCII 文字の 2 倍の幅を使う。
☆ や※などの記号が Vim 上で崩れてしまうのを防ぐために設定していたが、single
にすることで正常に描画されるようになった。