Everything lives under .emacs.d
. init.el
is the entry point. This
file set up the paths where everything else is found.
Paths:
lisp
- elisp code I’ve written.
mytemplates
- Autoinsert file templates.
snippets
- Text snippets for yasnippets.
user
- Machine specific customisations.
vendor
- Third party packages. Where possible I’m moving to using submodules to track these from upstream.
Where ever possible I’m using package.el to manage these. I have melpa set up in addition to the default gnu elpa.
There are still a very modes that aren’t available as packages. These
are checked in under vendor/
.
I like to make the computer do as much of my work as I possibly can. Hence I’ve spend a bit of time on the various auto typing features.
- yasnippet
- autoinsert
aspell
clangd
sourcekit-lsp
I like to run recent builds from the master branch (I’m not patient enough to wait for a release to get all the great new stuff that’s getting merged).
On macOS:
./configure --with-mailutils --with-native-compilation
MAKEFLAGS="-j$(nproc)" make bootstrap && make install
plutil -insert LSEnvironment -xml '<dict/>' nextstep/Emacs.app/Contents/Info.plist
plutil -insert LSEnvironment.PATH -string "$(echo $PATH)" nextstep/Emacs.app/Contents/Info.plist