summaryrefslogtreecommitdiffstats
path: root/emacs/.emacs.d/init.org
diff options
context:
space:
mode:
authorGravatar Tom Willemse2015-09-22 22:29:56 +0200
committerGravatar Tom Willemse2015-09-22 22:29:56 +0200
commitbd95338b9dc2c5e74a5b6864116924ce132dee9c (patch)
treedce64a26c1b4b1959f3c04ea85263f298d8f5e72 /emacs/.emacs.d/init.org
parent46bda5a885c9c25a3d049de2219fc2e816cfd6cf (diff)
downloaddotfiles-bd95338b9dc2c5e74a5b6864116924ce132dee9c.tar.gz
dotfiles-bd95338b9dc2c5e74a5b6864116924ce132dee9c.zip
Include intro.org directly in init.org
Diffstat (limited to 'emacs/.emacs.d/init.org')
-rw-r--r--emacs/.emacs.d/init.org70
1 files changed, 69 insertions, 1 deletions
diff --git a/emacs/.emacs.d/init.org b/emacs/.emacs.d/init.org
index 98b8778..5b56d39 100644
--- a/emacs/.emacs.d/init.org
+++ b/emacs/.emacs.d/init.org
@@ -7,7 +7,75 @@
* Introduction
-#+INCLUDE: "org/intro.org" :minlevel 2
+ Inspired by [[Other such projects][other such projects]], here is my Emacs initialization
+ file.
+
+ *Note:* This is not my entire Emacs initialization file. It's a
+ work-in-progress.
+
+** Setup
+
+ I could use org-babel to load this file, but I don't like my
+ initialization file being dependent on too many things, especially
+ big things, and org is a big thing. It may be strange for you to
+ read this, as I have placed my entire Emacs configuration in an
+ org-mode file, but here are the make targets I use to tangle and
+ subsequently byte-compile my init file:
+
+ #+BEGIN_SRC makefile
+ %.elc: %.el
+ emacs -Q -batch -eval "(byte-compile-file \"$<\")"
+
+ init.el: init.org
+ emacs -Q -batch -l "ob-tangle" -eval "(org-babel-tangle-file \"init.org\")
+ #+END_SRC
+
+ Executing the second target (either through make, or manually) will
+ get you my Emacs initialization file in plain Emacs Lisp.
+
+ *Note:* If you look at this file in its org-mode form you will notice
+ that I actually tangle ~init.org~ into ~init2.el~. This is a temporary
+ measure so that I can gradually move my configuration from my
+ existing ~init.el~ file into ~init.org~ without much trouble. Once I
+ have emptied out my ~init.el~ I will instruct babel to tangle into
+ ~init.el~, this code already reflects that.
+
+** The ~oni:~ prefix
+
+ To keep my functions and variables from ever accidentally
+ interfering with other packages or Emacs internal variables I
+ prefix all the functions I write and variables I declare with ~oni:~.
+ You don't have to copy it if you copy anything from this file, as
+ long as you do it consistently.
+
+ I sometimes forget to do this, though.
+
+** The ~depends-on~ snippets
+
+ At certain points in this document you will find bits of code that
+ look like:
+
+ #+BEGIN_SRC emacs-lisp :tangle no
+ (depends-on "somepackage")
+ #+END_SRC
+
+ These calls are from the Cask DSL. They specify that my
+ configuration depends on some package found in one of the ELPA
+ repositories I have setup.
+
+ These snippets don't belong in your =init.el=, but instead in a
+ separate =Cask= file, and only if you use Cask, not if you just use
+ the standard ~package.el~.
+
+** Other such projects
+
+ As stated, this project is inspired and influenced by other
+ literate configurations. Here is a list of some of the ones I've
+ found:
+
+ - [[http://sachac.github.io/.emacs.d/Sacha.html][Sacha Chua]]
+ - [[http://www.wisdomandwonder.com/wordpress/wp-content/uploads/2014/03/C3F.html][Grant Rettke]]
+ - [[https://github.com/wasamasa/dotemacs][Vasilij Schneidermann]]
* Preparation