Second day using Emacs.

I've forked the Prelude GitHub project and I'm storing my settings in the personal folder as instructed in the documentation.

I would like to be able to use my eshell aliases across machines with a git pull, but by default it looks like eshell settings are saved under the savefile directory which is by default ignored by git.

How can I put my eshell alias settings in my personal directory?


eshell saves your aliases to the file specified in the eshell-aliases-filevariable, This variable should by default be inside the value of eshell-directory-name which prelude seems to override. You should be able to override it back to something you can put under VC like this:

(eval-after-load 'prelude-editor
  (lambda ()
    (setq eshell-directory-name "/my/eshell/stuff/")
    (setq eshell-aliases-file (concat eshell-directory "my-eshell-aliases"))))
  • 2
    Thanks for the tip! I wasn't able to get this exact code working, but I ended up just adding this one line to my personal .el file: (setq eshell-directory-name "~/.emacs.d/personal/eshell") And that worked great. I added a .gitignore in my personal dir to overwrite the ignoring of all "eshell" directories as it is in prelude's main .gitignore. – Zamicol Feb 6 '15 at 18:19

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.