doomemacs/init.el

104 lines
3.8 KiB
EmacsLisp
Raw Normal View History

;;; Emacs for the jaded vimmer
2014-07-15 14:21:56 +08:00
;;
;; Author: Henrik Lissner <henrik@lissner>
;; URL: https://github.com/hlissner/emacs.d
;;
2014-12-11 04:54:36 +08:00
;;; Description:
;;
2014-09-21 04:54:04 +08:00
;; My emacs.d, which sets out to rustle emacs users' jimmies by making
;; emacs as vim-like as possible.
2014-07-16 15:28:06 +08:00
;;
2014-12-06 06:28:03 +08:00
;; Naming conventions:
;; * my--<defun-name> ; interal defuns, meant for use via elisp
;; * my-<defun-name> ; interactive command, can be used via M-x
;; * my.<defun-name> ; commands with buffer side-effects (for keybinds)
;; * my:<defun-name> ; defuns meant to be used from Ex mode
;; * *<defun/var-name> ; for altering the visual state
;;
;;; Code:
2014-12-13 04:26:34 +08:00
(defconst DEBUG-MODE nil)
2014-12-06 06:28:03 +08:00
(defconst my-dir user-emacs-directory)
2014-12-11 04:54:36 +08:00
(defconst my-core-dir (concat my-dir "core/"))
2014-12-13 04:26:34 +08:00
(defconst my-modules-dir (concat my-dir "init/"))
2015-05-08 15:05:55 +08:00
(defconst my-contrib-dir (concat my-dir "contrib/"))
2014-12-06 06:28:03 +08:00
(defconst my-themes-dir (concat my-dir "themes/"))
(defconst my-snippets-dir (concat my-dir "snippets/"))
(defconst my-tmp-dir (concat my-dir ".cache/"))
2014-08-30 10:37:25 +08:00
2015-01-26 15:15:27 +08:00
(defconst *dark-theme 'v0)
2014-12-06 06:28:03 +08:00
(defconst *light-theme 'github) ; wtb better light theme...
2015-04-23 08:48:28 +08:00
(defconst *fonts `(,(font-spec :family "Terminus (TTF)" :size 12 :antialias nil)
2015-04-28 11:25:50 +08:00
,(font-spec :family "Ubuntu Mono" :size 14 :antialias t)
2015-04-23 08:48:28 +08:00
,(font-spec :family "Inconsolata" :size 22 :antialias t)))
2014-07-15 14:21:56 +08:00
2014-12-11 04:54:36 +08:00
(add-to-list 'load-path my-core-dir)
(add-to-list 'load-path my-modules-dir)
2015-05-08 15:05:55 +08:00
(add-to-list 'load-path my-contrib-dir)
2015-01-10 10:47:51 +08:00
;; Add elisp dirs to load-path
2015-05-08 15:05:55 +08:00
(let ((default-directory my-contrib-dir))
2015-01-10 10:47:51 +08:00
(normal-top-level-add-subdirs-to-load-path))
2014-07-15 14:21:56 +08:00
2014-12-06 06:28:03 +08:00
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2015-04-23 08:48:28 +08:00
(require 'cask)
(cask-initialize)
2015-05-10 06:08:12 +08:00
(require 'use-package)
2015-01-10 10:47:51 +08:00
(mapc 'require
;; ls init/{init,my}* | xargs basename | sed -e 's/\..*$//'
'(core
2015-05-07 15:19:24 +08:00
core-ui ; aesthetics
core-evil ; evil-mode and its plugins
core-editor ; expand-region, rotate-text, smartparens
2015-01-10 10:47:51 +08:00
;; init-auto-complete
init-auto-insert ; for the lazy typis
init-company ; see above
2015-04-23 08:48:28 +08:00
init-dev ; general dev tools/settings
;; init-floobits ; when I'm feeling lonely
init-fly ; fly(check|spell)
init-git ; git-gutter + modes
init-ido ; a search engine for your car keys
2015-05-10 06:08:12 +08:00
init-helm ; a search engine for your life
2015-04-23 08:48:28 +08:00
init-project ; project tools - dired, perspective, neotree
2015-01-10 10:47:51 +08:00
init-cc ; C/C++/Obj-C madness
;; init-d ; D - It's C, but better!
;; init-cscope
init-csharp
init-lisp ; all things lisp; elisp, clojure
;; init-erlang
;; init-eshell
2015-05-01 04:43:44 +08:00
init-go
2015-01-10 10:47:51 +08:00
init-java ; the poster child for carpal tunnel syndome
init-js ; alert("not java, javascript!")
2015-05-10 06:08:12 +08:00
init-lua ; one-based indices? One-based indices.
2015-05-07 15:19:24 +08:00
;; init-org ; for fearless [organized] leader
2015-01-10 10:47:51 +08:00
init-php ; making php less painful to work with
init-python ; beautiful is better than ugly
init-regex ; /^[^\s](meaning)[^\n]*/
init-ruby ; <3
init-scss ; @include magic;
2015-01-26 15:15:27 +08:00
init-smalltalk ; nice weather we're having
2015-01-10 10:47:51 +08:00
init-sh ; #!/bin/bash_your_head_in
init-swift ; yay, emoji variables!
init-text ; I got nothing...
init-tmux
;; init-rust
2015-01-26 15:15:27 +08:00
;; init-vala
2015-01-10 10:47:51 +08:00
init-web
2015-05-06 17:39:29 +08:00
init-workgroups
2015-01-10 10:47:51 +08:00
init-yasnippet ; type for me
2015-03-16 03:41:25 +08:00
init-youtube ; tools for youtube vids
2014-09-21 04:54:04 +08:00
2015-05-07 15:19:24 +08:00
my-defuns
2015-01-10 10:47:51 +08:00
my-bindings
2015-05-07 15:19:24 +08:00
my-commands
2015-01-10 10:47:51 +08:00
my-settings
))
2014-12-06 06:28:03 +08:00
2014-09-21 04:54:04 +08:00
;; I've created a monster!