split init.el
[emacs.git] / .emacs.d / init.el
1 ;; Ganneff's emacs config
2
3 ;; Emacs can not read its config directly from org-mode files.
4 ;; But as my config nearly completly is inside an org-mode file,
5 ;; emacs need to be told to deal with it.
6 ;; Meet org-tangle/org-babel-load-file, which extracts the emacs-lisp
7 ;; source parts of my config files, writes them into .el files
8 ;; and then lets emacs load those.
9
10 ;; That way I have a nice environment to edit and comment - and easily export
11 ;; to web or elsewhere - while emacs has its elisp. The initial run after
12 ;; a config change takes longer, but as that only happens when I change
13 ;; something in the .org files - I don't care.
14
15 ;; Go go go
16 (message "Emacs is powering up... Be patient, Master %s!" (getenv "USER"))
17
18 ;; I like to see how long it takes to "boot" emacs (usually one or two
19 ;; seconds), so save the start time
20 (defvar emacs-load-start-time (current-time))
21
22 ;; Set path to (my, recent) Org-Mode version
23 (add-to-list 'load-path (concat jj-elisp-dir "/org/"))
24
25 ;; As we use org-mode/org-babel/org-tangle to extract the real emacs
26 ;; config out of the org-mode files, we have to load that first.
27 (setq org-modules (quote
28 (org-bbdb org-bibtex org-crypt org-docview org-gnus
29 org-id org-info org-jsinfo org-habit org-inlinetask
30 org-irc org-protocol org-w3m org-mouse org-checklist
31 org-notmuch icalendar)))
32
33 (require 'org-install)
34 (require 'ob-tangle)
35 (org-babel-load-file (expand-file-name "initjj.org" (file-name-directory (or load-file-name (buffer-file-name)))))
36