I'd like to maintain several distinct abbrevs files for different types of abbreviation expansions.

I have this:

(read-abbrev-file "~/Dropbox/elisp/main-abbrevs-file.abbrev_defs")
(read-abbrev-file "~/Dropbox/elisp/own-separate-abbrevs.abbrev_defs")

But what happens is the all the abbrevs in my other separate abbrevs files get automatically sucked into and added to my main abbrevs file, which I don't want.

I can do (setq save-abbrevs nil)... but this disables other functionality that I want, which is to automatically learn my typos and add them to my main abbrevs file—functionality which seems to require (setq save-abbrevs t).

How can I get it so that Emacs automatically learns new abbrevs from ispell, but still allow me to keep a separate abbrevs file with abbrevs that don't get automatically added to my main abbrevs file?

1 Answer 1


Calling a (set (make-local-variable 'abbrev-file-name) 'My-current-abbrev-file) preceding this read-abbrev-file should help.

  • Like this? (set (make-local-variable 'abbrev-file-name) '("~/Dropbox/elisp/own-ab brevs.abbrev_defs")) Jun 14, 2015 at 5:56
  • 1
    @PeterSalazar Try this: (set (make-local-variable 'abbrev-file-name) (expand-file-name "~/Dropbox/elisp/own-abbrevs.abbrev_defs")) Jun 14, 2015 at 13:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.