Vim:行末の無駄な空白(スペース)を削除する方法

eraser Vim Tips

行末の無駄な空白(スペース)を削除する方法

以下のコマンドを実行すると行末の無駄な空白を削除できます。

:%s/\s\+$//e

\s は空白文字、\+ は直前の文字の1回以上の繰り返し、$ は行末を意味します。
e フラグはパターンが見つからなくてもエラーを発生させないための指定です。

毎回コマンドを実行するのは大変なので、例えば以下のコードを vimrc に追加すると *.py を編集して保存すると自動で削除できるようになります。

autocmd BufWritePre *.py :%s/\s\+$//e

全てのファイルを対象にする場合は下記。

autocmd BufWritePre * :%s/\s\+$//e