For typing in tables, you can use M-i (tab-to-tab-stop).
This command inserts indentation before point, enough to reach the
next tab stop column.
You can change the tab stops used by M-i and other indentation
commands, so that they need not be spaced every eight characters, or
even regularly spaced. The tab stops are stored in the variable
tab-stop-list, as a list of column numbers in increasing order.
A convenient way to set the tab stops is with M-x
edit-tab-stops, which creates and selects a buffer containing a
description of the tab stop settings. You can edit this buffer to
specify different tab stops, and then type C-c C-c to make those
new tab stops take effect. The buffer uses Overwrite mode
(see Minor Modes). edit-tab-stops records which buffer was
current when you invoked it, and stores the tab stops back in that
buffer; normally all buffers share the same tab stops and changing
them in one buffer affects all, but if you happen to make
tab-stop-list local in one buffer then edit-tab-stops in
that buffer will edit the local settings.
Here is what the text representing the tab stops looks like for ordinary tab stops every eight columns.
: : : : : :
0 1 2 3 4
0123456789012345678901234567890123456789012345678
To install changes, type C-c C-c
The first line contains a colon at each tab stop. The remaining lines are present just to help you see where the colons are and know what to do.
Note that the tab stops that control tab-to-tab-stop have
nothing to do with how tab characters are displayed in the buffer.
Tab characters are always displayed as empty spaces extending to the
next display tab stop, which occurs every tab-width columns
regardless of the contents of tab-stop-list. See Text Display.