From accd943e876a2038422a34325c78117ec394161c Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Sun, 25 Oct 2015 00:39:54 -0400 Subject: [PATCH] Clean up init files --- init-load-path.el | 63 ++++++++++++++------------ init.el | 110 +++++++++++++++++++++++----------------------- 2 files changed, 90 insertions(+), 83 deletions(-) diff --git a/init-load-path.el b/init-load-path.el index 0a925eb5d..cddfad41a 100644 --- a/init-load-path.el +++ b/init-load-path.el @@ -1,41 +1,50 @@ ;;; init-load-path.el -(fset '! 'eval-when-compile) +(setq gc-cons-threshold 84857600) -(defconst narf-emacs-dir user-emacs-directory) -(defconst narf-core-dir (concat narf-emacs-dir "core/")) -(defconst narf-modules-dir (concat narf-emacs-dir "modules/")) -(defconst narf-contrib-dir (concat narf-emacs-dir "contrib/")) -(defconst narf-private-dir (concat narf-emacs-dir "private/")) -(defconst narf-elpa-dir (concat narf-emacs-dir ".cask/" emacs-version "/elpa/")) -(defconst narf-temp-dir (concat narf-private-dir "cache/" (system-name) "/")) -(defconst narf-script-dir (concat narf-emacs-dir "scripts/")) -(defconst narf-snippet-dirs (list (concat narf-private-dir "snippets/") - (concat narf-private-dir "templates/"))) +(eval-and-compile + (defconst narf-emacs-dir user-emacs-directory) + (defconst narf-core-dir (concat narf-emacs-dir "core/")) + (defconst narf-modules-dir (concat narf-emacs-dir "modules/")) + (defconst narf-contrib-dir (concat narf-emacs-dir "contrib/")) + (defconst narf-private-dir (concat narf-emacs-dir "private/")) + (defconst narf-elpa-dir (concat narf-emacs-dir ".cask/" emacs-version "/elpa/")) + (defconst narf-temp-dir (concat narf-private-dir "cache/" (system-name) "/")) + (defconst narf-script-dir (concat narf-emacs-dir "scripts/")) + (defconst narf-snippet-dirs (list (concat narf-private-dir "snippets/") + (concat narf-private-dir "templates/")))) -(! (defun --subdirs (path) - (let ((result '()) - (paths (ignore-errors (directory-files path t "^[^.]" t)))) - (dolist (file paths) - (when (file-directory-p file) - (add-to-list 'result file))) - result))) +(eval-when-compile + (add-to-list 'load-path "/usr/local/share/emacs/site-lisp/cask") + (defun --subdirs (path) + (let ((result '()) + (paths (ignore-errors (directory-files path t "^[^.]" t)))) + (dolist (file paths) + (when (file-directory-p file) + (add-to-list 'result file))) + result))) ;; Scan various folders to populate the load-dirs (setq custom-theme-load-path - (! (append (--subdirs (concat narf-private-dir "themes/")) - custom-theme-load-path))) + (eval-when-compile + (append (--subdirs (concat narf-private-dir "themes/")) + custom-theme-load-path))) + (setq load-path - (! (require 'cask) - (cask-initialize) - (setq load-path (append (list narf-core-dir narf-contrib-dir narf-modules-dir narf-private-dir) - (list (concat narf-core-dir "lib")) - (list (concat narf-modules-dir "lib")) - (--subdirs narf-contrib-dir) - load-path)))) + (eval-when-compile + (require 'cask) + (cask-initialize) + (setq load-path (append (list narf-core-dir narf-contrib-dir narf-modules-dir narf-private-dir) + (list (concat narf-core-dir "lib")) + (list (concat narf-modules-dir "lib")) + (--subdirs narf-contrib-dir) + load-path)))) (defconst IS-MAC (eq system-type 'darwin)) (defconst IS-LINUX (eq system-type 'gnu/linux)) (defconst IS-WINDOWS (eq system-type 'windows-nt)) +(when (file-exists-p "~/.emacs.local.el") + (load "~/.emacs.local.el")) + ;;; init-load-path.el ends here diff --git a/init.el b/init.el index 2955eeb82..db6a18946 100644 --- a/init.el +++ b/init.el @@ -40,67 +40,65 @@ ;; ;;; License: GPLv3 -(defconst narf-debug-mode nil) -(setq gc-cons-threshold 84857600) ; avoid garbage collection -(setq file-name-handler-alist nil) ; premature optimization weee! +(defconst narf-theme 'narf-dark) +(defconst narf-default-font (font-spec :family "DejaVu Sans Mono" :size 12)) +(defconst narf-big-font (font-spec :family "Ubuntu Mono" :size 18)) -(scroll-bar-mode -1) ; no scrollbar -(tool-bar-mode -1) ; no toolbar -(menu-bar-mode -1) ; no menubar +(scroll-bar-mode -1) ; no scrollbar +(tool-bar-mode -1) ; no toolbar -(defconst narf-default-font (font-spec :family "terminus (ttf)" :size 12 :antialias nil)) -(defconst narf-big-font (font-spec :family "Ubuntu Mono" :size 18 :antialias t)) -(load (concat user-emacs-directory "init-load-path.el")) -(load-theme (if window-system 'narf-dark 'wombat) t) +;; prematurely optimize for faster startup +(let (file-name-handler-alist) + (load (concat user-emacs-directory "init-load-path.el")) + (load-theme narf-theme t) -(set-frame-parameter nil 'fullscreen 'fullboth) + (mapc 'require + `(core ; core/core.el + ,(cond (IS-MAC 'core-os-osx) + (IS-LINUX 'core-os-linux) + (IS-WINDOWS 'core-os-win32)) -(mapc 'require - `(core ; core/core.el - ,(cond (IS-MAC 'core-os-osx) - (IS-LINUX 'core-os-linux) - (IS-WINDOWS 'core-os-win32)) + core-ui ; draw me like one of your French editors + core-evil ; come to the dark side, we have cookies + core-editor ; filling the editor-shaped hole in the emacs OS + core-company ; for the lazy typist + core-yasnippet ; for the lazier typist + core-auto-insert ; for the laziest typist + core-flycheck ; remember that semicolon you forgot? + core-project ; whose project am I in? + core-vcs ; version control is a programmer's best friend + core-helm ; a search engine for life and love + core-quickrun ; run code, run. + core-workgroups ; cure Emacs alzheimers - core-ui ; draw me like one of your French editors - core-evil ; come to the dark side, we have cookies - core-editor ; filling the editor-shaped hole in the emacs OS - core-company ; for the lazy typist - core-yasnippet ; for the lazier typist - core-auto-insert ; for the laziest typist - core-flycheck ; remember that semicolon you forgot? - core-project ; whose project am I in? - core-vcs ; version control is a programmer's best friend - core-helm ; a search engine for life and love - core-quickrun ; run code, run. - core-workgroups ; cure Emacs alzheimers + module-cc ; c/c++/obj-c madness + ;; module-crystal ; ruby at the speed of c + module-csharp ; unity, .NET, and mono shenanigans + module-collab ; wonewy, I'm so wonewy~ + module-data ; dbs 'n data formats + module-elisp ; drowning in parentheses + module-eshell ; eshell (on windows) + module-go ; a hipster dialect + module-java ; the poster child for carpal tunnel syndome + module-js ; alert("not java, javascript!") + module-lb6 ; LaunchBar 6 development + module-lua ; one-based indices? one-based indices. + module-markdown ; markdown + module-org ; for fearless [organized] leader + module-plantuml ; to help show how right I am + module-php ; making php less painful to work with + module-python ; beautiful is better than ugly + module-regex ; /^[^\s](meaning)[^\n]*/ + module-ruby ; <3 + module-rust ; Fe2O3 + module-sh ; she sells Z-shells by the C XOR + module-swift ; yay, emoji variables! + module-vim ; my mistress + module-web ; for the 2.0'er - module-cc ; c/c++/obj-c madness - ;; module-crystal ; ruby at the speed of c - module-csharp ; unity, .NET, and mono shenanigans - module-data ; dbs 'n data formats - module-elisp ; drowning in parentheses - module-eshell ; eshell (on windows) - module-go ; a hipster dialect - module-java ; the poster child for carpal tunnel syndome - module-js ; alert("not java, javascript!") - module-lb6 ; LaunchBar 6 development - module-lua ; one-based indices? one-based indices. - module-markdown ; markdown - module-org ; for fearless [organized] leader - module-php ; making php less painful to work with - module-python ; beautiful is better than ugly - module-regex ; /^[^\s](meaning)[^\n]*/ - module-ruby ; <3 - module-rust ; Fe2O3 - module-sh ; she sells Z-shells by the C shore - module-swift ; yay, emoji variables! - module-vim ; the confessional - module-web ; for the 2.0'er - - my-bindings - my-commands - )) - -(narf-init) + my-bindings + my-commands + )) + (narf-init)) ;;; I think so Brain...