[Vim問題] ウインドウのサイズを変更する方法は何種類?

ウインドウのサイズを変更する方法は何種類?

この記事では、Vim / neovim でプラグインを使わずに「ウインドウのサイズを変更する」ためのキーバインドについて、ご紹介します。

[解答] 3種類

1. ウインドウの幅を変更する

キーバインド

キー操作だけで変更するには、次のキーバインドを駆使します。

キー操作実行内容
Ctrl-w >カレントウインドウの幅を1桁広げる
Ctrl-w <カレントウインドウの幅を1桁狭める
{count}Ctrl-w >カレントウインドウの幅を{count}桁広げる
{count}Ctrl-w <カレントウインドウの幅を{count}桁狭める
Ctrl-w |カレントウインドウの幅を最大まで広げる
{count}Ctrl-w |カレントウインドウの幅を{count}桁に変更する
ウインドウの幅を変更する
ウインドウの幅を変更する

カレントウインドウはカーソルが位置しているウインドウのこと、{count}は桁数を示す数値を指します。

また、ここでいう桁は半角の文字数を指します。行番号を表示している場合には、その行番号(4桁)を含んだ桁数を指定することになります。

コマンド

コマンドで操作するなら、次のように実行します。

:vertical resize {count}
:vert resize {count}
:vert res {count}

いずれでも同じ実行内容となります。{count}には、先に説明した桁数を指定します。

2. ウインドウの高さを変更する

キーバインド

キー操作だけで変更するには、次のキーバインドを駆使します。

キー操作実行内容
Ctrl-w +カレントウインドウの高さを1行広げる
Ctrl-w カレントウインドウの高さを1行狭める
{count}Ctrl-w +カレントウインドウの高さを{count}行広げる
{count}Ctrl-w カレントウインドウの高さを{count}行狭める
Ctrl-w _
Ctrl-w Ctrl-_
カレントウインドウの高さを最大まで広げる
{count}Ctrl-w _
{count}Ctrl-w Ctrl-_
カレントウインドウの高さを{count}行に変更する
z{count}カレントウインドウの高さを{count}行に変更する
ウインドウの高さを変更する
ウインドウの高さを変更する

こちらもカレントウインドウはカーソルが位置しているウインドウのこと、{count}は行数を示す数値を指します。

コマンド

コマンドで操作するなら、次のように実行します。

キー操作実行内容
:resize +{count}
:res +{count}
カレントウインドウの高さを{count}行広げる
:resize –{count}
:res –{count}
カレントウインドウの高さを{count}行狭める
:resize
:res
カレントウインドウの高さを最大まで広げる
:resize {count}
:res {count}
カレントウインドウの幅を{count}行に変更する
:{winner}resize {count}
:{winner}res {count}
ウインドウ{winner}の高さを{count}行に変更する

こちらもカレントウインドウはカーソルが位置しているウインドウのこと、{count}は行数を示す数値を指します。

なお、ウインドウ{winner}は、ウインドウごとに付与された番号を指定することで、カレンとウインドウ以外のウインドウのサイズ変更をすることになります。

3. ウインドウのサイズを揃える

次のコマンドを実行すると、全てのウインドウのサイズをだいたい同じに揃えてくれます。

Ctrl-w =
ウインドウのサイズを揃える
ウインドウのサイズを揃える

色々変更してみて、元に戻すのがめんどくさくなったら使うような機能かもしれませんね。

その他

当然ですが、マウスが使える場合は、マウスでサイズ変更ができます。Windows などの GUI 中心のユーザーには、マウス操作の方が手っ取り早いかもしれませんね。

このVimコマンドの補足情報

  • 利用頻度[star rate=4]
  • 便利さ[star rate=3]
  • 覚え易さ[star rate=2]

関連するVimヘルプ

Vim のヘルプでは下記のように解説されています。

6. ウィンドウのサイズ変更                               window-resize

CTRL-W_=
CTRL-W =        全てのウィンドウの高さ・幅を(ほとんど)同じにする。ただしカレン
                トウィンドウに対しては ‘winheight’ と ‘winwidth’ が適用される。
‘winfixheight’ がセットされたウィンドウの高さはそのままにし、
‘winfixwidth’ がセットされたウィンドウの幅はそのままにする。

:res[ize] -N                                    :res:resizeCTRL-W_-
CTRL-W –        カレントウィンドウの高さをN (デフォルトは1) 行分低くする。
:vertical の後に置かれたときは、幅を N 桁分減らす。

:res[ize] +N                                    CTRL-W_+
CTRL-W +        カレントウィンドウの高さをN (デフォルトは1) 行分高くする。
:vertical の後に置かれたときは、幅を N 桁分増やす。

:res[ize] [N]
CTRL-W CTRL-_                                   CTRL-W_CTRL-_CTRL-W__
CTRL-W _        カレントウィンドウの高さをN行にする(デフォルト: 可能な限り高く
                する)

:{winnr}res[ize] [+-]N
                上記の :resize と似ているが、カレントウィンドウではなくウィ
                ンドウ {winnr} にサイズを適用する。

z{nr}<CR>       カレントウィンドウの高さを {nr} にする。

CTRL-W_<
CTRL-W <        カレントウィンドウの幅を N (デフォルトは1) 桁分減らす。

:vertical-resizeCTRL-W_bar
CTRL-W |        カレントウィンドウの幅を N桁にする (デフォルト:可能な限り広く
                する)

マウスでステータス行を上下にドラッグすることによってもウィンドウのサイズを変更
できる。垂直セパレータ行を左右にドラッグしても同様。これができるのは、使用して
いる Vim がマウスをサポートしていて ‘mouse’ オプションでマウスが使えるように設
定されているときである。

windows – Vim日本語ドキュメント

こちらは、Vim上では下記のコマンドでヘルプを確認できます。

:help window-resize
:help :res
:help :resize
:help CTRL-W_-
:help CTRL-W_+
:help CTRL-W_CTRL-_
:help CTRL-W__
:help CTRL-W_<
:help CTRL-W_>
:help :vertical-resize
:help CTRL-W_bar

ヘルプで検索するときは、通常は大文字小文字は識別されませんので、どちらでも構いません。

Vim力をアップさせるための参考書は?

Vim力をアップさせたい初級Vimmerにとって、こちらを完読することがレベルアップの最短コースになります。ぜひ読みましょう!

[temp id=3]

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Vim力アップして、そろそろ上級 Vimmer の仲間入りしたいIT系エンジニアの端くれです。読んでくる訪問者の皆様と一緒に、Vim力を上げていくことができる記事が書ければと考えています。