The usual display conventions define how to display each character code. You can override these conventions by setting up a display table (see Display Tables). Here are the usual display conventions:
ctl-arrow. If it is non-
nil, these codes map to sequences of two glyphs, where the first glyph is the ASCII code for ‘^’. (A display table can specify a glyph to use instead of ‘^’.) Otherwise, these codes map just like the codes in the range 128 to 255.
On MS-DOS terminals, Emacs arranges by default for the character code 127 to be mapped to the glyph code 127, which normally displays as an empty polygon. This glyph is used to display non-ASCII characters that the MS-DOS terminal doesn't support. See MS-DOS and MULE.
The usual display conventions apply even when there is a display
table, for any character whose entry in the active display table is
nil. Thus, when you set up a display table, you need only
specify the characters for which you want special behavior.
These display rules apply to carriage return (character code 13), when it appears in the buffer. But that character may not appear in the buffer where you expect it, if it was eliminated as part of end-of-line conversion (see Coding System Basics).
These variables affect the way certain characters are displayed on the
screen. Since they change the number of columns the characters occupy,
they also affect the indentation functions. These variables also affect
how the mode line is displayed; if you want to force redisplay of the
mode line using the new values, call the function
force-mode-line-update (see Mode Line Format).
The value of this buffer-local variable is the spacing between tab stops used for displaying tab characters in Emacs buffers. The value is in units of columns, and the default is 8. Note that this feature is completely independent of the user-settable tab stops used by the command
tab-to-tab-stop. See Indent Tabs.