src.nth.io/

summaryrefslogtreecommitdiff
path: root/init.el
diff options
context:
space:
mode:
authorLuke Hoersten <[email protected]>2010-12-12 10:43:21 -0600
committerLuke Hoersten <[email protected]>2010-12-12 10:43:21 -0600
commit1739e3513ea17252ef573f996e75b61d0be84d29 (patch)
tree7c7334171dffefc29e8826b8714987f38e9d7b62 /init.el
parent7fcedfbca3a05d0c83c5aa7c5dbcc308345bf5c8 (diff)
Reorganized a ton. Split into 3 main sections: General, Modes, and Requires.
Diffstat (limited to 'init.el')
-rw-r--r--init.el207
1 files changed, 113 insertions, 94 deletions
diff --git a/init.el b/init.el
index 64520e7..cadc557 100644
--- a/init.el
+++ b/init.el
@@ -1,68 +1,48 @@
;; ~/.emacs.d/init.el (~/.emacs)
;; Luke Hoersten <[email protected]>
-;; general
-(add-to-list 'load-path "~/.emacs.d") ; set default emacs load path
+;;;; General
+(add-to-list 'load-path "~/.emacs.d") ; set default emacs load path
(setq-default
- ediff-split-window-function 'split-window-horizontally ; diff horizontally
- x-select-enable-clipboard t ; paste from X buffer
- inhibit-splash-screen t ; disable splash screen
- truncate-lines t ; truncate, not wrap, lines
- indent-tabs-mode nil ; only uses spaces for indentation
- split-width-threshold 181) ; min width to split window horizontially
-
-(put 'set-goal-column 'disabled nil) ; enable goal column setting
-(put 'narrow-to-region 'disabled nil) ; enable hiding
+ ediff-split-window-function
+ 'split-window-horizontally ; diff horizontally
+ x-select-enable-clipboard t ; paste from X buffer
+ inhibit-splash-screen t ; disable splash screen
+ truncate-lines t ; truncate, not wrap, lines
+ indent-tabs-mode nil ; only uses spaces for indentation
+ split-width-threshold 181) ; min width to split window horizontially
+
+(put 'set-goal-column 'disabled nil) ; enable goal column setting
+(put 'narrow-to-region 'disabled nil) ; enable hiding
(put 'narrow-to-page 'disabled nil)
-(menu-bar-mode -1) ; remove menu bar
-(display-time-mode t) ; show clock
-(column-number-mode t) ; show column numbers
-(delete-selection-mode t) ; replace highlighted text
-(windmove-default-keybindings) ; move between windows with shift-arrow
-(ido-mode t) ; file/buffer selector
-(setq-default ido-enable-flex-matching t) ; fuzzy matching for ido mode
-(add-hook 'text-mode-hook 'flyspell-mode t) ; spellcheck text
-(add-hook 'text-mode-hook 'turn-on-auto-fill) ; autofill text
-
-;; whitespace
-(global-whitespace-mode t) ; show whitespace
-(add-hook 'before-save-hook 'whitespace-cleanup) ; cleanup whitespace on exit
-(setq-default
- whitespace-line-column 120 ; column width
- whitespace-style ; whitespace to highlight
- '(trailing lines-tail empty indentation
- space-before-tab space-after-tab))
-
-;; coding
-(which-func-mode t) ; show current function
-(show-paren-mode t) ; show matching paren
-(transient-mark-mode t) ; show highlighting
-(global-font-lock-mode t) ; syntax highlighting
-(setq-default compile-command "scons ") ; compile command
-(global-set-key (kbd "C-c c") 'compile) ; compile
-(global-set-key (kbd "C-c r") 'recompile) ; recompile
-(global-set-key (kbd "C-c C-c") ; comment
- 'comment-or-uncomment-region)
-
-;; line numbers
-(mapc
- (lambda (x)
- (add-hook x 'linum-mode))
- '(text-mode-hook
- c-mode-common-hook
- python-mode-hook
- haskell-mode-hook
- emacs-lisp-mode-hook))
-
-;; X stuff
+(menu-bar-mode -1) ; remove menu bar
+(display-time-mode t) ; show clock
+(column-number-mode t) ; show column numbers
+(delete-selection-mode t) ; replace highlighted text
+(windmove-default-keybindings) ; move between windows with shift-arrow
+(fset 'yes-or-no-p 'y-or-n-p) ; replace yes/no prompts
+
+;;; coding
+(which-func-mode t) ; show current function
+(show-paren-mode t) ; show matching paren
+(transient-mark-mode t) ; show highlighting
+(global-font-lock-mode t) ; syntax highlighting
+(setq-default compile-command "scons ") ; compile command
+(global-set-key (kbd "C-c c") 'compile) ; compile
+(global-set-key (kbd "C-c r") 'recompile) ; recompile
+(global-set-key
+ (kbd "C-c C-c")
+ 'comment-or-uncomment-region) ; toggle region comment
+
+;;; X stuff
(if window-system
(progn
- (tool-bar-mode -1) ; remove tool bar
- (scroll-bar-mode -1) ; remove scroll bar
- (visual-line-mode t) ; word wrap break on whitespace
- (global-hl-line-mode t)
+ (tool-bar-mode -1) ; remove tool bar
+ (scroll-bar-mode -1) ; remove scroll bar
+ (visual-line-mode t) ; word wrap break on whitespace
+ (global-hl-line-mode t) ; highlight current line
;; twilight theme
(require 'color-theme)
@@ -70,40 +50,53 @@
(color-theme-twilight)
))
-;; terminal
-(global-set-key (kbd "C-c s") 'eshell) ; start shell
-(add-hook 'eshell-mode-hook '(setenv "TERM" "emacs")) ; enable colors
+;;; terminal
+(global-set-key (kbd "C-c s") 'eshell) ; start shell
+(add-hook 'eshell-mode-hook '(lambda ()
+ (progn
+ (setenv "PATH" "~/.cabal/bin:$PATH") ; haskell cabal
+ (setenv "TERM" "emacs")))) ; enable colors
-;; OS specific configs
+;;; OS specific configs
(cond
((string-match "linux" (emacs-version)) (require 'linux))
((string-match "darwin" (emacs-version)) (require 'darwin))
)
-;;;;;;;;;;;;; includes & requires ;;;;;;;;;;;;;
-;; includes
-(require 'hoersten-align-with-spaces) ; use only spaces for alignment
-(require 'hoersten-pastebin-region) ; send selected text to pastebin
-(require 'hoersten-c-style) ; load c specific lisp
-(require 'vala-mode) ; vala programming language
+;;;; Mode-Specific
-;; nav mode
-(add-to-list 'load-path "~/.emacs.d/nav")
-(require 'nav)
+;;; linum-mode - line numbers
+(mapc
+ (lambda (x)
+ (add-hook x 'linum-mode))
+ '(text-mode-hook
+ c-mode-common-hook
+ python-mode-hook
+ haskell-mode-hook
+ emacs-lisp-mode-hook))
-;; unicode
-(require 'pretty-mode)
-(global-pretty-mode t)
+;;; text-mode
+(add-hook 'text-mode-hook 'flyspell-mode t) ; spellcheck text
+(add-hook 'text-mode-hook 'turn-on-auto-fill) ; autofill text
-;; snippets
-(add-to-list 'load-path "~/.emacs.d/yasnippet")
-(require 'yasnippet)
-(yas/initialize)
-(yas/load-directory "~/.emacs.d/yasnippet/snippets")
-(setq-default yas/prompt-functions '(yas/ido-prompt yas/dropdown-prompt)) ; use ido for multiple snippets
+;;; ido-mode
+(ido-mode t) ; file/buffer selector
+(setq-default
+ ido-enable-flex-matching t ; fuzzy matching for ido mode
+ ido-create-new-buffer 'always ; create new buffer without prompt
+ ido-everywhere t) ; use ido where possible
-;; python mode
+;;; whitespace-mode
+(global-whitespace-mode t) ; show whitespace
+(add-hook 'before-save-hook 'whitespace-cleanup) ; cleanup whitespace on exit
+(setq-default
+ whitespace-line-column 120 ; column width
+ whitespace-style ; whitespace to highlight
+ '(trailing lines-tail empty indentation
+ space-before-tab space-after-tab))
+
+;;; python-mode
(add-hook
'python-mode-hook
(lambda ()
@@ -112,7 +105,7 @@
python-indent 3
indent-tabs-mode t)))
-;; haskell mode
+;;; haskell-mode
(add-hook
'haskell-mode-hook
(lambda ()
@@ -120,24 +113,14 @@
(haskell-indent-mode t)
(capitalized-words-mode t)
(haskell-doc-mode t)
- (imenu-add-menubar-index t)
(setq
haskell-font-lock-symbols 'unicode
- haskell-indent-offset 3))
- t ;; append instead of prepend else haskell-mode overwrites these settings
+ haskell-indent-offset 4
+ whitespace-line-column 87))
+ t ; append instead of prepend else haskell-mode overwrites these settings
)
-;; zencoding html
-(require 'zencoding-mode)
-(add-hook 'sgml-mode-hook 'zencoding-mode) ; Auto-start on any markup modes
-
-;; unique buffer names with dirs
-(require 'uniquify)
-(setq
- uniquify-buffer-name-style 'post-forward
- uniquify-separator ":")
-
-;; org mode
+;;; org-mode
(add-hook
'org-mode-hook
(lambda ()
@@ -145,3 +128,39 @@
(local-set-key (kbd "M-S-p") 'org-move-subtree-up)
(local-set-key (kbd "M-n") 'org-move-item-down)
(local-set-key (kbd "M-S-n") 'org-move-subtree-down)))
+
+
+;;;; Requires
+
+(require 'hoersten-align-with-spaces) ; use only spaces for alignment
+(require 'hoersten-pastebin-region) ; send selected text to pastebin
+(require 'hoersten-c-style) ; load c specific lisp
+(require 'vala-mode) ; vala programming language
+
+;;; auto-complete-mode
+(add-to-list 'load-path "~/.emacs.d/auto-complete-mode/")
+(require 'auto-complete-config)
+(add-to-list 'ac-dictionary-directories "~/.emacs.d/auto-complete-mode/ac-dict")
+(ac-config-default)
+(setq ac-modes (append ac-modes '(haskell-mode)))
+
+;;; pretty-mode - unicode character replacement
+(require 'pretty-mode)
+(global-pretty-mode t)
+
+;;; yasnippets
+(add-to-list 'load-path "~/.emacs.d/yasnippet")
+(require 'yasnippet)
+(yas/initialize)
+(yas/load-directory "~/.emacs.d/yasnippet/snippets")
+(setq-default yas/prompt-functions '(yas/ido-prompt yas/dropdown-prompt)) ; use ido for multiple snippets
+
+;;; zencoding-mode - html
+(require 'zencoding-mode)
+(add-hook 'sgml-mode-hook 'zencoding-mode) ; Auto-start on any markup modes
+
+;;; unique buffer names with dirs
+(require 'uniquify)
+(setq
+ uniquify-buffer-name-style 'post-forward
+ uniquify-separator ":")