A register is a sort of variable used in Emacs editing that can hold a variety of different kinds of values. Each register is named by a single character. All ASCII characters and their meta variants (but with the exception of C-g) can be used to name registers. Thus, there are 255 possible registers. A register is designated in Emacs Lisp by the character that is its name.
This variable is an alist of elements of the form
). Normally, there is one element for each Emacs register that has been used.
The object name is a character (an integer) identifying the register.
The contents of a register can have several possible types:
insert-registerfinds a number in the register, it converts the number to decimal.
The functions in this section return unpredictable values unless otherwise stated.
This function returns the contents of the register reg, or
nilif it has no contents.
This function sets the contents of register reg to value. A register can be set to any value, but the other register functions expect only certain data types. The return value is value.
This command inserts contents of register reg into the current buffer.
Normally, this command puts point before the inserted text, and the mark after it. However, if the optional second argument beforep is non-
nil, it puts the mark before and point after. You can pass a non-
nilsecond argument beforep to this function interactively by supplying any prefix argument.
If the register contains a rectangle, then the rectangle is inserted with its upper left corner at point. This means that text is inserted in the current line and underneath it on successive lines.
If the register contains something other than saved text (a string) or a rectangle (a list), currently useless things happen. This may be changed in the future.