29.3 Tabs vs. Spaces
Emacs normally uses both tabs and spaces to indent lines. If you
prefer, all indentation can be made from spaces only. To request
this, set indent-tabs-mode
to nil
. This is a per-buffer
variable, so altering the variable affects only the current buffer,
but there is a default value which you can change as well.
See Locals.
A tab is not always displayed in the same way. By default, tabs are
eight columns wide, but some people like to customize their tools to
use a different tab width. So by using spaces only, you can make sure
that your file looks the same regardless of the tab width setting.
There are also commands to convert tabs to spaces or vice versa, always
preserving the columns of all nonblank text. M-x tabify scans the
region for sequences of spaces, and converts sequences of at least two
spaces to tabs if that can be done without changing indentation. M-x
untabify changes all tabs in the region to appropriate numbers of spaces.