I needed to rewrite my init away from the monolithic .emacs
file, of
which this is an attempt.
I originally wanted to do an init.org
version, but shied away when I
realized most people prefer the monolithic approach. I also didn’t
want to use org-babel-load-file
which seems slow (plus I don’t
really want to include / depend on org
). I realize I could have
written multiple org files so they are self documenting, but I think I
didn’t want to deal with the minimal performance impact. Most of the
time, I’ll have several emacs servers going. I don’t want to wait
too long per new instance.
This is organized such that my init.el
initiates and loads my
lisp/
files. It then loads anything under site-lisp/
, which are
lisp files or packages that I installed manually. Further, files
stored in unbp/
are those that I’m currently not using. Finally,
pkgs-%d.%d
is the directory that stores packages themselves.
If you notice, files have a four-digit integer prefix. This allows
files to be loaded in the order I want. Read the README.org under
the lisp/
directories for more information.
- Clone
# TODO
- Open Emacs
emacs &
# wait for emacs to get done installing packages etc
- Restart Emacs and begin using
If you wish to use irony (code completion), install the following on your system:
Linux:
apt install libclang-dev global
After installation is complete, install the server and you’re done.
M-x irony-install-server
To store erc information, I use the erc/.ercauth.el
file. It may contain things like:
(defun erc/join-ssl-libera ()
"Join irc.libera.chat with my personal credentials"
(interactive)
(setq erc-autojoin-channels-alist
'(("libera.chat" "#emacs")))
(erc-tls :server "irc.libera.chat" :port 6697
:nick "MY_NICK" :password "MY_COOL_LONG_PASSWORD"))
(defun erc/join-libera ()
"Join irc.libera.chat with my personal credentials"
(interactive)
(erc :server "irc.libera.chat" :port 6667
:nick "MY_NICK" :password "MY_COOL_LONG_PASSWORD"))
This file may contain several defun’s for various servers etc.