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?


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")) – incandescentman Jun 14 '15 at 5:56
  • 1
    @PeterSalazar Try this: (set (make-local-variable 'abbrev-file-name) (expand-file-name "~/Dropbox/elisp/own-abbrevs.abbrev_defs")) – Andreas Röhler Jun 14 '15 at 13:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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