Vim: ウィンドウのサイズ変更時にバッファを自動的に均等に分割する方法

Vim: ウィンドウのサイズ変更時にバッファを自動的に均等に分割する方法

現在、vim (ターミナルから実行) でウィンドウ サイズを大きくすると、1 つのバッファーにすべての余分なスペースが割り当てられ、もう 1 つのバッファーは縮小されたままになります。各バッファーがウィンドウ サイズの半分 (または N バッファーの場合は 1/N のスペース) になるように、バッファーのサイズを自動的に変更する方法はありますか。

答え1

いい質問ですね!私はこれについて考えたことがありませんでしたが、考えてみれば、私も同じことで悩んでいました。

キーの組み合わせを使用してctrl-w=、すべての分割を適切なサイズに変更できます。:help CTRL-W_=

                        *CTRL-W_=*
CTRL-W =    Make all windows (almost) equally high and wide, but use
        'winheight' and 'winwidth' for the current window.
        Windows with 'winfixheight' set keep their height and windows
        with 'winfixwidth' set keep their width.

しかし、画面のサイズを変更するたびにこれを行うのは面倒です。これは、自動コマンドを使用して自動化できます。

autocmd WinResize * wincmd =

これにより、vimのサイズを変更するたびに、自動的にctrl-w=あなたが心配しなくてもいいように、あなたのために圧力をかけます。

これはターミナルバージョンと GUI バージョンの両方で動作することを確認しました。

これは素晴らしい設定です。実際、私は個人設定に追加すると、この質問をしてくれてありがとう!

関連情報