29.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 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. The function quietly-read-abbrev-file
is similar except that it does not display a message in the echo area; you cannot invoke it interactively, and it is used primarily in your init file (see Init File). If either of these functions is called with nil
as the argument, it uses the file given by the variable abbrev-file-name
, which is ~/.emacs.d/abbrev_defs
by default. This is your standard abbrev definition file, and Emacs loads abbrevs from it automatically when it starts up. (As an exception, Emacs does not load the abbrev file when it is started in batch mode. See Initial Options, for a description of batch mode.)
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
). It saves them in the file specified by abbrev-file-name
. This feature can be inhibited by setting the variable save-abbrevs
to nil
; setting it to silently
will save the abbrevs automatically without asking.
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 after point, describing all current abbrev definitions; M-x define-abbrevs
parses the entire current buffer and defines abbrevs accordingly.