Various changes to emacs configuration

Some highlights include:
- Modified theme to better emphasize mode-line
- Add .emacs.d/site-lisp-extra to load-path for various emacs-lisp snippets
- Add custom yasnippet directory under .emacs.d/snippets
- Use flyspell in more non-code modes (eg. various markup languages and mu4e)
- Added new sorting rules/categories for ibuffer
- Setup Auctex for smooth latex editing
- Pimp out editing of lispy langs including:
  - highlight current sexp at point with hightlight-sexp
  - enable mode for racket scribble (in .emacs.d/site-lisp-extra/)
  - add guile to geiser scheme implementations list
- Disabled highlight-current-line
- Enable bookmarks+
  See: http://www.emacswiki.org/emacs/BookmarkPlus
- Update auto-insert templates to use variables "author" and "email" correctly.
  Note: I am considering removing use of auto-insert for templates and
  instead switching to yasnippet for templates and starting with a empty
  file. Then a snippet like 'gpl3' could be expanded to be the license
  or the license header for the file. Also the little info block I have
  on all of my current templates could also simply be another snippet.
- Switched from gnus to mu4e for email; this requires the external tools
  mbsync and mu. Gnus can still be used but is now depreciated in
  preference of mu4e (which is much faster and better suited when used
  in combination with mbsync)
- Fixed annoying issue where when quack-mode was enabled C-x C-f was
  overridden to quack-find-file which didn't have ido-completion
- Setup gpg-agent so environment variables are correct (*TODO* this
  still isn't working 100% as I've noticed miss matches; it could be
  that somehow GPG_AGENT_INFO changes outside of emacs and because I
  only fix its value during the evaluation of .emacs it could result in
  a miss match.)
- Add exit confirmation in the mini-buffer

Signed-off-by: Collin J. Doering <rekahsoft@gmail.com>
This commit is contained in:
Collin J. Doering 2014-09-06 23:42:04 -04:00 committed by Collin J. Doering
parent c88096c0b6
commit a09010409f
59 changed files with 1719 additions and 77 deletions

320
.emacs
View File

