A fresh approach to managing my Emacs setup.
Still a work in progress.
- No magic
- Well documented (lol!)
~/.emacs.d - etc # auxilliary files, snippets, etc. - packs # different library/config "packs" - init.el # the main entry point
Every pack is a logical group of Emacs Lisp libraries and
corresponding configuration files. Each pack is designed to be
completely stand-alone except certain functions to load the config files
from the correct directory which are provided by the
Each pack must have this structure -
my-pack/ - lib/ # emacs Lisp library files - config/ # config files for each library as needed - init.el # entry point for the pack
Take a look at the
notes pack for more information.
All the packs are loaded from the top-level
init.el file so you can
enable/disable loading of packs from there. Look at the bottom of the
said file for more information.
- core Emacs configuration
- configuration for power-users
- settings for different programming languages
- colour theme settings
- note-taking using Deft & Org
- for Clojure programming
- a special pack for user-level customizations
- always loaded last
- Racket (via Geiser)
- OCaml (via Tuareg)
- Scala (via scala-mode2 & ensime)
If the display looks weird, Comment out the following lines in ~/.emacs.d/packs/core/config/osx.el
;;; frames ;; (setq initial-frame-alist '((top . 23) ;; (left . 0) ;; (width . 168) ;; (height . 48)))
I welcome any contribution to the project in the form of patches, etc. I am generally looking for any sort of configuration/tweak that is useful for Emacs beginners and hackers alike.
Even though I may choose to not include something as default, I am fine with keeping them when commented out/disabled by default.
If you have a patch, please send me a pull-request and then we can discuss.
In case of any questions, feel free to email me -
b.ghose @ freegeek.in.
Copyright belongs to the respective authors. Everything else is in the Public Domain.
Based on the work of Sam Aaron.