Clean up init files

This commit is contained in:
Henrik Lissner 2015-10-25 00:39:54 -04:00
parent f63d831575
commit accd943e87
2 changed files with 90 additions and 83 deletions

View File

@ -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

110
init.el
View File

@ -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...