@ -58,6 +58,9 @@
;; Turn on electric-indent-mode ;; Turn on electric-indent-mode
(electric-indent-mode 1) (electric-indent-mode 1)
;; Single spaces denote end sentences for use with sentence commands
(setq sentence-end-double-space nil)
;; Show column number in status bar ;; Show column number in status bar
(column-number-mode) (column-number-mode)
@ -80,8 +83,17 @@
(add-to-list 'auto-mode-alist '("\\.mpdconf" . conf-mode)) (add-to-list 'auto-mode-alist '("\\.mpdconf" . conf-mode))
(add-to-list 'auto-mode-alist '("dunstrc" . conf-mode)) (add-to-list 'auto-mode-alist '("dunstrc" . conf-mode))
;; bind M-g to M-x goto-line ;; Load ~/.emacs.d/site-list-extra which contains various .el files
(global-set-key "\M-g" 'goto-line) ;; that aren't (yet) available through packages
(add-to-list 'load-path "~/.emacs.d/site-lisp-extra")
;; Define some alias' for commonly M-x'ed commands
(defalias 'run-sql 'sql-product-interactive)
;; bind M-g to M-x goto-line *DEPRECIATED*
;; "M-g was made a prefix by RMS in 2005. goto-line has been bound to M-g g and M-g M-g. XueFuqiao"
;; See: http://www.emacswiki.org/emacs/EmacsNiftyTricks
;;(global-set-key "\M-g" 'goto-line)
;; Make C-x O cycle backwards a pane (oposite to C-x o) ;; Make C-x O cycle backwards a pane (oposite to C-x o)
(global-set-key "\C-xO" #'(lambda () (global-set-key "\C-xO" #'(lambda ()
@ -121,8 +133,8 @@
;; activate flyspell-prog-mode for all buffers used for programming ;; activate flyspell-prog-mode for all buffers used for programming
(activate-mode-with-hooks 'flyspell-prog-mode code-modes) (activate-mode-with-hooks 'flyspell-prog-mode code-modes)
;; use flyspell-mode in org-mode and magit-log-edit-mode buffers ;; use flyspell-mode in 'non-code' text like modes (Eg. org-mode, markup modes and magit-log-edit-mode)
(activate-mode-with-hooks 'flyspell-mode '(org-mode-hook magit-log-edit-mode-hook)) (activate-mode-with-hooks 'flyspell-mode '(text-mode-hook markdown-mode-hook latex-mode-hook org-mode-hook magit-log-edit-mode-hook mu4e-compose-mode-hook))
;; Enjoy a game of Sudoku on some downtime ;; Enjoy a game of Sudoku on some downtime
(require 'sudoku) ;; ELPA (require 'sudoku) ;; ELPA
@ -191,6 +203,12 @@
(name . "^dunstrc") (name . "^dunstrc")
(name . "^\\.mpdconf") (name . "^\\.mpdconf")
(name . "^\\.conkerorrc"))) (name . "^\\.conkerorrc")))
("markup" (or
(mode . xml-mode)
(mode . html-mode)
(mode . haml-mode)
(mode . markdown-mode)
(mode . latex-mode)))
("code" (or ("code" (or
(mode . c-mode) (mode . c-mode)
(mode . c++-mode) (mode . c++-mode)
@ -207,15 +225,13 @@
(mode . haskell-mode) (mode . haskell-mode)
(mode . scala-mode) (mode . scala-mode)
(mode . php-mode) (mode . php-mode)
(mode . xml-mode)
(mode . html-mode)
(mode . css-mode) (mode . css-mode)
(mode . haml-mode)
(mode . sass-mode) (mode . sass-mode)
(mode . scss-mode) (mode . scss-mode)
(mode . js-mode))) (mode . js-mode)
(mode . sql-mode)))
("REPL" (or ("REPL" (or
(mode . geiser-mode) (mode . geiser-repl-mode)
(mode . slime-repl-mode) (mode . slime-repl-mode)
(mode . inferior-python-mode) (mode . inferior-python-mode)
(mode . ipython-mode) (mode . ipython-mode)
@ -225,15 +241,26 @@
(mode . inferior-scheme-mode) (mode . inferior-scheme-mode)
(mode . inferior-tcl) (mode . inferior-tcl)
(mode . erlang-shell-mode) (mode . erlang-shell-mode)
(name . "^\\*inferior-lisp\\*$") (mode . sql-interactive-mode)))
(name . "^\\* Racket REPL \\*$")))
("git" (or ("git" (or
(name . "^\\*magit: ") ;; this regxp could be better (name . "^\\*magit: .*\\*$") ;; this regxp could be better
(mode . magit-mode) (mode . magit-mode)
(mode . magit-diff-mode) (mode . magit-diff-mode)
(mode . magit-log-mode) (mode . magit-log-mode)
(mode . magit-commit-mode) (mode . magit-commit-mode)
(mode . magit-log-mode))) (mode . magit-log-mode)
(mode . magit-wazzup-mode)
(mode . magit-process-mode)))
("bookmarks" (or
(name . "^\\*Bookmark List\\*$")))
("help" (or
(mode . help-mode)
(mode . apropos-mode)
(mode . info-mode)
(mode . man-mode)))
("messages" (or
(name . "^\\*geiser messages\\*$")
(name . "^\\*Shell Command Output\\*$")))
("planner" (or ("planner" (or
(name . "^\\*Calendar\\*$") (name . "^\\*Calendar\\*$")
(name . "^diary$") (name . "^diary$")
@ -242,12 +269,22 @@
(name . "^\\*scratch\\*$") (name . "^\\*scratch\\*$")
(name . "^\\*Messages\\*$") (name . "^\\*Messages\\*$")
(name . "^\\*Backtrace\\*$") (name . "^\\*Backtrace\\*$")
(name . "^\\*Compile-Log\\*$")
(mode . ediff-meta-mode)
(mode . browse-kill-ring-mode)
(mode . package-menu-mode) (mode . package-menu-mode)
(mode . compilation-mode))) (mode . compilation-mode)))
("org" (or ("org" (or
(mode . org-mode) (mode . org-mode)
(name . "^\\.org$") (name . "^\\.org$")
(name . "^\\.org.gpg$"))) (name . "^\\.org.gpg$")))
("mu4e" (or
(mode . mu4e-main-mode)
(mode . mu4e-compose-mode)
(mode . mu4e-headers-mode)
(mode . mu4e-view-mode)
(name . "^mu4e-update$")
(name . "^\\*trace of SMTP session to .*\\*$")))
("gnus" (or ("gnus" (or
(mode . message-mode) (mode . message-mode)
(mode . bbdb-mode) (mode . bbdb-mode)
@ -299,6 +336,9 @@
(autoload 'php-mode "php-mode.el" "Php mode." t) ;; ELPA (autoload 'php-mode "php-mode.el" "Php mode." t) ;; ELPA
(setq auto-mode-alist (append '(("/*.\.php[345]?$" . php-mode)) auto-mode-alist)) (setq auto-mode-alist (append '(("/*.\.php[345]?$" . php-mode)) auto-mode-alist))
;; Setup sql-mode (use mysql instead of ansi)
(setq sql-product 'mysql)
;; Setup zencoding-mode ;; Setup zencoding-mode
(require 'emmet-mode) (require 'emmet-mode)
@ -312,7 +352,7 @@
(add-hook 'emmet-mode-hook (lambda () (setq emmet-indentation 2))) ;; indent 2 spaces. (add-hook 'emmet-mode-hook (lambda () (setq emmet-indentation 2))) ;; indent 2 spaces.
;; Setup mmm-mode for multiple mode regions in the same buffer ;; Setup mmm-mode for multiple mode regions in the same buffer
;;(require 'mmm-mode) (require 'mmm-mode)
;;(setq mmm-global-mode 'maybe) ;;(setq mmm-global-mode 'maybe)
;; Set default lisp program ;; Set default lisp program
@ -363,6 +403,21 @@
;; (aput 'slime-lisp-implementations 'clojure ;; (aput 'slime-lisp-implementations 'clojure
;; (list (swank-clojure-cmd) :init 'swank-clojure-init)))) ;; (list (swank-clojure-cmd) :init 'swank-clojure-init))))
;; Setup Auctex
(load "auctex.el" nil t t)
(setq TeX-auto-save t)
(setq TeX-parse-self t)
(setq-default TeX-master nil)
(add-hook 'LaTeX-mode-hook 'visual-line-mode)
(add-hook 'LaTeX-mode-hook 'LaTeX-math-mode)
(add-hook 'LaTeX-mode-hook 'turn-on-reftex)
(setq reftex-plug-into-AUCTeX t)
(require 'tex)
(TeX-global-PDF-mode t)
;; Setup emacs-org-mode ;; Setup emacs-org-mode
(add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode)) (add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode))
(add-hook 'org-mode-hook 'turn-on-font-lock) ; not needed when global-font-lock-mode is on (add-hook 'org-mode-hook 'turn-on-font-lock) ; not needed when global-font-lock-mode is on
@ -452,29 +507,49 @@
(eval-after-load "auto-complete" (eval-after-load "auto-complete"
'(add-to-list 'ac-modes 'geiser-repl-mode)) '(add-to-list 'ac-modes 'geiser-repl-mode))
;; Make struct stand out in scheme-mode for racket
(defun racket-faces ()
(font-lock-add-keywords nil
'(("(struct \\(\\sw+\\)" 1 font-lock-function-name-face)
("(\\(struct\\)" 1 font-lock-keyword-face)
("(\\(λ\\)" 1 font-lock-keyword-face))))
(add-hook 'scheme-mode-hook 'racket-faces)
(add-hook 'geiser-repl-mode-hook 'racket-faces)
;; Setup scribble mode (custom .el from ~/.emacs.d/site-lisp-extra)
;; See: http://www.neilvandyke.org/scribble-emacs/
(require 'scribble)
;; Setup quack ;; Setup quack
(require 'quack) ;; ELPA (require 'quack) ;; ELPA
;; Setup paredit ;; Setup paredit
(require 'paredit) ;; ELPA (require 'paredit) ;; ELPA
(defvar lispy-langs-hooks '(lisp-mode-hook lisp-interaction-mode-hook emacs-lisp-mode-hook scheme-mode-hook c-mode-hook c++-mode-hook python-mode-hook)) (defvar lispy-langs-hooks '(lisp-mode-hook lisp-interaction-mode-hook emacs-lisp-mode-hook scheme-mode-hook c-mode-hook c++-mode-hook python-mode-hook geiser-repl-mode-hook))
;; Apply paredit-mode to modes listed in lispy-langs-hooks ;; Apply paredit-mode to modes listed in lispy-langs-hooks
(activate-mode-with-hooks (lambda () (paredit-mode 1)) lispy-langs-hooks) (activate-mode-with-hooks (lambda () (paredit-mode 1)) lispy-langs-hooks)
;; Highlight sexp's in lispy languages
(activate-mode-with-hooks (lambda () (highlight-sexp-mode)) lispy-langs-hooks)
;; Paredit binds to C-j globally and thus disables the binding to ;; Paredit binds to C-j globally and thus disables the binding to
;; eval-print-last-sexp in emacs-lisp-mode (e.g *scratch*, etc..) ;; eval-print-last-sexp in emacs-lisp-mode (e.g *scratch*, etc..)
(add-hook 'emacs-lisp-mode-hook (add-hook 'emacs-lisp-mode-hook
'(lambda () '(lambda ()
(define-key emacs-lisp-mode-map "\C-xj" 'eval-print-last-sexp))) (define-key emacs-lisp-mode-map "\C-xj" 'eval-print-last-sexp)))
;; Highlight paren's in given modes [to apply globally do (show-paren-mode 1)] ;; Match paren's in given modes [to apply globally do (show-paren-mode 1)]
(activate-mode-with-hooks (lambda () (show-paren-mode)) lispy-langs-hooks) (activate-mode-with-hooks (lambda () (show-paren-mode)) lispy-langs-hooks)
;; Setup rainbow-delimiters *BROKEN* ;; Highlight paren's near point
(require 'highlight-parentheses)
(activate-mode-with-hooks (lambda () (highlight-parentheses-mode)) lispy-langs-hooks)
;; Setup rainbow-delimiters
(require 'rainbow-delimiters) ;; ELPA (require 'rainbow-delimiters) ;; ELPA
(add-hook 'prog-mode-hook 'rainbow-delimiters-mode) (global-rainbow-delimiters-mode)
;;(activate-mode-with-hooks (lambda () (with-current-buffer buf (rainbow-delimiters-mode))) lispy-langs-hooks)
;; Setup rainbow-mode ;; ELPA ;; Setup rainbow-mode ;; ELPA
(require 'rainbow-mode) (require 'rainbow-mode)
@ -490,7 +565,7 @@
(if (member 'paredit-mode active-minor-modes) (paredit-mode -1) (paredit-mode 1)))) (if (member 'paredit-mode active-minor-modes) (paredit-mode -1) (paredit-mode 1))))
(setq geiser-repl-use-other-window nil) (setq geiser-repl-use-other-window nil)
(setq geiser-active-implementations '(racket)) (setq geiser-active-implementations '(racket guile))
;; setup pastebin.el for use with pastebin.com *BROKEN* ;; setup pastebin.el for use with pastebin.com *BROKEN*
;(require 'pastebin) ;; ELPA ;(require 'pastebin) ;; ELPA
@ -518,6 +593,9 @@
;; Setup isearch+ ;; Setup isearch+
(require 'isearch+) (require 'isearch+)
;; Setup bookmark+
(require 'bookmark+)
;; Setup ace-jump-mode ;; Setup ace-jump-mode
(autoload (autoload
'ace-jump-mode 'ace-jump-mode
@ -549,7 +627,8 @@
;; Setup yasnippet-mode (not yasnippet-bundle) ;; Setup yasnippet-mode (not yasnippet-bundle)
(require 'yasnippet) ;; ELPA (require 'yasnippet) ;; ELPA
(yas/load-directory "~/.emacs.d/elpa/yasnippet-20140106.1009") (yas-load-directory "~/.emacs.d/elpa/yasnippet-20140821.38")
(yas-load-directory "~/.emacs.d/snippets")
(yas-global-mode 1) (yas-global-mode 1)
;; Enable flyspell-mode ;; Enable flyspell-mode
@ -563,12 +642,15 @@
(setq auto-insert-directory "~/.emacs.d/templates/") ;;; Or use custom, *NOTE* Trailing slash important (setq auto-insert-directory "~/.emacs.d/templates/") ;;; Or use custom, *NOTE* Trailing slash important
(setq auto-insert-query nil) ;;; If you don't want to be prompted before insertion (setq auto-insert-query nil) ;;; If you don't want to be prompted before insertion
(setq autoinsert-tpl-author "Collin J. Doering")
(setq autoinsert-tpl-email "collin.doering@rekahsoft.ca")
;; auto-insert options template and auto-completion ;; auto-insert options template and auto-completion
(add-hook 'find-file-hooks 'auto-insert) (add-hook 'find-file-hooks 'auto-insert)
(setq auto-insert-directory (concat (getenv "HOME") "/.emacs.d/templates/")) (setq auto-insert-directory (concat (getenv "HOME") "/.emacs.d/templates/"))
(setq auto-insert-alist (setq auto-insert-alist
'(("\\.c$" . ["c-template.c" auto-update-generic-template]) '(("\\.c$" . ["c-template.c" auto-update-generic-template])
("\\.cc\\|cpp$" . ["cpp-template.c" auto-update-generic-template]) ("\\.cc\\|cpp$" . ["cpp-template.cc" auto-update-generic-template])
("\\.php$" . ["php-template.php" auto-update-generic-template]) ("\\.php$" . ["php-template.php" auto-update-generic-template])
("\\.rb$" . ["ruby-template.rb" auto-update-generic-template]) ("\\.rb$" . ["ruby-template.rb" auto-update-generic-template])
("\\.lua$" . ["lua-template.lua" auto-update-generic-template]) ("\\.lua$" . ["lua-template.lua" auto-update-generic-template])
@ -592,10 +674,14 @@
("\\.sass$" . ["sass-template.sass" auto-update-generic-template]) ("\\.sass$" . ["sass-template.sass" auto-update-generic-template])
("\\.haml$" . ["haml-template.haml" auto-update-generic-template]) ("\\.haml$" . ["haml-template.haml" auto-update-generic-template])
("\\.markdown$" . ["markdown-template.markdown" auto-update-generic-template]) ("\\.markdown$" . ["markdown-template.markdown" auto-update-generic-template])
("\\.latex$" . ["latex-template.latex" auto-update-generic-template]))) ("\\.tex$" . ["latex-template.tex" auto-update-generic-template])))
(setq auto-insert 'other) (setq auto-insert 'other)
;; TODO: remove interactive-ness from auto-update-generic-template as it's not needed
;; and there only as a workaround. Python and PHP templates are not filled for
;; some unknown reason.
(defun auto-update-generic-template () (defun auto-update-generic-template ()
(interactive)
(save-excursion (save-excursion
;; Replace @!@FILENAME@!@ with file name sans suffix ;; Replace @!@FILENAME@!@ with file name sans suffix
(while (search-forward "@!@FILENAME@!@" nil t) (while (search-forward "@!@FILENAME@!@" nil t)
@ -620,7 +706,21 @@
(while (search-forward "@!@YEAR@!@" nil t) (while (search-forward "@!@YEAR@!@" nil t)
(save-restriction (save-restriction
(narrow-to-region (match-beginning 0) (match-end 0)) (narrow-to-region (match-beginning 0) (match-end 0))
(replace-match (format-time-string "%Y" (current-time))))))) (replace-match (format-time-string "%Y" (current-time))))))
(save-excursion
;; Replace @!@AUTHOR@!@ with the current year
(while (search-forward "@!@AUTHOR@!@" nil t)
(save-restriction
(narrow-to-region (match-beginning 0) (match-end 0))
(replace-match "")
(insert-author))))
(save-excursion
;; Replace @!@EMAIL@!@ with the current year
(while (search-forward "@!@EMAIL@!@" nil t)
(save-restriction
(narrow-to-region (match-beginning 0) (match-end 0))
(replace-match "")
(insert-author-email)))))
;; Insert current date at cursor in the currently active buffer ;; Insert current date at cursor in the currently active buffer
(defun insert-date () (defun insert-date ()
@ -628,6 +728,16 @@
(interactive) (interactive)
(insert (format-time-string "%b %e, %Y" (current-time)))) (insert (format-time-string "%b %e, %Y" (current-time))))
(defun insert-author ()
"Insert author name at point"
(interactive)
(insert autoinsert-tpl-author))
(defun insert-author-email ()
"Insert author email at point"
(interactive)
(insert autoinsert-tpl-email))
;; (defun open-scratch-buffer () ;; (defun open-scratch-buffer ()
;; "Opens the scratch buffer; if none exists creates one." ;; "Opens the scratch buffer; if none exists creates one."
;; (interactive) ;; (interactive)
@ -793,29 +903,181 @@ consisting of lists of buffers opened by each respective FP argument."
;; ;; Synchronize el-get ;; ;; Synchronize el-get
;; (el-get 'sync) ;; (el-get 'sync)
;; Setup email using mu4e (offlineimap in the background) and smtpmail
(require 'mu4e)
(require 'smtpmail)
(setq mail-user-agent 'mu4e-user-agent
mu4e-get-mail-command "mbsync -a"
mu4e-update-interval 300
mu4e-user-mail-address-list (list "collin.doering@gmail.com" "rekahsoft@gmail.com")
message-kill-buffer-on-exit t
mu4e-use-fancy-chars t
mu4e-sent-messages-behavior 'delete
mu4e-confirm-quit nil
mu4e-headers-date-format "%d/%b/%Y %H:%M" ; date format
message-signature "Collin J. Doering\n\nhttp://rekahsoft.ca\nhttp://blog.rekahsoft.ca\n"
mu4e-compose-signature message-signature
message-signature-insert-empty-line t
mu4e-html2text-command "pandoc -f html -t asciidoc"
mu4e-view-show-images t
mu4e-view-image-max-width 800
;; Default email for smtp and mu4e
user-mail-address "collin.doering@gmail.com"
;; Setup mu4e default sent and draft folders
mu4e-sent-folder "/collin.doering-gmail/[Gmail].Sent"
mu4e-drafts-folder "/collin.doering-gmail/[Gmail].Drafts"
;; Set location of maildir
mu4e-maildir "~/.mail"
;; Setup smtp defaults
user-full-name "Collin J. Doering"
smtpmail-smtp-server "smtp.gmail.com"
smtpmail-smtp-service 587
smtpmail-auth-credentials "~/.authinfo.gpg"
smtpmail-stream-type 'starttls
smtpmail-debug-info t
message-send-mail-function 'smtpmail-send-it)
;; Override default mu4e-bookmarks with custom ones
(setq mu4e-bookmarks
'(("flag:unread AND NOT flag:trashed AND NOT maildir:/collin.doering-gmail/[Gmail].Spam AND NOT maildir:/rekahsoft-gmail/[Gmail].Spam" "Unread messages" ?u)
("date:today..now AND NOT maildir:/collin.doering-gmail/[Gmail].Spam AND NOT maildir:/rekahsoft-gmail/[Gmail].Spam" "Today's messages" ?t)
("date:7d..now AND NOT maildir:/collin.doering-gmail/[Gmail].Spam AND NOT maildir:/rekahsoft-gmail/[Gmail].Spam" "Last 7 days" ?w)
("mime:image/*" "Messages with images" ?p)
;; For collin.doering-gmail maildir
("flag:unread AND maildir:/collin.doering-gmail/INBOX AND NOT flag:trashed AND NOT maildir:/collin.doering-gmail/[Gmail].Spam" "Unread messages to collin.doering-gmail" ?z)
("date:today..now AND maildir:/collin.doering-gmail/INBOX AND NOT maildir:/collin.doering-gmail/[Gmail].Spam" "Today's messages to collin.doering-gmail" ?x)
("date:7d..now AND maildir:/collin.doering-gmail/INBOX AND NOT maildir:/collin.doering-gmail/[Gmail].Spam" "Last 7 days (collin.doering-gmail)" ?c)
("mime:image/* AND maildir:/collin.doering-gmail/INBOX" "Messages with images to collin.doering-gmail" ?v)
;; For rekahsoft-gmail maildir
("flag:unread AND maildir:/rekahsoft-gmail/INBOX AND NOT flag:trashed AND NOT maildir:/rekahsoft-gmail/[Gmail].Spam" "Unread messages to rekahsoft-gmail" ?m)
("date:today..now AND maildir:/rekahsoft-gmail/INBOX AND NOT maildir:/rekahsoft-gmail/[Gmail].Spam" "Today's messages to rekahsoft-gmail" ?,)
("date:7d..now AND maildir:/rekahsoft-gmail/INBOX AND NOT maildir:/rekahsoft-gmail/[Gmail].Spam" "Last 7 days (rekahsoft-gmail)" ?.)
("mime:image/* AND maildir:/rekahsoft-gmail/INBOX" "Messages with images to rekahsoft-gmail" ?/)))
;; TODO: consolidate my-mu4e-account-alist and smtp-accounts
(defvar my-mu4e-account-alist
'(("collin.doering-gmail"
(mu4e-sent-folder "/collin.doering-gmail/[Gmail].Sent")
(mu4e-drafts-folder "/collin.doering-gmail/[Gmail].Drafts")
(user-mail-address "collin.doering@gmail.com"))
("rekahsoft-gmail"
(mu4e-sent-folder "/rekahsoft-gmail/[Gmail].Sent")
(mu4e-drafts-folder "/rekahsoft-gmail/[Gmail].Drafts")
(user-mail-address "rekahsoft@gmail.com"))))
(defun my-mu4e-set-account ()
"Set the account for composing a message."
(let* ((account
(if mu4e-compose-parent-message
(let ((maildir (mu4e-message-field mu4e-compose-parent-message :maildir)))
(string-match "/\\(.*?\\)/" maildir)
(match-string 1 maildir))
(completing-read (format "Compose with account: (%s) "
(mapconcat #'(lambda (var) (car var)) my-mu4e-account-alist "/"))
(mapcar #'(lambda (var) (car var)) my-mu4e-account-alist)
nil t nil nil (caar my-mu4e-account-alist))))
(account-vars (cdr (assoc account my-mu4e-account-alist))))
(if account-vars
(mapc #'(lambda (var)
(set (car var) (cadr var)))
account-vars)
(error "No email account found"))))
(add-hook 'mu4e-compose-pre-hook 'my-mu4e-set-account)
;; Attach files using dired using 'C-c RET C-a'
;; Thanks to: http://www.djcbsoftware.nl/code/mu/mu4e/Attaching-files-with-dired.html#Attaching-files-with-dired
(require 'gnus-dired)
;; make the `gnus-dired-mail-buffers' function also work on
;; message-mode derived modes, such as mu4e-compose-mode
(defun gnus-dired-mail-buffers ()
"Return a list of active message buffers."
(let (buffers)
(save-current-buffer
(dolist (buffer (buffer-list t))
(set-buffer buffer)
(when (and (derived-mode-p 'message-mode)
(null message-sent-message-via))
(push (buffer-name buffer) buffers))))
(nreverse buffers)))
(setq gnus-dired-mail-mode 'mu4e-user-agent)
(add-hook 'dired-mode-hook 'turn-on-gnus-dired-mode)
;; Setup mu4e-maildirs-extension
(require 'mu4e-maildirs-extension)
(mu4e-maildirs-extension)
(setq smtp-accounts
'(("collin.doering@gmail.com" "Collin J. Doering" "smtp.gmail.com")
("rekahsoft@gmail.com" "rekahsoft" "smtp.gmail.com")))
(defun my-change-smtp ()
(save-excursion
(loop with from = (save-restriction
(message-narrow-to-headers)
(message-fetch-field "from"))
for (addr fname server) in smtp-accounts
when (string-match addr from)
do (setq user-mail-address addr
user-full-name fname
smtpmail-smtp-server server
smtpmail-smtp-user addr))))
(defadvice smtpmail-via-smtp
(before change-smtp-by-message-from-field (recipient buffer &optional ask) activate)
(with-current-buffer buffer (my-change-smtp)))
(ad-activate 'smtpmail-via-smtp)
;; Set environment variables set by gpg-agent --daemon in ~/.gpg-agent-info
;; TODO: perhaps better error handling if ~/.gpg-agent-info doesn't exist
(mapc (lambda (x) (setenv (car x) (cadr x)))
(with-temp-buffer
(insert-file-contents "~/.gpg-agent-info")
(mapcar (lambda (x) (split-string x "=" t)) (split-string (buffer-string) "\n" t))))
(custom-set-variables (custom-set-variables
;; custom-set-variables was added by Custom. ;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful. ;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance. ;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right. ;; If there is more than one, they won't work right.
'(TeX-command-list (quote (("TeX" "%(PDF)%(tex) %`%S%(PDFout)%(mode)%' %t" TeX-run-TeX nil (plain-tex-mode texinfo-mode ams-tex-mode) :help "Run plain TeX") ("LaTeX" "%`%l%(mode)%' %t" TeX-run-TeX nil (latex-mode doctex-mode) :help "Run LaTeX") ("Makeinfo" "makeinfo %t" TeX-run-compile nil (texinfo-mode) :help "Run Makeinfo with Info output") ("Makeinfo HTML" "makeinfo --html %t" TeX-run-compile nil (texinfo-mode) :help "Run Makeinfo with HTML output") ("AmSTeX" "%(PDF)amstex %`%S%(PDFout)%(mode)%' %t" TeX-run-TeX nil (ams-tex-mode) :help "Run AMSTeX") ("ConTeXt" "texexec --once --texutil %(execopts)%t" TeX-run-TeX nil (context-mode) :help "Run ConTeXt once") ("ConTeXt Full" "texexec %(execopts)%t" TeX-run-TeX nil (context-mode) :help "Run ConTeXt until completion") ("BibTeX" "bibtex %s" TeX-run-BibTeX nil t :help "Run BibTeX") ("Biber" "biber %s" TeX-run-Biber nil t :help "Run Biber") ("View" "zathura %s.pdf" TeX-run-discard-or-function t t :help "Run Viewer") ("Print" "%p" TeX-run-command t t :help "Print the file") ("Queue" "%q" TeX-run-background nil t :help "View the printer queue" :visible TeX-queue-command) ("File" "%(o?)dvips %d -o %f " TeX-run-command t t :help "Generate PostScript file") ("Index" "makeindex %s" TeX-run-command nil t :help "Create index file") ("Check" "lacheck %s" TeX-run-compile nil (latex-mode) :help "Check LaTeX file for correctness") ("Spell" "(TeX-ispell-document \"\")" TeX-run-function nil t :help "Spell-check the document") ("Clean" "TeX-clean" TeX-run-function nil t :help "Delete generated intermediate files") ("Clean All" "(TeX-clean t)" TeX-run-function nil t :help "Delete generated intermediate and output files") ("Other" "" TeX-run-command t t :help "Run an arbitrary command"))))
'(bmkp-last-as-first-bookmark-file "~/.emacs.d/bookmarks")
'(coffee-tab-width 2) '(coffee-tab-width 2)
'(custom-safe-themes (quote ("fc5fcb6f1f1c1bc01305694c59a1a861b008c534cae8d0e48e4d5e81ad718bc6" "b5aaedbcd4d81925c8b2bc21dbed6d0a5a6854b6ad745e948efd55e42b48bd04" "8aebf25556399b58091e533e455dd50a6a9cba958cc4ebb0aab175863c25b9a4" "36a309985a0f9ed1a0c3a69625802f87dee940767c9e200b89cdebdb737e5b29" "dc8693659115ea453f849f47509b903da3801b5f1521a73fa31556a9a3558517" default))) '(confirm-kill-emacs (quote y-or-n-p))
'(custom-safe-themes (quote ("96b54f35e473769a388f12984d735092f9163c63aa6724ee49176d865c46071b" "fc5fcb6f1f1c1bc01305694c59a1a861b008c534cae8d0e48e4d5e81ad718bc6" "b5aaedbcd4d81925c8b2bc21dbed6d0a5a6854b6ad745e948efd55e42b48bd04" "8aebf25556399b58091e533e455dd50a6a9cba958cc4ebb0aab175863c25b9a4" "36a309985a0f9ed1a0c3a69625802f87dee940767c9e200b89cdebdb737e5b29" "dc8693659115ea453f849f47509b903da3801b5f1521a73fa31556a9a3558517" default)))
'(fill-column 95) '(fill-column 95)
'(highlight-current-line-globally t nil (highlight-current-line)) '(geiser-default-implementation (quote racket))
'(highlight-current-line-ignore-regexp "Faces\\|Colors\\| \\*Mini\\|\\**\\*") '(geiser-racket-collects (quote ("/usr/share/racket/collects")))
'(hl-sexp-background-color "#19202B")
'(ido-enable-flex-matching t)
'(magit-commit-signoff t t) '(magit-commit-signoff t t)
'(org-agenda-files (quote ("~/.org/tech/notes.org" "~/.org/todo/rekahsoft-mini-todo.org" "~/.org/todo/rekahsoft-todo.org" "~/.org/todo/general.org" "~/.org/todo/work.org"))) '(org-agenda-files (quote ("~/.org/tech/notes.org" "~/.org/todo/rekahsoft-mini-todo.org" "~/.org/todo/rekahsoft-todo.org" "~/.org/todo/general.org" "~/.org/todo/work.org")))
'(quack-default-program "racket") '(quack-default-program "racket")
'(quack-fontify-style (quote plt)) '(quack-fontify-style (quote plt))
'(quack-programs (quote ("mzscheme" "bigloo" "csi" "csi -hygienic" "gosh" "gracket" "gsi" "gsi ~~/syntax-case.scm -" "guile" "kawa" "mit-scheme" "racket" "racket -il typed/racket" "rs" "scheme" "scheme48" "scsh" "sisc" "stklos" "sxi"))) '(quack-programs (quote ("mzscheme" "bigloo" "csi" "csi -hygienic" "gosh" "gracket" "gsi" "gsi ~~/syntax-case.scm -" "guile" "kawa" "mit-scheme" "racket" "racket -il typed/racket" "rs" "scheme" "scheme48" "scsh" "sisc" "stklos" "sxi")))
'(quack-remap-find-file-bindings-p nil)
'(scroll-bar-mode nil) '(scroll-bar-mode nil)
'(send-mail-function (quote smtpmail-send-it)) '(send-mail-function (quote smtpmail-send-it))
'(show-paren-mode t) '(show-paren-mode t)
'(w3m-content-type-alist (quote (("text/plain" "\\.\\(?:txt\\|tex\\|el\\)\\'" nil nil) ("text/html" "\\.s?html?\\'" ("conkeror" file) nil) ("text/sgml" "\\.sgml?\\'" nil "text/plain") ("text/xml" "\\.xml\\'" nil "text/plain") ("image/jpeg" "\\.jpe?g\\'" ("/usr/bin/display" file) nil) ("image/png" "\\.png\\'" ("/usr/bin/display" file) nil) ("image/gif" "\\.gif\\'" ("/usr/bin/display" file) nil) ("image/tiff" "\\.tif?f\\'" ("/usr/bin/display" file) nil) ("image/x-xwd" "\\.xwd\\'" ("/usr/bin/display" file) nil) ("image/x-xbm" "\\.xbm\\'" ("/usr/bin/display" file) nil) ("image/x-xpm" "\\.xpm\\'" ("/usr/bin/display" file) nil) ("image/x-bmp" "\\.bmp\\'" ("/usr/bin/display" file) nil) ("video/mpeg" "\\.mpe?g\\'" nil nil) ("video/quicktime" "\\.mov\\'" nil nil) ("application/dvi" "\\.dvi\\'" ("xdvi" file) nil) ("application/postscript" "\\.e?ps\\'" ("gs" file) nil) ("application/pdf" "\\.pdf\\'" nil nil) ("application/x-pdf" "\\.pdf\\'" nil nil) ("application/xml" "\\.xml\\'" nil w3m-detect-xml-type) ("application/rdf+xml" "\\.rdf\\'" nil "text/plain") ("application/rss+xml" "\\.rss\\'" nil "text/plain") ("application/xhtml+xml" nil nil "text/html"))) t)) '(w3m-content-type-alist (quote (("text/plain" "\\.\\(?:txt\\|tex\\|el\\)\\'" nil nil) ("text/html" "\\.s?html?\\'" ("conkeror" file) nil) ("text/sgml" "\\.sgml?\\'" nil "text/plain") ("text/xml" "\\.xml\\'" nil "text/plain") ("image/jpeg" "\\.jpe?g\\'" ("/usr/bin/display" file) nil) ("image/png" "\\.png\\'" ("/usr/bin/display" file) nil) ("image/gif" "\\.gif\\'" ("/usr/bin/display" file) nil) ("image/tiff" "\\.tif?f\\'" ("/usr/bin/display" file) nil) ("image/x-xwd" "\\.xwd\\'" ("/usr/bin/display" file) nil) ("image/x-xbm" "\\.xbm\\'" ("/usr/bin/display" file) nil) ("image/x-xpm" "\\.xpm\\'" ("/usr/bin/display" file) nil) ("image/x-bmp" "\\.bmp\\'" ("/usr/bin/display" file) nil) ("video/mpeg" "\\.mpe?g\\'" nil nil) ("video/quicktime" "\\.mov\\'" nil nil) ("application/dvi" "\\.dvi\\'" ("xdvi" file) nil) ("application/postscript" "\\.e?ps\\'" ("gs" file) nil) ("application/pdf" "\\.pdf\\'" nil nil) ("application/x-pdf" "\\.pdf\\'" nil nil) ("application/xml" "\\.xml\\'" nil w3m-detect-xml-type) ("application/rdf+xml" "\\.rdf\\'" nil "text/plain") ("application/rss+xml" "\\.rss\\'" nil "text/plain") ("application/xhtml+xml" nil nil "text/html"))) t)
'(yas-prompt-functions (quote (yas-ido-prompt))))
(custom-set-faces (custom-set-faces
;; custom-set-faces was added by Custom. ;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful. ;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance. ;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right. ;; If there is more than one, they won't work right.
'(highlight-current-line-face ((t (:background "gray10"))))) '(mode-line ((t (:background "grey20" :foreground "#00afff" :box 1 :slant normal :weight normal :height 111 :width normal :foundry "xos4" :family "Terminus"))))
'(mode-line-inactive ((t (:inherit mode-line :background "grey5" :foreground "grey80" :box 1 :slant normal :weight normal :height 111 :width normal :foundry "xos4" :family "Terminus"))))
'(show-paren-match ((t (:background "dark violet")))))
(put 'dired-find-alternate-file 'disabled nil) (put 'dired-find-alternate-file 'disabled nil)
(put 'downcase-region 'disabled nil)

10
.emacs.d/bookmarks Normal file
View File

@ -0,0 +1,10 @@
;;;; Emacs Bookmark Format Version 1 ;;;;
;;; This format is meant to be slightly human-readable;
;;; nevertheless, you probably don't want to edit it.
;;; -*- End Of Bookmark File Format Version Stamp -*-
(("org-capture-last-stored"
(filename . "~/.org/notes.org")
(front-context-string . "*** Go get the c")
(rear-context-string . "n emacs further\n")
(position . 151))
)

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,8 @@
;;; Compiled snippets and support files for `latex-mode'
;;; Snippet definitions:
;;;
(yas-define-snippets 'latex-mode
'(("begin" "\\begin{$1}\n\n $0\n\n\\end{$1}\n" "begin" nil nil nil nil nil nil)))
;;; Do not edit! File generated at Mon Jun 2 06:32:05 2014

View File

@ -0,0 +1,9 @@
# -*- mode: snippet -*-
# name: begin
# key: begin
# --
\begin{$1}
$0
\end{$1}

View File

@ -0,0 +1,8 @@
;;; Compiled snippets and support files for `markdown-mode'
;;; Snippet definitions:
;;;
(yas-define-snippets 'markdown-mode
'(("blog" "---\ntitle: ${1:title}\nauthor: `(insert-author)`\ndate: `(insert-date)`\ndescription: ${2:description}\nupdated: ${3:updated}\ntags: ${4:general}\n---\n\n$0" "blog" nil nil nil nil nil nil)))
;;; Do not edit! File generated at Mon Jun 2 06:32:05 2014

View File

@ -0,0 +1,14 @@
# -*- mode: snippet -*-
# name: blog
# key: blog
# --
---
title: ${1:title}
author: `(insert-author)`
date: `(insert-date)`
description: ${2:description}
updated: ${3:updated}
tags: ${4:general}
---
$0

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Xah Lee (XahLee.org)
# name: and
# key: and
# key: a
# --
(and $0)

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# contributor: Xah Lee (XahLee.org)
# name: append
# key: append
# --
(append $0)

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# contributor: Xah Lee (XahLee.org)
# name: apply
# key: apply
# --
(apply $0)

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# contributor: Xah Lee (XahLee.org)
# name: car
# key: car
# --
(car $0)

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# contributor: Xah Lee (XahLee.org)
# name: cdr
# key: cdr
# --
(cdr $0)

View File

@ -0,0 +1,9 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: class
# key: cls
# --
(class ${1:object%}
(super-new$2)
(init$3)
$0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: cond
# key: cond
# --
(cond [${1:expr} ${2:body}]
[$0])

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# contributor: Xah Lee (XahLee.org)
# name: cons
# key: cons
# --
(cons $0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: (define (head args) body ...+)
# key: def
# --
(define (${1:fun} ${2:args})
$0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: define/match
# key: defm
# --
(define/match (${1:fun} ${2:args})
[(${3:pat})${4: #:when ${5:expr}} ${6:body}]$0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: define/public
# key: defp
# --
(define/public (${1:fun} ${2:args})
$0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: (define-syntax id expr)
# key: defs
# --
(define-syntax ${1:id}
$0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: define-syntax-rule
# key: defsr
# --
(define-syntax-rule (${1:id} ${2:pat})
$0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: (define-syntax (head args) body ...+)
# key: defs
# --
(define-syntax (${1:id} ${2:stx})
$0)

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: (define id expr)
# key: def
# --
(define ${1:var} $0)

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: (lambda (args ...) body ...+)
# key: lambda
# --
(lambda (${1:args}) $0)

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: (lambda rest-id body ...+)
# key: lambda
# --
(lambda ${1:rest-id} $0)

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: (lambda (args ...+ . rest-id) body ...+)
# key: lambda
# --
(lambda (${1:args} . ${2:rst}) $0)

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# contributor: Xah Lee (XahLee.org)
# name: length
# key: length
# --
(length $0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: (let ([id val-expr] ...) body ...+)
# key: let
# --
(let ([$1]$2)
$0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: (let* ([id val-expr] ...) body ...+)
# key: let*
# --
(let* ([$1]$2)
$0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: (let proc-id ([id init-expr] ...) body ...+)
# key: let
# --
(let ${1:proc-id} ([$2]$3)
$0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: (letrec ([id val-expr] ...) body ...+)
# key: letr
# --
(letrec ([$1]$2)
$0)

View File

@ -0,0 +1,5 @@
#contributor: Xah Lee (XahLee.org)
#name: list
#key: list
# --
(list $0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: match
# key: mat
# --
(match ${1:val}
[${2:pat}${3: #:when ${4:expr}} ${5:body}]$0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Collin J. Doering
# name: match*
# key: mat*
# --
(match* (${1:vals})
[${2:pat}${3: #:when ${4:expr}} ${5:body}]$0)

View File

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# contributor: Xah Lee (XahLee.org)
# name: or
# key: or
# key: o
# --
(or $0)

View File

@ -0,0 +1,5 @@
# -*- mode: snippet -*-
# name: quote
# key: quo
# --
(quote $0)

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# contributor: Xah Lee (XahLee.org)
# name: repeat
# key: repeat
# --
(repeat $0)

View File

@ -1,5 +1,5 @@
/** /**
* (C) Copyright Collin Doering @!@YEAR@!@ * (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -17,7 +17,7 @@
/** /**
* File: @!@FILE@!@ * File: @!@FILE@!@
* Author: Collin J. Doering * Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
* Date: @!@DATE@!@ * Date: @!@DATE@!@
*/ */

View File

@ -1,4 +1,4 @@
;; (C) Copyright Collin Doering @!@YEAR@!@ ;; (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
;; ;;
;; This program is free software: you can redistribute it and/or modify ;; This program is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by ;; it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
;; along with this program. If not, see <http://www.gnu.org/licenses/>. ;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;; File: @!@FILE@!@ ;; File: @!@FILE@!@
;; Author: Collin J. Doering <rekahsoft@gmail.com> ;; Author: @!@AUTHOR@!@ <@!@EMAIL@!@
;; Date: @!@DATE@!@ ;; Date: @!@DATE@!@

View File

@ -1,5 +1,5 @@
/** /**
* (C) Copyright Collin Doering @!@YEAR@!@ * (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -17,7 +17,7 @@
/** /**
* File: @!@FILE@!@ * File: @!@FILE@!@
* Author: Collin J. Doering * Author: @!@AUTHOR@!@ <@!@EMAIL@!@
* Date: @!@DATE@!@ * Date: @!@DATE@!@
*/ */

View File

@ -1,4 +1,4 @@
;; (C) Copyright Collin Doering @!@YEAR@!@ ;; (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
;; ;;
;; This program is free software: you can redistribute it and/or modify ;; This program is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by ;; it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
;; along with this program. If not, see <http://www.gnu.org/licenses/>. ;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;; File: @!@FILE@!@ ;; File: @!@FILE@!@
;; Author: Collin J. Doering <rekahsoft@gmail.com> ;; Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
;; Date: @!@DATE@!@ ;; Date: @!@DATE@!@

View File

@ -1,4 +1,4 @@
% (C) Copyright Collin Doering @!@YEAR@!@ % (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
% %
% This program is free software: you can redistribute it and/or modify % This program is free software: you can redistribute it and/or modify
% it under the terms of the GNU General Public License as published by % it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
% along with this program. If not, see <http://www.gnu.org/licenses/>. % along with this program. If not, see <http://www.gnu.org/licenses/>.
% File: @!@FILE@!@ % File: @!@FILE@!@
% Author: Collin J. Doering <rekahsoft@gmail.com> % Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
% Date: @!@DATE@!@ % Date: @!@DATE@!@

View File

@ -1,4 +1,4 @@
// (C) Copyright Collin Doering @!@YEAR@!@ // (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
// //
// This program is free software: you can redistribute it and/or modify // This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by // it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
// along with this program. If not, see <http://www.gnu.org/licenses/>. // along with this program. If not, see <http://www.gnu.org/licenses/>.
// File: @!@FILE@!@ // File: @!@FILE@!@
// Author: Collin J. Doering <rekahsoft@gmail.com> // Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
// Date: @!@DATE@!@ // Date: @!@DATE@!@

View File

@ -1,4 +1,4 @@
-- (C) Copyright Collin Doering @!@YEAR@!@ -- (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
-- --
-- This program is free software: you can redistribute it and/or modify -- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by -- it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
-- along with this program. If not, see <http://www.gnu.org/licenses/>. -- along with this program. If not, see <http://www.gnu.org/licenses/>.
-- File: @!@FILE@!@ -- File: @!@FILE@!@
-- Author: Collin J. Doering <rekahsoft@gmail.com> -- Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
-- Date: @!@DATE@!@ -- Date: @!@DATE@!@

View File

@ -1,5 +1,5 @@
/** /**
* (C) Copyright Collin Doering @!@YEAR@!@ * (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -17,7 +17,7 @@
/** /**
* File: @!@FILE@!@ * File: @!@FILE@!@
* Author: Collin J. Doering * Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
* Date: @!@DATE@!@ * Date: @!@DATE@!@
*/ */

View File

@ -1,5 +1,5 @@
/** /**
* (C) Copyright Collin Doering @!@YEAR@!@ * (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -17,6 +17,6 @@
/** /**
* File: @!@FILE@!@ * File: @!@FILE@!@
* Author: Collin J. Doering * Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
* Date: @!@DATE@!@ * Date: @!@DATE@!@
*/ */

View File

@ -1,4 +1,4 @@
;; (C) Copyright Collin Doering @!@YEAR@!@ ;; (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
;; ;;
;; This program is free software: you can redistribute it and/or modify ;; This program is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by ;; it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
;; along with this program. If not, see <http://www.gnu.org/licenses/>. ;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;; File: @!@FILE@!@ ;; File: @!@FILE@!@
;; Author: Collin J. Doering <rekahsoft@gmail.com> ;; Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
;; Date: @!@DATE@!@ ;; Date: @!@DATE@!@

View File

@ -1,4 +1,4 @@
-- (C) Copyright Collin Doering @!@YEAR@!@ -- (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
-- --
-- This program is free software: you can redistribute it and/or modify -- This program is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by -- it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
-- along with this program. If not, see <http://www.gnu.org/licenses/>. -- along with this program. If not, see <http://www.gnu.org/licenses/>.
-- File: @!@FILE@!@ -- File: @!@FILE@!@
-- Author: Collin J. Doering <rekahsoft@gmail.com> -- Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
-- Date: @!@DATE@!@ -- Date: @!@DATE@!@

View File

@ -1,5 +1,5 @@
(* (*
* (C) Copyright Collin Doering @!@YEAR@!@ * (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -17,7 +17,7 @@
(* (*
* File: @!@FILE@!@ * File: @!@FILE@!@
* Author: Collin J. Doering * Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
* Date: @!@DATE@!@ * Date: @!@DATE@!@
*) *)

View File

@ -1,7 +1,7 @@
<?php <?php
/** /**
* (C) Copyright Collin Doering @!@YEAR@!@ * (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -19,7 +19,7 @@
/** /**
* File: @!@FILE@!@ * File: @!@FILE@!@
* Author: Collin J. Doering * Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
* Date: @!@DATE@!@ * Date: @!@DATE@!@
*/ */

View File

@ -1,4 +1,4 @@
# (C) Copyright Collin Doering @!@YEAR@!@ # (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
# #
# This program is free software: you can redistribute it and/or modify # This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
# File: @!@FILE@!@ # File: @!@FILE@!@
# Author: Collin J. Doering <rekahsoft@gmail.com> # Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
# Date: @!@DATE@!@ # Date: @!@DATE@!@

View File

@ -1,6 +1,6 @@
#lang racket #lang racket
;; (C) Copyright Collin Doering @!@YEAR@!@ ;; (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
;; ;;
;; This program is free software: you can redistribute it and/or modify ;; This program is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by ;; it under the terms of the GNU General Public License as published by
@ -16,6 +16,6 @@
;; along with this program. If not, see <http://www.gnu.org/licenses/>. ;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;; File: @!@FILE@!@ ;; File: @!@FILE@!@
;; Author: Collin J. Doering <rekahsoft@gmail.com> ;; Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
;; Date: @!@DATE@!@ ;; Date: @!@DATE@!@

View File

@ -1,4 +1,4 @@
# (C) Copyright Collin Doering @!@YEAR@!@ # (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
# #
# This program is free software: you can redistribute it and/or modify # This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
# File: @!@FILE@!@ # File: @!@FILE@!@
# Author: Collin J. Doering <rekahsoft@gmail.com> # Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
# Date: @!@DATE@!@ # Date: @!@DATE@!@

View File

@ -1,4 +1,4 @@
// (C) Copyright Collin Doering @!@YEAR@!@ // (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
// //
// This program is free software: you can redistribute it and/or modify // This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by // it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
// along with this program. If not, see <http://www.gnu.org/licenses/>. // along with this program. If not, see <http://www.gnu.org/licenses/>.
// File: @!@FILE@!@ // File: @!@FILE@!@
// Author: Collin J. Doering <rekahsoft@gmail.com> // Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
// Date: @!@DATE@!@ // Date: @!@DATE@!@

View File

@ -1,5 +1,5 @@
/** /**
* (C) Copyright Collin Doering @!@YEAR@!@ * (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -17,7 +17,7 @@
/** /**
* File: @!@FILE@!@ * File: @!@FILE@!@
* Author: Collin J. Doering * Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
* Date: @!@DATE@!@ * Date: @!@DATE@!@
*/ */

View File

@ -1,4 +1,4 @@
;; (C) Copyright Collin Doering @!@YEAR@!@ ;; (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
;; ;;
;; This program is free software: you can redistribute it and/or modify ;; This program is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by ;; it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
;; along with this program. If not, see <http://www.gnu.org/licenses/>. ;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;; File: @!@FILE@!@ ;; File: @!@FILE@!@
;; Author: Collin J. Doering <rekahsoft@gmail.com> ;; Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
;; Date: @!@DATE@!@ ;; Date: @!@DATE@!@

View File

@ -1,4 +1,4 @@
// (C) Copyright Collin Doering @!@YEAR@!@ // (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
// //
// This program is free software: you can redistribute it and/or modify // This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by // it under the terms of the GNU General Public License as published by
@ -14,6 +14,6 @@
// along with this program. If not, see <http://www.gnu.org/licenses/>. // along with this program. If not, see <http://www.gnu.org/licenses/>.
// File: @!@FILE@!@ // File: @!@FILE@!@
// Author: Collin J. Doering <rekahsoft@gmail.com> // Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
// Date: @!@DATE@!@ // Date: @!@DATE@!@

View File

@ -1,6 +1,6 @@
#!/bin/sh #!/bin/sh
# (C) Copyright Collin Doering @!@YEAR@!@ # (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
# #
# This program is free software: you can redistribute it and/or modify # This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by # it under the terms of the GNU General Public License as published by
@ -16,6 +16,6 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
# File: @!@FILE@!@ # File: @!@FILE@!@
# Author: Collin J. Doering <rekahsoft@gmail.com> # Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
# Date: @!@DATE@!@ # Date: @!@DATE@!@

View File

@ -1,5 +1,5 @@
(* (*
* (C) Copyright Collin Doering 2013 * (C) Copyright @!@AUTHOR@!@ @!@YEAR@!@
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -17,7 +17,7 @@
(* (*
* File: sml-template.ml * File: sml-template.ml
* Author: Collin J. Doering * Author: @!@AUTHOR@!@ <@!@EMAIL@!@>
* Date: Mar 5, 2013 * Date: @!@DATE@!@
*) *)

View File

@ -539,15 +539,15 @@ jarring angry fruit salad look to reduce eye fatigue.")
'(man-xref ((t (:underline t)))) '(man-xref ((t (:underline t))))
'(match ((t (:background "RoyalBlue3")))) '(match ((t (:background "RoyalBlue3"))))
'(minibuffer-prompt ((t (:foreground "cyan")))) '(minibuffer-prompt ((t (:foreground "cyan"))))
'(mode-line ((t (:background "grey75" :foreground "Blue" '(mode-line ((t (:background "grey20" :foreground "#00afff"
:box '(:line-width -1 :style released-button) :box '(:line-width -1 :style released-button)
:height 0.9)))) :height 0.9))))
'(mode-line-buffer-id ((t (:background "grey65" :foreground "red" '(mode-line-buffer-id ((t (:background "grey15" :foreground "OrangeRed"
:bold t :weight bold :height 0.9)))) :bold t :weight bold :height 0.9))))
'(mode-line-emphasis ((t (:bold t :weight bold)))) '(mode-line-emphasis ((t (:bold t :weight bold))))
'(mode-line-highlight ((t (:box (:line-width 2 :color "grey40" '(mode-line-highlight ((t (:box (:line-width 2 :color "grey40"
:style released-button :height 0.9))))) :style released-button :height 0.9)))))
'(mode-line-inactive ((t (:background "grey30" :foreground "grey80" '(mode-line-inactive ((t (:background "grey5" :foreground "grey80"
:box '(:line-width -1 :color "grey40") :box '(:line-width -1 :color "grey40")
:weight light :height 0.9)))) :weight light :height 0.9))))
'(mouse ((t (:background "OrangeRed")))) '(mouse ((t (:background "OrangeRed"))))