非常に簡単な例:関数を作成したいのですが、すでにいくつかのレベルのインデントがあります(「関数」という単語の前のタブ)。私は最初に書きます:
1 function doCoolStuff() {
2
3 }
次に、3行目から2行目まで1行上に移動し、関数の内容の入力を開始します。ただし、vimでは、3行目に角かっこを入力して1行上に移動した後、2行目に自動挿入されたタブを削除することはできません。そのため、新しい関数を作成するたびに手動でタブを挿入する必要があります。それがその方法です:
関数のヘッドを入力してEnterキーを押すと、次のようになります。
1 function doCoolStuff() {
2 ▊
3
Vimは2行目に自動タブを正しく挿入します。
だが!
次に、Enterキーを押して、閉じ角かっこを入力し、1行上に移動します。私はそれがこのようになることを期待しています:
1 function doCoolStuff() {
2 ▊
3 }
しかし、2行目にタブがない場合は、このようになります。
1 function doCoolStuff() {
2 ▊
3 }
vimは、完全にタブ文字で構成されている行があることを確認し、タブ文字を削除しているようです。vimが末尾のタブを削除できないようにするにはどうすればよいですか?