[Vim問題] 折り畳んだ箇所の間を移動するには?

折り畳んだ箇所の間を移動するには?

この記事では、Vim / neovim でプラグインを使わずに「折り畳んだ箇所の間を移動する」ためのキーバインドについて、ご紹介します。

[解答] zj / zk

折り畳み箇所を上下移動する
折り畳み箇所を上下移動する

Vimキーバインド1. 次の折り畳み箇所へ移動

(ノーマルモード)
zj

次の折り畳み箇所、つまりカーソルより下の方の折り畳み箇所へ移動します。閉じられた折り畳みを1つの折り畳み単位として数えて移動します。

Vimコマンド2. 前の折り畳み箇所へ移動

(ノーマルモード)
zk

前の折り畳み箇所、つまりカーソルより上の方の折り畳み箇所へ移動します。先に記載した通り、閉じられた折り畳みを1つの折り畳み単位として数えて移動します。

解説

折り畳んだ箇所を移動する、というよりジャンプするイメージです。たくさん折り畳んで箇所が存在することが前提の移動となります。

覚え方としては、普通の上下移動の j または k の頭に z を付けると覚えましょう。

おまけ1. 折り畳み箇所の中で一番上の行へ移動

(ノーマルモード)
 [z

おまけ2. 折り畳み箇所の中で一番下の行へ移動

(ノーマルモード)
]z

こちらはカーソルのある折り畳みの範囲の中での移動となります。

折り畳みの範囲の中での移動
折り畳みの範囲の中での移動

折り畳み範囲が広い、折り畳みをネスト(折り畳み箇所の一部に折り畳み箇所がある)している場合に利用するかとは思いますが、あまり利用場面は多くないキーバインドです。

こちらの記事と併せてご覧ください。

https://vim.blue/vim-fold-create-remove/

https://vim.blue/vim-fold-open-close/

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

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

関連するVimヘルプ

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

:help fold.txt
:help [z
:help ]z
:help zj
:help zk

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

参考書籍

こちらの書籍が参考になります。

[temp id=3]

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

この記事を書いた人

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