Mercurial > dotfiles
annotate .elisp/settings/40.modes.el @ 98:8aa70b521063
Jump-to-function trick with IDO.
| author | Augie Fackler <durin42@gmail.com> |
|---|---|
| date | Thu, 30 Apr 2009 13:48:22 -0500 |
| parents | 9052c3801744 |
| children | 0c1db2df2bf8 |
| rev | line source |
|---|---|
| 77 | 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 'rst-mode-hook '(lambda () | |
| 21 (make-variable-buffer-local 'af-cleanup-whitespace) | |
| 22 (set-variable 'af-cleanup-whitespace nil))) | |
| 23 | |
| 24 (autoload 'js2-mode "js2" nil t) | |
| 25 (add-to-list 'auto-mode-alist '("\\.js$" . js2-mode)) | |
| 26 (add-hook 'js2-mode-hook 'af-tab-fix) | |
| 27 | |
|
82
89f6d05cd7d5
Fix some ruby mode keybindings.
Augie Fackler <durin42@gmail.com>
parents:
79
diff
changeset
|
28 (add-hook 'ruby-mode-hook (lambda () |
|
89f6d05cd7d5
Fix some ruby mode keybindings.
Augie Fackler <durin42@gmail.com>
parents:
79
diff
changeset
|
29 (af-tab-fix) |
|
89f6d05cd7d5
Fix some ruby mode keybindings.
Augie Fackler <durin42@gmail.com>
parents:
79
diff
changeset
|
30 (local-set-key "\C-m" 'newline-and-indent))) |
|
89f6d05cd7d5
Fix some ruby mode keybindings.
Augie Fackler <durin42@gmail.com>
parents:
79
diff
changeset
|
31 |
| 77 | 32 (defun af-python-mode-hook () |
| 33 ; highlight tabs in Python | |
| 34 (make-variable-buffer-local 'font-lock-mode-hook) | |
| 35 (add-hook 'font-lock-mode-hook 'show-ws-highlight-tabs) | |
| 36 (make-variable-buffer-local 'python-indent) | |
| 37 (if (and buffer-file-name (string-match "melange" buffer-file-name)) | |
| 38 (set-variable 'python-indent 2)) | |
| 39 (af-tab-fix) | |
|
94
9052c3801744
First stab at some menu items for the nose stuff.
Augie Fackler <durin42@gmail.com>
parents:
86
diff
changeset
|
40 (easy-menu-add-item nil '("Python") ["Run All Tests" nosetests-all t] |
|
9052c3801744
First stab at some menu items for the nose stuff.
Augie Fackler <durin42@gmail.com>
parents:
86
diff
changeset
|
41 "Comment Out Region") |
|
9052c3801744
First stab at some menu items for the nose stuff.
Augie Fackler <durin42@gmail.com>
parents:
86
diff
changeset
|
42 (easy-menu-add-item nil '("Python") ["Run Module Tests" nosetests-module t] |
|
9052c3801744
First stab at some menu items for the nose stuff.
Augie Fackler <durin42@gmail.com>
parents:
86
diff
changeset
|
43 "Comment Out Region") |
|
9052c3801744
First stab at some menu items for the nose stuff.
Augie Fackler <durin42@gmail.com>
parents:
86
diff
changeset
|
44 (easy-menu-add-item nil '("Python") ["Run One Test" nosetests-one t] |
|
9052c3801744
First stab at some menu items for the nose stuff.
Augie Fackler <durin42@gmail.com>
parents:
86
diff
changeset
|
45 "Comment Out Region") |
|
9052c3801744
First stab at some menu items for the nose stuff.
Augie Fackler <durin42@gmail.com>
parents:
86
diff
changeset
|
46 (easy-menu-add-item nil '("Python") ["Debug One Test" nosetests-pdb-one t] |
|
9052c3801744
First stab at some menu items for the nose stuff.
Augie Fackler <durin42@gmail.com>
parents:
86
diff
changeset
|
47 "Comment Out Region") |
|
9052c3801744
First stab at some menu items for the nose stuff.
Augie Fackler <durin42@gmail.com>
parents:
86
diff
changeset
|
48 (easy-menu-add-item nil '("Python") ["-" nil t] "Comment Out Region") |
| 77 | 49 ) |
| 50 (add-hook 'python-mode-hook 'af-python-mode-hook) | |
| 51 | |
|
79
26f1ccac509c
Bind g to recompile in compilation-mode buffers.
Augie Fackler <durin42@gmail.com>
parents:
77
diff
changeset
|
52 (add-hook 'compilation-mode-hook '(lambda () (local-set-key "g" 'recompile))) |
|
26f1ccac509c
Bind g to recompile in compilation-mode buffers.
Augie Fackler <durin42@gmail.com>
parents:
77
diff
changeset
|
53 |
| 77 | 54 |
| 55 ; text-mode tries to use M-s for something other than my save shortcut. | |
| 56 ; That's evil. Stop it from doing that. | |
| 57 (add-hook 'text-mode-hook '(lambda () | |
| 58 (define-key text-mode-map "\M-s" | |
| 59 'save-buffer))) |
