26.5. Saving Abbrevs

These commands allow you to keep abbrev definitions between editing sessions.

M-x write-abbrev-file RET file RET

Write a file file describing all defined abbrevs.

M-x read-abbrev-file RET file RET

Read the file file and define abbrevs as specified therein.

M-x quietly-read-abbrev-file RET file RET

Similar but do not display a message about what is going on.

M-x define-abbrevs

Define abbrevs from definitions in current buffer.

M-x insert-abbrevs

Insert all abbrevs and their expansions into current buffer.

M-x write-abbrev-file reads a file name using the minibuffer and then writes a description of all current abbrev definitions into that file. This is used to save abbrev definitions for use in a later session. The text stored in the file is a series of Lisp expressions that, when executed, define the same abbrevs that you currently have.

M-x read-abbrev-file reads a file name using the minibuffer and then reads the file, defining abbrevs according to the contents of the file. M-x quietly-read-abbrev-file is the same except that it does not display a message in the echo area saying that it is doing its work; it is actually useful primarily in the .emacs file. If an empty argument is given to either of these functions, they use the file name specified in the variable abbrev-file-name, which is by default "~/.abbrev_defs".

Emacs will offer to save abbrevs automatically if you have changed any of them, whenever it offers to save all files (for C-x s or C-x C-c). This feature can be inhibited by setting the variable save-abbrevs to nil.

The commands M-x insert-abbrevs and M-x define-abbrevs are similar to the previous commands but work on text in an Emacs buffer. M-x insert-abbrevs inserts text into the current buffer before point, describing all current abbrev definitions; M-x define-abbrevs parses the entire current buffer and defines abbrevs accordingly.