-
Notifications
You must be signed in to change notification settings - Fork 8
/
.emacs
107 lines (83 loc) · 3.31 KB
/
.emacs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
(add-to-list 'load-path "~/.emacs.d")
;; Pristine vendor code
(add-to-list 'load-path "~/.emacs.d/vendor")
;; where to keep emacs' generated customizations file
(setq custom-file "~/.emacs.d/ches/custom.el")
(when (file-exists-p custom-file) (load custom-file))
(load "ches/global")
(load "ches/functions")
(load "ches/bindings")
(load "ches/modes")
(load "ches/mac")
(vendor 'color-theme)
(vendor 'pair-mode)
(vendor 'mmm-mode)
(vendor 'mmm-auto)
;; Yet Another snippet mode. They even called it that.
;; http://code.google.com/p/yasnippet/
(vendor 'yasnippet-bundle)
;; Fancier git functionality than the standard vc-git lib provides
;; http://bogolisk.blogspot.com/
;; https://github.com/bogolisk/egg/wiki/Manual
(vendor 'egg)
;; Enable a backtrace if customizations make emacs shit the bed
; (setq debug-on-error t)
(pair-mode t)
(require 'ido)
(ido-mode t)
(setq ido-enable-flex-matching t)
;; Use ssh by default for Tramp
(require 'tramp)
(setq tramp-default-method "ssh")
;; DoReMi stuff -- I won't use this all the time
(require 'ring+)
(require 'doremi-cmd)
(require 'doremi-frm)
;; 'Open Recent...'
(require 'recentf)
(recentf-mode 1)
;; Smooth scrolling
(require 'smooth-scrolling)
;; nxml mode
;; It's big and slow to load, but we might be able to byte-compile new versions
;;(load "/Applications/Development/Emacs.app/Contents/Resources/site-lisp/nxhtml/autostart.el")
;; Setting up icicles. Lots of completion and shortcut-teaching.
;; (require 'icicles)
;; (icicle-mode 1) ; Turn on Icicle mode.
;; Setting up Abbrevs
;; (setq abbrev-file-name "~/.emacs.d/abbrev_defs") ;tell emacs where to
;; ;read abbrev definitions from
;; (setq save-abbrevs t) ;save abbrevs when files are
;; ;saved
;; (read-abbrev-file "~/.emacs.d/abbrev_defs") ;read abbreviations
;; ;file at startup
;; redefining the make-backup-file-name function in order to get
;; backup files in ~/.backups/ rather than scattered around all over
;; the filesystem. Note that you must have a directory ~/.backups/
;; made. This function looks first to see if that folder exists. If
;; it does not the standard backup copy is made.
(defun make-backup-file-name (file-name)
"Create the non-numeric backup file name for `file-name'."
(require 'dired)
(if (file-exists-p "~/.backup/emacs/")
(concat (expand-file-name "~/.backup/emacs/")
(replace-regexp-in-string "/" "!" file-name))
(concat file-name "~")))
;; redefining the make-auto-save-file-name function in order to get
;; autosave files sent to a single directory. Note that this function
;; looks first to determine if you have a ~/.autosaves/ directory. If
;; you do not it proceeds with the standard auto-save procedure.
(defun make-auto-save-file-name ()
"Return file name to use for auto-saves of current buffer.."
(if buffer-file-name
(if (file-exists-p "~/.autosave/emacs/")
(concat (expand-file-name "~/.autosave/emacs/") "#"
(replace-regexp-in-string "/" "!" buffer-file-name)
"#")
(concat
(file-name-directory buffer-file-name)
"#"
(file-name-nondirectory buffer-file-name)
"#"))
(expand-file-name
(concat "#%" (buffer-name) "#"))))