Mercurial > hg > config
annotate .emacs @ 309:6095d439d1f2
new stuff! realwhich
| author | Jeff Hammel <jhammel@mozilla.com> | 
|---|---|
| date | Thu, 16 May 2013 23:27:18 -0700 | 
| parents | a1c72313b3df | 
| children | a9d3f1210506 | 
| rev | line source | 
|---|---|
| 280 | 1 ;; emacs server (what a piece of crap) | 
| 
299
 
cc2f7d8307d0
maybe we have that server after all
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
297 
diff
changeset
 | 
2 (require 'server) | 
| 
 
cc2f7d8307d0
maybe we have that server after all
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
297 
diff
changeset
 | 
3 (or (server-running-p) | 
| 
 
cc2f7d8307d0
maybe we have that server after all
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
297 
diff
changeset
 | 
4 (server-start)) | 
| 297 | 5 | 
| 6 ;;;; bars | |
| 7 | |
| 8 ;; Turn off the status bar and on the mouse if we're not in a window system | |
| 9 (menu-bar-mode (if window-system 1 -1)) | |
| 10 | |
| 11 ;; no need for a tool bar | |
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
12 (if (boundp 'tool-bar-mode) (tool-bar-mode 0)) | 
| 297 | 13 | 
| 14 ;; ...or a startup message | |
| 309 | 15 ;; instead, it'd be nice to start with a list of recent files (recentf) | 
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
16 (setq inhibit-startup-message t) | 
| 297 | 17 | 
| 18 ;; no f-ing backup files | |
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
19 (setq make-backup-files nil) | 
| 297 | 20 | 
| 21 ;; show trailing whitespace | |
| 22 (setq-default show-trailing-whitespace t) | |
| 23 | |
| 300 | 24 ;;;; ??? no idea | 
| 297 | 25 | 
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
26 (put 'downcase-region 'disabled nil) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
27 (setq truncate-lines nil) | 
| 297 | 28 (setq truncate-partial-width-windows nil) | 
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
29 (setq use-file-dialog nil) | 
| 
75
 
89a64b0d6146
adding indentation for javascript
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
62 
diff
changeset
 | 
30 | 
| 280 | 31 ;; make directories when they don't exist | 
| 32 ;; from http://stackoverflow.com/questions/6830671/how-to-make-emacs-create-intermediate-dirs-when-saving-a-file | |
| 33 (add-hook 'before-save-hook | |
| 34 (lambda () | |
| 35 (when buffer-file-name | |
| 36 (let ((dir (file-name-directory buffer-file-name))) | |
| 37 (when (not (file-exists-p dir)) | |
| 38 (make-directory dir t)))))) | |
| 39 | |
| 297 | 40 ;;;; indentation | 
| 
75
 
89a64b0d6146
adding indentation for javascript
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
62 
diff
changeset
 | 
41 | 
| 
 
89a64b0d6146
adding indentation for javascript
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
62 
diff
changeset
 | 
42 ;; python indentation | 
| 
120
 
339805e00f03
set python spacing back to four, by popular demand
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
75 
diff
changeset
 | 
43 (setq python-indent 4) | 
| 
 
339805e00f03
set python spacing back to four, by popular demand
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
75 
diff
changeset
 | 
44 (setq-default py-indent-offset 4) | 
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
45 (setq python-guess-indent nil) | 
| 
75
 
89a64b0d6146
adding indentation for javascript
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
62 
diff
changeset
 | 
46 | 
| 
 
89a64b0d6146
adding indentation for javascript
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
62 
diff
changeset
 | 
47 ;; javascript indentation: http://www.brgeight.se/downloads/emacs/javascript.el | 
| 
 
89a64b0d6146
adding indentation for javascript
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
62 
diff
changeset
 | 
48 (setq javascript-indent-level 2) | 
| 148 | 49 (setq js-indent-level 2) | 
| 
75
 
89a64b0d6146
adding indentation for javascript
 
Jeff Hammel <jhammel@mozilla.com> 
parents: 
62 
diff
changeset
 | 
50 | 
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
51 (setq-default indent-tabs-mode nil) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
52 (defface extra-whitespace-face '((t (:background "pale green"))) "Used for tabs and such.") | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
53 | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
54 (autoload 'doctest-mode "doctest-mode" "doctest editing mode." t) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
55 | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
56 (transient-mark-mode 1) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
57 | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
58 (put 'upcase-region 'disabled nil) | 
| 297 | 59 | 
| 60 ;;;; line/col #s | |
| 309 | 61 ;;;; Show line and column numbers in the mode line | 
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
62 (line-number-mode 1) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
63 (column-number-mode 1) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
64 | 
| 309 | 65 | 
| 297 | 66 ;;;; modes | 
| 67 | |
| 68 ;; Bind major editing modes to certain file extensions | |
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
69 (setq auto-mode-alist (cons '("\\.zcml$" . sgml-mode) auto-mode-alist)) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
70 (setq auto-mode-alist (cons '("\\.pt$" . sgml-mode) auto-mode-alist)) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
71 (setq auto-mode-alist (cons '("\\.cpt$" . sgml-mode) auto-mode-alist)) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
72 (setq auto-mode-alist (cons '("\\.cpy$" . python-mode) auto-mode-alist)) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
73 (setq auto-mode-alist (cons '("\\.vpy$" . python-mode) auto-mode-alist)) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
74 | 
| 300 | 75 ;; set auto-fill for appropriate modes | 
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
76 (add-hook 'text-mode-hook 'turn-on-auto-fill) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
77 (add-hook 'sgml-mode-hook 'turn-off-auto-fill) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
78 | 
| 300 | 79 ;; set the grep command....for some reason | 
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
80 (setq grep-command "grep -liE") | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
81 | 
| 300 | 82 | 
| 83 ;;;; recent history stuff | |
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
84 (require 'recentf) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
85 (recentf-mode 1) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
86 (setq recentf-max-menu-items 25) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
87 (global-set-key "\C-x\ \C-r" 'recentf-open-files) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
88 | 
| 300 | 89 ;;;; full-steam-ahead-and-damn-the-torpedoes | 
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
90 (defun | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
91 full-steam-ahead-and-damn-the-torpedoes | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
92 (prompt) t) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
93 (defalias 'y-or-n-p | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
94 'full-steam-ahead-and-damn-the-torpedoes) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
95 (defalias 'yes-or-no-p | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
96 'full-steam-ahead-and-damn-the-torpedoes) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
97 | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
98 (require 'uniquify) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
99 (setq uniquify-buffer-name-style 'post-forward) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
100 | 
| 300 | 101 ;;;; | 
| 102 | |
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
103 ;; wheel mouse | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
104 (global-set-key [mouse-4] 'scroll-down) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
105 (global-set-key [mouse-5] 'scroll-up) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
106 | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
107 ;; substring buffer switching mode | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
108 (iswitchb-mode 1) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
109 | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
110 (global-set-key "\M-g" 'goto-line) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
111 | 
| 297 | 112 ;;;; python | 
| 113 | |
| 
0
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
114 ;; (when (load "flymake" t) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
115 ;; (defun flymake-pyflakes-init () | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
116 ;; (let* ((temp-file (flymake-init-create-temp-buffer-copy | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
117 ;; 'flymake-create-temp-inplace)) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
118 ;; (local-file (file-relative-name | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
119 ;; temp-file | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
120 ;; (file-name-directory buffer-file-name)))) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
121 ;; (list "pyflakes" (list local-file)))) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
122 ;; (add-to-list 'flymake-allowed-file-name-masks | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
123 ;; '("\\.py\\'" flymake-pyflakes-init))) | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
124 | 
| 
 
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
 
k0s <k0scist@gmail.com> 
parents:  
diff
changeset
 | 
125 ;; (add-hook 'find-file-hook 'flymake-find-file-hook) | 
| 4 | 126 | 
| 127 (fset 'break "import pdb; pdb.set_trace();\C-a\C-i") | |
| 128 (add-hook 'python-mode-hook | |
| 129 '(lambda () | |
| 130 (local-set-key [(meta ?p) (meta ?p)] 'break))) | 
