Tanablog:smartchrを入れた 上記のエントリを見てsmartchr.vimを入れ、 元エントリに書かれている通り、下記のように設定して使ってみた。 inoremap <buffer><expr> = smartchr#one_of(' = ', ' == ', '=') おお、こりゃ便利、と思ったけど、 C/C++の場合、+=や|=のような複合代入演算子や、<=,>=などの比較演算子を入力する際に 意図しないスペースが挿入されるようになってしまった。 できれば、このへんの演算子を入力する際、無駄にキーを連打したくない。 そこで、=が入力された際は、カーソル直前の内容をチェックして +,-,*,/,&,|,>,<,! の後に続かない場合だけ、smartchr#one_ofを呼ぶように設定した。(%=は使わないので無視) で、これらの演算子に続く=の場合には、直前の空白を削除する