Mercurial > hg > config
annotate .emacs @ 297:618db1b1f34b
dmenu + emacs, baby
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Sat, 11 May 2013 10:00:48 -0700 |
parents | c738405d0d6c |
children | cc2f7d8307d0 |
rev | line source |
---|---|
280 | 1 ;; emacs server (what a piece of crap) |
297 | 2 ;; (commented out for now) |
3 ;; (require 'server) | |
4 ;; (or (server-running-p) | |
5 ;; (server-start)) | |
6 | |
7 ;;;; bars | |
8 | |
9 ;; Turn off the status bar and on the mouse if we're not in a window system | |
10 (menu-bar-mode (if window-system 1 -1)) | |
11 | |
12 ;; 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
|
13 (if (boundp 'tool-bar-mode) (tool-bar-mode 0)) |
297 | 14 |
15 ;; ...or a startup message | |
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 | |
24 ;;;; | |
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 | |
61 | |
0
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
62 ;; Show line-number in the mode line |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
63 (line-number-mode 1) |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
64 |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
65 ;; Show column-number in the mode line |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
66 (column-number-mode 1) |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
67 |
297 | 68 ;;;; modes |
69 | |
70 ;; 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
|
71 (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
|
72 (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
|
73 (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
|
74 (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
|
75 (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
|
76 |
297 | 77 ;; set auto-fill for modes |
0
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
78 (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
|
79 (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
|
80 |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
81 (setq grep-command "grep -liE") |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
82 |
297 | 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 |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
89 ;; 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
|
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 |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
101 ;; wheel mouse |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
102 (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
|
103 (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
|
104 |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
105 ;; substring buffer switching mode |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
106 (iswitchb-mode 1) |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
107 |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
108 (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
|
109 |
297 | 110 ;;;; python |
111 | |
0
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
112 ;; (when (load "flymake" t) |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
113 ;; (defun flymake-pyflakes-init () |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
114 ;; (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
|
115 ;; 'flymake-create-temp-inplace)) |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
116 ;; (local-file (file-relative-name |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
117 ;; temp-file |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
118 ;; (file-name-directory buffer-file-name)))) |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
119 ;; (list "pyflakes" (list local-file)))) |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
120 ;; (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
|
121 ;; '("\\.py\\'" flymake-pyflakes-init))) |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
122 |
f3ab51c79813
adding configuration from https://svn.openplans.org/svn/config_jhammel/
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
123 ;; (add-hook 'find-file-hook 'flymake-find-file-hook) |
4 | 124 |
125 (fset 'break "import pdb; pdb.set_trace();\C-a\C-i") | |
126 (add-hook 'python-mode-hook | |
127 '(lambda () | |
128 (local-set-key [(meta ?p) (meta ?p)] 'break))) |