A display table is actually a char-table (see Char-Tables) with
display-table as its subtype.
This creates and returns a display table. The table initially has
nilin all elements.
The ordinary elements of the display table are indexed by character
codes; the element at index c says how to display the character
code c. The value should be nil or a vector of the
glyphs to be output (see Glyphs). nil says to display the
character c according to the usual display conventions
(see Usual Display).
Warning: if you use the display table to change the display of newline characters, the whole buffer will be displayed as one long “line.”
The display table also has six “extra slots” which serve special
purposes. Here is a table of their meanings; nil in any slot
means to use the default for that slot, as stated below.
For example, here is how to construct a display table that mimics the
effect of setting ctl-arrow to a non-nil value:
(setq disptab (make-display-table))
(let ((i 0))
(while (< i 32)
(or (= i ?\t) (= i ?\n)
(aset disptab i (vector ?^ (+ i 64))))
(setq i (1+ i)))
(aset disptab 127 (vector ?^ ??)))
This function returns the value of the extra slot slot of display-table. The argument slot may be a number from 0 to 5 inclusive, or a slot name (symbol). Valid symbols are
truncation,wrap,escape,control,selective-display, andvertical-border.
This function stores value in the extra slot slot of display-table. The argument slot may be a number from 0 to 5 inclusive, or a slot name (symbol). Valid symbols are
truncation,wrap,escape,control,selective-display, andvertical-border.
This function displays a description of the display table display-table in a help buffer.
This command displays a description of the current display table in a help buffer.