Knowledge for the World

Vim: convert tabs to spaces

Tabs are evil. This guide will show you how to convert tabs to spaces in Vim.

1

The expandtab property will ensure that when you hit tab it will actually use spaces. So first set the number of spaces a tab should be, then set expandtab.

set tabstop=2 shiftwidth=2 expandtab

Tabstop determines how many columns a tab counts for. Shiftwidth determines how many columns text is indented when using reindent operations. Expandtab is what actually uses spaces instead of tabs.

2

If you've got a file already full of tabs, converting to spaces is super easy. Make sure to follow step one first, then use retab.

Open the file and type:

:retab

This will fix all existing tabs.