Merge branch 'master' of git.ganneff.de:emacs
[emacs.git] / .emacs.d / init.el
index 63214b9..d69a08d 100644 (file)
@@ -1,3 +1,9 @@
+;; Added by Package.el.  This must come before configurations of
+;; installed packages.  Don't delete this line.  If you don't want it,
+;; just comment it out by adding a semicolon to the start of the line.
+;; You may delete these explanatory comments.
+;(package-initialize)
+
 ;; Ganneff's emacs config
 
 ;; Emacs can not read its config directly from org-mode files.
 ;; a config change takes longer, but as that only happens when I change
 ;; something in the .org files - I don't care.
 
+(let ((file-name-handler-alist nil))
+
 ;; Go go go
-(message "Emacs is powering up... Be patient, Master %s!" (getenv "USER"))
+(unless noninteractive
+(message "Emacs is powering up... Be patient, Master %s!" (getenv "USER")))
 
 ;; I like to see how long it takes to "boot" emacs (usually one or two
 ;; seconds), so save the start time
 (defvar emacs-load-start-time (current-time))
 
-;; Set path to (my, recent) Org-Mode version
-(add-to-list 'load-path (concat jj-elisp-dir "/org/"))
 
-;; As we use org-mode/org-babel/org-tangle to extract the real emacs
-;; config out of the org-mode files, we have to load that first.
+; Much larger threshold for garbage collection prevents it to run too often.
+(setq gc-cons-threshold 480000000)
+
+;; Set a high number of lines for the message buffer so stuff doesn't "scroll out"
+(setq message-log-max 16384)
+
+;; Set path to (my, recent) Org-Mode version
+(add-to-list 'load-path (concat (file-name-directory (or load-file-name (buffer-file-name))) "elisp/org/"))
+;; org-mode can load modules when it loads itself, lets tell it which ones we want.
+;  org-checklist
 (setq org-modules (quote
                    (org-bbdb org-bibtex org-crypt org-docview org-gnus
-                    org-id org-info org-jsinfo org-habit org-inlinetask
-                    org-irc org-protocol org-w3m org-mouse org-checklist
+                    org-id org-info org-habit org-inlinetask
+                    org-irc org-protocol org-w3m org-mouse
                     org-notmuch icalendar)))
 
-(require 'org-install)
+;; And load org-mode
+(require 'org)
+;; Without this the whole config can't load
 (require 'ob-tangle)
-(org-babel-load-file (expand-file-name "initjj.org" (file-name-directory (or load-file-name (buffer-file-name)))))
+;; And finally, let org-babel do its work. All the rest of the emacs
+;; initialization comes from initjj.org
+(org-babel-load-file (expand-file-name "initjj.org" (file-name-directory (or load-file-name (buffer-file-name))))))
 
+; And back done a bit with it, startup is over
+(setq gc-cons-threshold 100000000)