Move bootstrap into init-packages.el

This commit is contained in:
Henrik Lissner 2016-01-27 20:42:11 -05:00
parent 15277fb395
commit d5115262b7
4 changed files with 105 additions and 117 deletions

View file

@ -142,24 +142,5 @@
(IS-LINUX 'core-os-linux) (IS-LINUX 'core-os-linux)
(IS-WINDOWS 'core-os-win32))) (IS-WINDOWS 'core-os-win32)))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun narf-init ()
(setq-default
gc-cons-threshold 8388608
gc-cons-percentage 0.3)
(defadvice save-buffers-kill-emacs (around no-query-kill-emacs activate)
"Prevent annoying \"Active processes exist\" query when you quit Emacs."
(cl-flet ((process-list ())) ad-do-it))
(defun display-startup-echo-area-message ()
(after! workgroups2
(message "%sLoaded in %s" (narf/tab-display t t) (emacs-init-time))))
(require 'server)
(unless (server-running-p)
(server-start)))
(provide 'core) (provide 'core)
;;; core.el ends here ;;; core.el ends here

View file

@ -11,49 +11,42 @@
(defconst narf-theme 'narf-light) (defconst narf-theme 'narf-light)
(defconst narf-default-font (font-spec :family "Hack" :size 14)) (defconst narf-default-font (font-spec :family "Hack" :size 14))
(defconst narf-writing-font (font-spec :family "Deja Sans" :size 14)) (defconst narf-writing-font (font-spec :family "Deja Sans" :size 14))
(set-frame-font narf-default-font)
(let (file-name-handler-alist (defconst narf-packages
(gc-cons-threshold 169715200)) '(core ; core/core.el
(tool-bar-mode -1) ; no toolbar
(load (concat user-emacs-directory "init-packages.el")) core-popup ; taming stray windows
(load-theme narf-theme t) core-ui ; draw me like one of your French editors
core-evil ; come to the dark side, we have cookies
(mapc 'require core-editor ; filling the editor-shaped hole in the emacs OS
`(core ; core/core.el core-company ; for the lazy typist
core-yasnippet ; for the lazier typist
core-popup ; taming stray windows core-auto-insert ; for the laziest typist
core-ui ; draw me like one of your French editors core-flycheck ; remember that semicolon you forgot?
core-evil ; come to the dark side, we have cookies core-project ; whose project am I in?
core-editor ; filling the editor-shaped hole in the emacs OS core-vcs ; version control is a programmer's best friend
core-company ; for the lazy typist core-helm ; a search engine for life and love
core-yasnippet ; for the lazier typist core-eval ; run code, run.
core-auto-insert ; for the laziest typist core-workgroups ; cure Emacs alzheimers
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-eval ; run code, run.
core-workgroups ; cure Emacs alzheimers
;;; Environments ;;; Environments
module-markdown module-markdown
module-org module-org
module-plantuml module-plantuml
;;; Specific custom functionality ;;; Specific custom functionality
;; lib-plugin ; plugin dev for various programs ;; lib-plugin ; plugin dev for various programs
lib-tmux ; closing the rift between GUI & terminal lib-tmux ; closing the rift between GUI & terminal
lib-demo ; let me demonstrate... lib-demo ; let me demonstrate...
lib-writing ; yes, I write papers and fiction in emacs lib-writing ; yes, I write papers and fiction in emacs
;; lib-crm ; emacs and org-mode based CRM ;; lib-crm ; emacs and org-mode based CRM
;;; Key bindings & ex commands ;;; Key bindings & ex commands
my-bindings my-bindings
my-commands my-commands
)) ))
(narf-init))
(load (concat user-emacs-directory "init-packages.el"))
(setq wg-session-file (expand-file-name "wg-org-default" narf-temp-dir)) (setq wg-session-file (expand-file-name "wg-org-default" narf-temp-dir))
(cd org-directory) (cd org-directory)

View file

@ -3,7 +3,9 @@
(setq-default (setq-default
;; stop package.el from being annoying. NARF relies entirely on Cask. ;; stop package.el from being annoying. NARF relies entirely on Cask.
package--init-file-ensured t package--init-file-ensured t
package-enable-at-startup nil) package-enable-at-startup nil
gc-cons-threshold 8388608
gc-cons-percentage 0.3)
(eval-and-compile (eval-and-compile
(defconst narf-emacs-dir user-emacs-directory) (defconst narf-emacs-dir user-emacs-directory)
@ -55,9 +57,28 @@
(--subdirs narf-packages-dir) (--subdirs narf-packages-dir)
load-path)))) load-path))))
;;;;;;;;;;;;;;;; ;; Load local settings, if available
(when (file-exists-p "~/.emacs.local.el") (when (file-exists-p "~/.emacs.local.el")
(load "~/.emacs.local.el")) (load "~/.emacs.local.el"))
;; prematurely optimize for faster startup
(let (file-name-handler-alist
(gc-cons-threshold 169715200))
(scroll-bar-mode -1) ; no scrollbar
(tool-bar-mode -1) ; no toolbar
(load-theme narf-theme t)
(mapc 'require narf-packages))
(defadvice save-buffers-kill-emacs (around no-query-kill-emacs activate)
"Prevent annoying \"Active processes exist\" query when you quit Emacs."
(cl-flet ((process-list ())) ad-do-it))
(defun display-startup-echo-area-message ()
(after! workgroups2
(message "%sLoaded in %s" (narf/tab-display t t) (emacs-init-time))))
(require 'server)
(unless (server-running-p)
(server-start))
;;; init-packages.el ends here ;;; init-packages.el ends here

113
init.el
View file

@ -47,71 +47,64 @@
(defconst narf-writing-font (font-spec :family "Hack" :size 14)) (defconst narf-writing-font (font-spec :family "Hack" :size 14))
(defconst narf-big-font (font-spec :family "Inconsolata" :size 20)) (defconst narf-big-font (font-spec :family "Inconsolata" :size 20))
;; prematurely optimize for faster startup (defconst narf-packages
(let (file-name-handler-alist '(core ; core/core.el
(gc-cons-threshold 169715200))
(scroll-bar-mode -1) ; no scrollbar
(tool-bar-mode -1) ; no toolbar
(load (concat user-emacs-directory "init-packages.el")) ;;; The heart of NARF
(load-theme narf-theme t) core-popup ; taming stray windows
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-eval ; run code, run.
core-workgroups ; cure Emacs alzheimers + tab emulation
(mapc 'require ;;; Environments
`(core ; core/core.el module-cc ; c/c++/obj-c madness
module-csharp ; unity, .NET, and mono shenanigans
module-data ; dbs 'n data formats
module-go ; the hipster dialect
module-java ; the poster child for carpal tunnel syndome
module-js ; all(hope(abandon(ye(who(enter(here))))))
module-lisp ; drowning in parentheses
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-plantuml ; to help show others how right I am
module-python ; beautiful is better than ugly
module-regex ; /^[^\s](meaning)[^\n]*/
module-ruby ; <3
module-rust ; Fe2O3; for gamedev and great good
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
;;; The heart of NARF ;;; Experimental
core-popup ; taming stray windows ;; module-crystal ; ruby at the speed of c
core-ui ; draw me like one of your French editors ;; module-eshell ; for inferior OSes *cough*windows
core-evil ; come to the dark side, we have cookies ;; module-nim ; look out Abraham
core-editor ; filling the editor-shaped hole in the emacs OS ;; module-pony ; Dear Princess Compiler
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-eval ; run code, run.
core-workgroups ; cure Emacs alzheimers + tab emulation
;;; Environments ;;; Specific custom functionality
module-cc ; c/c++/obj-c madness lib-plugin ; plugin dev for various programs
module-csharp ; unity, .NET, and mono shenanigans lib-tmux ; closing the rift between GUI & terminal
module-data ; dbs 'n data formats lib-demo ; let me demonstrate...
module-go ; the hipster dialect lib-writing ; yes, I write papers and fiction in emacs
module-java ; the poster child for carpal tunnel syndome ;; lib-crm ; emacs and org-mode based CRM
module-js ; all(hope(abandon(ye(who(enter(here))))))
module-lisp ; drowning in parentheses
module-lua ; one-based indices? one-based indices.
module-markdown ; markdown
module-nim ; look out Abraham
module-org ; for fearless [organized] leader
module-php ; making php less painful to work with
module-plantuml ; to help show how right I am
module-python ; beautiful is better than ugly
module-regex ; /^[^\s](meaning)[^\n]*/
module-ruby ; <3
module-rust ; Fe2O3; for gamedev and great good
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
;;; Experimental
;; module-crystal ; ruby at the speed of c
;; module-eshell ; for inferior OSes *cough*windows
;;; Specific custom functionality ;;; Key bindings & ex commands
lib-plugin ; plugin dev for various programs my-bindings
lib-tmux ; closing the rift between GUI & terminal my-commands
lib-demo ; let me demonstrate... ))
lib-writing ; yes, I write papers and fiction in emacs
;; lib-crm ; emacs and org-mode based CRM
;;; Key bindings & ex commands (load (concat user-emacs-directory "init-packages.el"))
my-bindings
my-commands
)))
(narf-init)
;;; I think so Brain... ;;; I think so Brain...