29.6 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 The Emacs Initialization 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.