Vim / Vi Page Up and Down Controls

Glory Kim
Glory KimSoftware Engineer, Loom
Published: January 31, 2024

While the most intuitive way to navigate around the terminal may be scrolling and using the arrow keys, Vim offers multiple shortcuts to move around the screen. Paging up and down with keyboard shortcuts is one of the most efficient and flexible ways to hop around. To start, make sure that you are not in Insert mode and that you are in Normal mode by pressing ESC.

Page up and down

A page is considered to be the screen size of your terminal. The following commands will move the page up and down based on the current screen size.

  • ctrl + b to move a page screen back or “up”
  • ctrl + f to move a page screen front or “down”
  • ctrl + u to move a ½ page screen up
  • ctrl + d to move a ½ page screen down

Row up and down

To move up and down a single row instead of a whole page:

  • j to move 1 line down
  • k to move to move 1 line up

Similar to how you navigated to specific rows, we can leverage this command to move up and down multiple rows.

  • 2j to move 2 lines down
  • 2k to move 2 lines up

Caveat

As an engineer, I use the above commands when I’m reading through code and don’t care about cursor placement. The above commands can move the screen so that I can read my entire file, but they also alter my cursor location. When I’m writing code and want to understand related functions, I tend to use other commands to keep my cursor in place. As long as my cursor does not go off-screen, I can remember my current spot while reading through the file.

  • ctrl + y to move the screen up one line
  • ctrl + e to move the screen down one line
  • z + z to move the current line I’m on to the center of the screen
  • z + t to move the current line I’m on to the top of the screen
  • z + b to move the current line I’m on to the bottom of the screen

Other ways to Vim

This post lists out just a couple of ways to navigate your terminal using Vim like viewing pages and rows. A related way to navigate is to use vim to go to the beginning and end of the file. Learning how to navigate is just the beginning: with vim, you’re able to copy and paste, undo and redo, and delete line(s) all with just a few keystrokes.

Written by
Glory Kim
Glory KimSoftware Engineer, Loom
Filed under

Related articles


Go To End of File in Vim / Vi

Select and delete to the end of a file in Vim

Select all in Vim / Vi

Select all and copy, paste, or delete the contents

Copy & Paste in Vim / Vi

Copy (Yank), Paste (Put) and Cut (Delete) in Vim

Searching in Vim

Search forward, backward, case insensitive, and more

Show & Hide Line Numbers in Vim / Vi

Toggle absolute and relative line numbers

Undo & Redo in Vim / Vi

Keyboard shortcuts and summary of how Vim tracks changes

Vim Go To End/Start of Line

Go to the end or beginning of a line in Vim

Go To Line In Vim

Variety of approaches to go to lines

Go To Top of File in Vim

Learn how to jump the top of the file in Vim, then navigate, search, highlight, and delete.

Vim Modes

Learn about seven of Vim’s modes

How to delete lines in Vim / Vi

The best answer depends on which mode you use

Vim Find And Replace

You can use either the substitute command or the slash and dot method to search for patterns and replace with different values.