Mercurial > dotfiles
comparison .elisp/settings/40.modes.el @ 77:45d7441d0cf2
Modularize .emacs
author | Augie Fackler <durin42@gmail.com> |
---|---|
date | Thu, 09 Apr 2009 13:39:20 -0500 |
parents | |
children | 26f1ccac509c |
comparison
equal
deleted
inserted
replaced
76:2b2a667092fd | 77:45d7441d0cf2 |
---|---|
1 ; use tab for indent or complete | |
2 (defun indent-or-expand (arg) | |
3 "Either indent according to mode, or expand the word preceding | |
4 point." | |
5 (interactive "*P") | |
6 (if (and | |
7 (or (bobp) (= ?w (char-syntax (char-before)))) | |
8 (or (eobp) (not (= ?w (char-syntax (char-after)))))) | |
9 (dabbrev-expand arg) | |
10 (indent-according-to-mode))) | |
11 | |
12 (defun af-tab-fix () | |
13 (local-set-key [tab] 'indent-or-expand)) | |
14 | |
15 ;; add hooks for modes you want to use the tab completion for: | |
16 (set-variable 'af-cleanup-whitespace t) | |
17 (add-hook 'c-mode-hook 'af-tab-fix) | |
18 (add-hook 'sh-mode-hook 'af-tab-fix) | |
19 (add-hook 'emacs-lisp-mode-hook 'af-tab-fix) | |
20 (add-hook 'clojure-mode-hook 'af-tab-fix) | |
21 (add-hook 'rst-mode-hook '(lambda () | |
22 (make-variable-buffer-local 'af-cleanup-whitespace) | |
23 (set-variable 'af-cleanup-whitespace nil))) | |
24 | |
25 (autoload 'js2-mode "js2" nil t) | |
26 (add-to-list 'auto-mode-alist '("\\.js$" . js2-mode)) | |
27 (add-hook 'js2-mode-hook 'af-tab-fix) | |
28 | |
29 (defun af-python-mode-hook () | |
30 ; highlight tabs in Python | |
31 (make-variable-buffer-local 'font-lock-mode-hook) | |
32 (add-hook 'font-lock-mode-hook 'show-ws-highlight-tabs) | |
33 (make-variable-buffer-local 'python-indent) | |
34 (if (and buffer-file-name (string-match "melange" buffer-file-name)) | |
35 (set-variable 'python-indent 2)) | |
36 (af-tab-fix) | |
37 ) | |
38 (add-hook 'python-mode-hook 'af-python-mode-hook) | |
39 | |
40 | |
41 ; text-mode tries to use M-s for something other than my save shortcut. | |
42 ; That's evil. Stop it from doing that. | |
43 (add-hook 'text-mode-hook '(lambda () | |
44 (define-key text-mode-map "\M-s" | |
45 'save-buffer))) |