vimtricks.wiki Concise Vim tricks, one at a time.

How do I show or hide line numbers in Vim?

Answer

:set number!

Explanation

The :set number! command toggles line numbers on or off. The ! suffix on any boolean option inverts its current value.

How it works

  • :set number turns on absolute line numbers
  • :set nonumber turns them off
  • :set number! toggles — if they are on, they turn off; if off, they turn on

Related options

:set relativenumber     " show relative line numbers
:set relativenumber!    " toggle relative numbers
:set number relativenumber  " show both (hybrid mode)

Hybrid mode shows the absolute number on the current line and relative numbers on all other lines — this is great for quickly counting lines for motions like 5j or 12k.

Tips

  • The ! toggle trick works with any boolean setting: :set wrap!, :set cursorline!, etc.
  • Use :set number? to check the current value without changing it
  • Add to your vimrc for permanent line numbers: set number
  • Use :set signcolumn=number to merge signs (like git diff markers) into the number column

Next

How do I edit multiple lines at once using multiple cursors in Vim?