VSCode Vim ソースコードを部分的にフォーマット (整形・インデント)したい

VSCode Vim ソースコードを部分的にフォーマット (整形・インデント)したい

VSCode Vimでソースコードのフォーマット方法について紹介します。

本当はファイルごとフォーマットしたり、保存したタイミングで自動でフォーマットを行うようにすると楽ですが、プロジェクトによってはフォーマットの共通ルールが定義されていない場合もあります。
そんなプロジェクトでファイルごとフォーマットしてコミットすれば、本当の変更箇所以外が書き換わってしまうため、非難を浴びます。

本来はプロジェクトにフォーマットの共通ルールを定義するべきですが、現実は後回しにされがちです。
とはいえ、自動でフォーマット出来ないと作業効率は落ちてしまうため、VSCode Vimで効率よくフォーマットしましょう。

自動フォーマット

VSCode Vimでは、=キーでVSCodeのフォーマット処理を呼び出すことが出来ます。
このコマンドはVimのモーションやテキストオブジェクトと組み合わせて使用することが出来ます。
組み合わせることで、以下のように柔軟にフォーマット範囲を指定することが可能です。

コマンド 実行結果
== カーソルのある行
=ip カーソルのある段落
=ii カーソルのある{}の範囲内
=iB カーソルのある{}の範囲内
=ib カーソルのある()の範囲内
={ カーソルのある行から上の空白行
=} カーソルのある行から下の空白行
=(数値)k カーソルから上に(数値)行
=(数値)j カーソルから下に(数値)行
=(行番号)gg カーソルのある行から(行番号)までの行
=gg カーソルのある行から行頭まで
=G カーソルのある行から末行まで

リピートも可能

.キーで直前のコマンドを繰り返すことが出来ます。

Vimカテゴリの最新記事