summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--emacs.d/init.el82
-rw-r--r--emacs.d/inits/00_bindings.el4
-rw-r--r--emacs.d/inits/00_emacs.el20
-rw-r--r--emacs.d/inits/00_ui.el40
-rw-r--r--emacs.d/inits/50_development.el47
-rw-r--r--emacs.d/inits/50_flycheck.el23
-rw-r--r--emacs.d/inits/50_flyspell.el9
-rw-r--r--emacs.d/inits/50_git.el6
-rw-r--r--emacs.d/inits/70_org.el29
-rw-r--r--emacs.d/inits/90_lang-c.el6
-rw-r--r--emacs.d/inits/90_lang-gol.el14
-rw-r--r--emacs.d/inits/90_lang-python.el5
-rw-r--r--emacs.d/inits/90_lang-scala.el6
-rw-r--r--emacs.d/inits/90_markdown.el9
-rw-r--r--emacs.d/inits/90_mustache.el4
-rw-r--r--emacs.d/inits/90_puppet.el3
-rw-r--r--emacs.d/inits/90_shell.el3
-rw-r--r--emacs.d/inits/90_thrift.el3
-rw-r--r--emacs.d/inits/90_yaml.el3
-rw-r--r--emacs.d/packages.el4
20 files changed, 266 insertions, 54 deletions
diff --git a/emacs.d/init.el b/emacs.d/init.el
index 83b622d..2ec87da 100644
--- a/emacs.d/init.el
+++ b/emacs.d/init.el
@@ -1,50 +1,32 @@
-;; no menu
-(menu-bar-mode -1)
-
-;; show parenthesis
-(show-paren-mode +1)
-
-;; no color
-(global-font-lock-mode -1)
-
-;; and lose the stupid pipe chars on the split-screen bar
-(set-face-foreground 'vertical-border "white")
-(set-face-background 'vertical-border "white")
-
-;; alias yes-or-no to y-or-n
-(fset 'yes-or-no-p 'y-or-n-p)
-
-;; set utf-8 as the default encoding
-(prefer-coding-system 'utf-8-unix)
-
-(autoload 'ibuffer "ibuffer" "List buffers." t)
-
-;;; set some variables
-;; add a new line at the end of the file
-(setq
- auto-save-default nil
- auto-save-list-file-prefix nil
- frame-title-format '(buffer-file-name "%f" ("%b"))
- inhibit-startup-message t
- make-backup-files nil
- require-final-newline t
- tab-always-indent 'complete
- vc-follow-symlinks t)
-
-;; twitter's default
-(setq-default
- c-basic-offset 2
- indent-tabs-mode nil
- python-indent-offset 2
- scala-indent:use-javadoc-style t
- sh-basic-offset 2
- sh-indentation 2)
-
-;;; some bindings
-(global-set-key (kbd "M-j") 'join-line)
-(global-set-key (kbd "C-x C-b") 'ibuffer)
-
-;;; if our version is >= 24 and we have the packages.el file, load it.
-(when (>= emacs-major-version 24)
- (if (file-exists-p "~/.emacs.d/packages.el")
- (load "~/.emacs.d/packages.el")))
+(require 'package)
+
+;;; Code:
+(setq package-archives
+ (append package-archives
+ '(("melpa" . "http://melpa.milkbox.net/packages/"))))
+
+(package-initialize)
+(setq package-enable-at-startup nil)
+
+(unless package-archive-contents
+ (message "Refreshing ELPA package archives...")
+ (package-refresh-contents))
+
+(unless (package-installed-p 'use-package)
+ (message "`use-package' not found. Installing...")
+ (package-install 'use-package))
+
+(require 'use-package)
+(setq use-package-minimum-reported-time 0
+ use-package-verbose t)
+
+(use-package init-loader
+ :ensure t
+ :config
+ (setq init-loader-show-log-after-init t)
+ (init-loader-load (locate-user-emacs-file "inits")))
+
+(use-package server
+ :config
+ (unless (server-running-p)
+ (server-start)))
diff --git a/emacs.d/inits/00_bindings.el b/emacs.d/inits/00_bindings.el
new file mode 100644
index 0000000..216d601
--- /dev/null
+++ b/emacs.d/inits/00_bindings.el
@@ -0,0 +1,4 @@
+;;; some bindings
+(global-set-key (kbd "M-j") 'join-line)
+(global-set-key (kbd "C-x C-b") 'ibuffer)
+(global-set-key (kbd "<s-return>") 'toggle-frame-fullscreen)
diff --git a/emacs.d/inits/00_emacs.el b/emacs.d/inits/00_emacs.el
new file mode 100644
index 0000000..02ca40c
--- /dev/null
+++ b/emacs.d/inits/00_emacs.el
@@ -0,0 +1,20 @@
+;; alias yes-or-no to y-or-n
+(fset 'yes-or-no-p 'y-or-n-p)
+
+;; set utf-8 as the default encoding
+(prefer-coding-system 'utf-8-unix)
+
+(setq auto-save-default nil)
+
+(setq auto-save-list-file-prefix nil)
+
+;; *no* backups
+(setq make-backup-files nil)
+
+;; always add a newline
+(setq require-final-newline t)
+
+;; follow symlinks
+(setq vc-follow-symlinks t)
+
+(setq tab-always-indent 'complete)
diff --git a/emacs.d/inits/00_ui.el b/emacs.d/inits/00_ui.el
new file mode 100644
index 0000000..151d0c1
--- /dev/null
+++ b/emacs.d/inits/00_ui.el
@@ -0,0 +1,40 @@
+;; no menu
+(menu-bar-mode -1)
+
+;; show parenthesis
+(show-paren-mode +1)
+
+;; enable colors
+(global-font-lock-mode +1)
+
+;; no startup screen
+(setq inhibit-startup-message t)
+
+(setq frame-title-format '(buffer-file-name "%f" ("%b")))
+
+;; and lose the stupid pipe chars on the split-screen bar
+;; (set-face-foreground 'vertical-border "white")
+;; (set-face-background 'vertical-border "white")
+
+;; (set-fringe-mode 1)
+
+(use-package diminish
+ :ensure t
+ :config
+ (progn
+ (eval-after-load "whitespace" '(diminish 'whitespace-mode))))
+
+(use-package leuven-theme
+ :ensure t)
+
+(when window-system
+ ;;hide tool-bar
+ (tool-bar-mode 0)
+ ;;hide scroll-bar
+ (scroll-bar-mode 0)
+ ;;hide menu-bar
+ (menu-bar-mode 0)
+ ;; load leuven
+ (load-theme 'leuven t)
+ ;; menlo
+ (set-frame-font "Menlo-11"))
diff --git a/emacs.d/inits/50_development.el b/emacs.d/inits/50_development.el
new file mode 100644
index 0000000..526ec53
--- /dev/null
+++ b/emacs.d/inits/50_development.el
@@ -0,0 +1,47 @@
+(use-package ag
+ :ensure t
+ :defer t)
+
+(use-package goto-chg
+ :ensure t
+ :bind (("C-." . goto-last-change)
+ ("C-," . goto-last-change-reverse)))
+
+(use-package projectile
+ :ensure t
+ :diminish projectile-mode
+ :init
+ (setq projectile-enable-caching t)
+ :config
+ (projectile-global-mode))
+
+(use-package rainbow-delimiters
+ :ensure t
+ :defer t
+ :init
+ (progn
+ (add-hook 'emacs-lisp-mode-hook #'rainbow-delimiters-mode)))
+
+(use-package smartparens
+ :ensure t
+ :diminish smartparens-mode
+ :config
+ (progn
+ (require 'smartparens-config)
+ (smartparens-global-mode 1)))
+
+(use-package gist
+ :ensure t
+ :bind ("C-c g p" . gist-region-or-buffer-private)
+ :config
+ (setq gist-view-gist t))
+
+(use-package github-browse-file
+ :ensure t
+ :defer t)
+
+(setq-default indent-tabs-mode nil)
+
+(use-package exec-path-from-shell
+ :config
+ (exec-path-from-shell-initialize))
diff --git a/emacs.d/inits/50_flycheck.el b/emacs.d/inits/50_flycheck.el
new file mode 100644
index 0000000..345e717
--- /dev/null
+++ b/emacs.d/inits/50_flycheck.el
@@ -0,0 +1,23 @@
+(use-package flycheck
+ :ensure t
+ :defer t
+ :preface (progn
+ (defun check-source-predicate ()
+ (and (executable-find "check.pex")
+ (buffer-file-name)
+ (string-match "src/source/.*\.py$" (buffer-file-name)))))
+ :init
+ (progn
+ (add-hook 'prog-mode-hook 'flycheck-mode)
+ (setq-default flycheck-disabled-checkers '(emacs-lisp-checkdoc)))
+ :config
+ (progn
+ (flycheck-define-checker source-check
+ "A syntax checker for python source code in Source, using `dist.pex'"
+ :command ("check.pex" source)
+ ;;; errors are reported like this:
+ ;;; E241:ERROR <file name>:<line> <message>
+ :error-patterns ((error line-start (1+ nonl) ":ERROR" (1+ nonl) ":" line (message) line-end))
+ :predicate check-source-predicate
+ :modes (python-mode))
+ (add-to-list 'flycheck-checkers 'source-check)))
diff --git a/emacs.d/inits/50_flyspell.el b/emacs.d/inits/50_flyspell.el
new file mode 100644
index 0000000..fe0c754
--- /dev/null
+++ b/emacs.d/inits/50_flyspell.el
@@ -0,0 +1,9 @@
+;; (use-package flyspell
+;; :ensure t
+;; :defer t
+;; :init
+;; (progn
+;; (setq ispell-program-name "aspell"
+;; ispell-list-command "--list")
+;; (add-hook 'prog-mode-hook 'flyspell-prog-mode)
+;; (add-hook 'text-mode-hook 'turn-on-flyspell)))
diff --git a/emacs.d/inits/50_git.el b/emacs.d/inits/50_git.el
new file mode 100644
index 0000000..7ce259c
--- /dev/null
+++ b/emacs.d/inits/50_git.el
@@ -0,0 +1,6 @@
+(use-package magit
+ :ensure t
+ :bind ("C-x g" . magit-status)
+ :config
+ (progn
+ (setenv "GIT_PAGER" "")))
diff --git a/emacs.d/inits/70_org.el b/emacs.d/inits/70_org.el
new file mode 100644
index 0000000..4f20faa
--- /dev/null
+++ b/emacs.d/inits/70_org.el
@@ -0,0 +1,29 @@
+(use-package org
+ :ensure t
+ :bind ("C-c c" . org-capture)
+ :init
+ (progn
+ (add-hook 'org-mode-hook 'turn-on-auto-fill))
+ :config
+ (setq
+ org-startup-indented t
+ org-tags-column -70
+ org-hide-leading-stars t
+ org-cycle-separator-lines 0
+ org-src-fontify-natively t
+ org-edit-src-content-indentation 0
+ org-catch-invisible-edits 'error
+ org-pretty-entities t
+ org-default-notes-file "~/Dropbox/Projects/capture.org")
+ (setq org-capture-templates
+ '(("t" "Capture a Task" entry
+ (file org-default-notes-file)
+ "* TODO %?\n%i\n" :empty-lines 0)))
+ (setq org-todo-state-tags-triggers
+ (quote (("CANCELLED" ("CANCELLED" . t))
+ ("WAITING" ("WAITING" . t))
+ ("HOLD" ("WAITING") ("HOLD" . t))
+ (done ("WAITING") ("HOLD"))
+ ("TODO" ("WAITING") ("CANCELLED") ("HOLD"))
+ ("NEXT" ("WAITING") ("CANCELLED") ("HOLD"))
+ ("DONE" ("WAITING") ("CANCELLED") ("HOLD"))))))
diff --git a/emacs.d/inits/90_lang-c.el b/emacs.d/inits/90_lang-c.el
new file mode 100644
index 0000000..bd4cc7f
--- /dev/null
+++ b/emacs.d/inits/90_lang-c.el
@@ -0,0 +1,6 @@
+(use-package google-c-style
+ :ensure t
+ :defer t
+ :config
+ (progn
+ (setq c-basic-offset 2)))
diff --git a/emacs.d/inits/90_lang-gol.el b/emacs.d/inits/90_lang-gol.el
new file mode 100644
index 0000000..c7ce19d
--- /dev/null
+++ b/emacs.d/inits/90_lang-gol.el
@@ -0,0 +1,14 @@
+(use-package go-eldoc
+ :ensure t
+ :defer t
+ :init (add-hook 'go-mode-hook 'go-eldoc-setup))
+
+(use-package go-mode
+ :ensure t
+ :defer t
+ :config
+ (progn
+ (bind-key "C-c C-f" 'gofmt go-mode-map)
+ (bind-key "C-c h" 'godoc go-mode-map)
+ (bind-key "C-c C-g" 'go-goto-imports go-mode-map)
+ (bind-key "C-c C-r" 'go-remove-unused-imports go-mode-map)))
diff --git a/emacs.d/inits/90_lang-python.el b/emacs.d/inits/90_lang-python.el
new file mode 100644
index 0000000..dd0e46e
--- /dev/null
+++ b/emacs.d/inits/90_lang-python.el
@@ -0,0 +1,5 @@
+(use-package python
+ :mode ("\\.\\(py\\|aurora\\)$" . python-mode)
+ :config
+ (progn
+ (setq python-indent-offset 2)))
diff --git a/emacs.d/inits/90_lang-scala.el b/emacs.d/inits/90_lang-scala.el
new file mode 100644
index 0000000..d105bcc
--- /dev/null
+++ b/emacs.d/inits/90_lang-scala.el
@@ -0,0 +1,6 @@
+(use-package scala-mode2
+ :ensure t
+ :defer t
+ :config
+ (progn
+ (setq-default scala-indent:use-javadoc-style t)))
diff --git a/emacs.d/inits/90_markdown.el b/emacs.d/inits/90_markdown.el
new file mode 100644
index 0000000..3ec3ec4
--- /dev/null
+++ b/emacs.d/inits/90_markdown.el
@@ -0,0 +1,9 @@
+(use-package markdown-mode
+ :ensure t
+ :mode ("\\.\\(m\\(ark\\)?down\\|md\\)$" . markdown-mode)
+ :config
+ (progn
+ (let ((preferred-markdown-impl "peg-markdown"))
+ (when (executable-find preferred-markdown-impl)
+ (setq markdown-command preferred-markdown-impl)))))
+
diff --git a/emacs.d/inits/90_mustache.el b/emacs.d/inits/90_mustache.el
new file mode 100644
index 0000000..32e1161
--- /dev/null
+++ b/emacs.d/inits/90_mustache.el
@@ -0,0 +1,4 @@
+(use-package mustache-mode
+ :mode ("\\.\\(alert\\|mustache\\)$" . mustache-mode)
+ :ensure t
+ :defer t)
diff --git a/emacs.d/inits/90_puppet.el b/emacs.d/inits/90_puppet.el
new file mode 100644
index 0000000..97b8a67
--- /dev/null
+++ b/emacs.d/inits/90_puppet.el
@@ -0,0 +1,3 @@
+(use-package puppet-mode
+ :ensure t
+ :mode ("\\.pp$" . puppet-mode))
diff --git a/emacs.d/inits/90_shell.el b/emacs.d/inits/90_shell.el
new file mode 100644
index 0000000..aa3fab5
--- /dev/null
+++ b/emacs.d/inits/90_shell.el
@@ -0,0 +1,3 @@
+(setq-default
+ sh-basic-offset 2
+ sh-indentation 2)
diff --git a/emacs.d/inits/90_thrift.el b/emacs.d/inits/90_thrift.el
new file mode 100644
index 0000000..3a99429
--- /dev/null
+++ b/emacs.d/inits/90_thrift.el
@@ -0,0 +1,3 @@
+(use-package thrift
+ :ensure t
+ :defer t)
diff --git a/emacs.d/inits/90_yaml.el b/emacs.d/inits/90_yaml.el
new file mode 100644
index 0000000..6758789
--- /dev/null
+++ b/emacs.d/inits/90_yaml.el
@@ -0,0 +1,3 @@
+(use-package yaml-mode
+ :ensure t
+ :defer t)
diff --git a/emacs.d/packages.el b/emacs.d/packages.el
index e4f4e8d..443a115 100644
--- a/emacs.d/packages.el
+++ b/emacs.d/packages.el
@@ -110,16 +110,12 @@
(use-package markdown-mode
:ensure t
:mode ("\\.\\(m\\(ark\\)?down\\|md\\)$" . markdown-mode)
- :init
- (add-hook 'markdown-mode-hook 'spell-check-and-wrap-at-80)
:config
(progn
(let ((preferred-markdown-impl "peg-markdown"))
(when (executable-find preferred-markdown-impl)
(setq markdown-command preferred-markdown-impl)))))
-(use-package midnight)
-
(use-package mustache-mode
:mode ("\\.\\(alert\\|mustache\\)$" . mustache-mode)
:ensure t