Firefoxとかタブ付きエディタによくある最後のタブを閉じても終了せずに新規ファイルを編集するタブが開かれる機能がVimにもずっと欲しかった(特にgVim)。なるべく閉じないように使うことにしていたが、よく:wqaとか勢いで打ってしまい悲しいことに。そろそろどうにかしようと色々調べて、:cabbrevコマンドで:qとかを書き換えてやれば良さそうということがわかった。 :cabbrevでのビルトイン・コマンドの置き換えはReplace a builtin command using cabbrevで知った。コマンドの種類を取得するgetcmdtype()とコマンドの開始位置を取得するgetcmdpos()を使って、割り当てがコマンドの途中にでてきたりした場合に展開されないようにする。 現在のウィンドウを新規ファイルを編集する状態にするには:enewで良いので、:qaや:wqaの場合は:ta
![Vimで最後のタブを閉じても終了しない](https://cdn-ak-scissors.b.st-hatena.com/image/square/4fd8a67abeabfd9bafa87bfc2a3ea4e679ac51d2/height=288;version=1;width=512/https%3A%2F%2Fhail2u.net%2Fapple-touch-icon.png)