This section describes how to create and manipulate abbrev tables.
This function creates and returns a new, empty abbrev table—an obarray containing no symbols. It is a vector filled with zeros. props is a property list that is applied to the new table (see Abbrev Table Properties).
This function returns a non-
nilvalue if object is an abbrev table.
This function undefines all the abbrevs in abbrev-table, leaving it empty. It always returns
nil.
This function returns a copy of abbrev-table—a new abbrev table containing the same abbrev definitions. There is one difference between the contents of abbrev-table and the returned copy: all abbrevs in the latter have their property lists set to
nil.
This function defines tabname (a symbol) as an abbrev table name, i.e., as a variable whose value is an abbrev table. It defines abbrevs in the table according to definitions, a list of elements of the form
(abbrevname expansion[hook] [props...]). These elements are passed as arguments todefine-abbrev. The return value is alwaysnil.The optional string docstring is the documentation string of the variable tabname. The property list props is applied to the abbrev table (see Abbrev Table Properties).
If this function is called more than once for the same tabname, subsequent calls add the definitions in definitions to tabname, rather than overriding the entire original contents. (A subsequent call only overrides abbrevs explicitly redefined or undefined in definitions.)
This is a list of symbols whose values are abbrev tables.
define-abbrev-tableadds the new abbrev table name to this list.
This function inserts before point a description of the abbrev table named name. The argument name is a symbol whose value is an abbrev table. The return value is always
nil.If human is non-
nil, the description is human-oriented. System abbrevs are listed and identified as such. Otherwise the description is a Lisp expression—a call todefine-abbrev-tablethat would define name as it is currently defined, but without the system abbrevs. (The mode or package using name is supposed to add these to name separately.)