VsVimのインデントが勝手にspaceからtabに変更される問題の解決法

Visual Studio拡張機能に操作をvim化するプラグインがあり、非常に便利に活用している。しかしいつの頃からか挿入モードで文字入力するとインデントが勝手にSpaceからtabに変更され、非常に使いづらかった。特にC#でソースを触る場合はデフォルトがSpaceであるため非常に使い勝手が悪かった。

Visual Studioオプションのエディター設定は正常にSpaceになるように設定しているのに、まったく変更に意味が無く、VsVimの無効化も考えたが操作に不満が出るため我慢して使っていた。

簡易的な解決方法としてVimコマンドで以下を入力していたが、ファイル毎の設定なのですべてのファイルに対応することが非常に面倒だった。

:set expandtab

 

しかし、先ほどこの解決方法をようやく発見したので記述。

VsVim Nonstandard Behavior · jaredpar/VsVim Wiki · GitHub

上記を参照すると、ユーザープロファイル以下に次のファイルを作成すればOKだった。

%USERPROFILE%\.vsvimrc

 set vsvim_useeditordefaults

 これにより、ようやくVisual Studioのデフォルト設定でVsVimのtab, space問題を解決することが出来た。

 

非常に快適。

 

2014/02/24 13:44 追記

追加で調査すると、%USERPROFILE% 以下の.vimrc の存在そのものが問題だった事が発覚。
.vimrcを削除すると問題なく起動した。
これが存在する場合、ファイル内が空でもダメだった。
.vimrcが存在するならば .vsvimrcも必要みたいなので注意。

 

環境

Windows Vista
Visual Studio 2010
VsVim