我的.emacs文件


1 ;; .emacs initialization file
2 ; -*- mode: GNU Emacs-lisp -*-
3
4 ;; Set up the keyboard so the delete key on both the regular keyboard
5 ;; and the keypad delete the character under the cursor and to the right
6 ;; under X, instead of the default, backspace behavior.
7 (global-set-key [delete] 'delete-char)
8 (global-set-key [kp-delete] 'delete-char)
9 (global-set-key [(meta ?/)] 'hippie-expand)
10 (global-set-key (kbd "M-<SPC>") 'set-mark-command)
11 (global-set-key (kbd "C-z") 'undo)
12 (global-set-key (kbd "M-o") 'other-window)
13
14 ;; turn on font-lock mode
15 (global-font-lock-mode t)
16 ;; enable visual feedback on selections
17 (setq-default transient-mark-mode t)
18 ;; always end a file with a newline
19 (setq require-final-newline t)
20 ;; stop at the end of the file, not just add lines
21 (setq next-line-add-newlines nil)
22 (setq scroll-margin 3 scroll-conservatively 10000)
23 (setq kill-ring-max 200)
24 (setq column-number-mode t)
25 (setq default-fill-column 168)
26 (fset 'yes-or-no-p 'y-or-n-p)
27 (if (fboundp 'scroll-bar-mode) (scroll-bar-mode -1))
28 (if (fboundp 'tool-bar-mode) (tool-bar-mode -1))
29 (if (fboundp 'menu-bar-mode) (menu-bar-mode -1))
30 (setq inhibit-startup-message t)
31 (setq visible-bell nil)
32
33 (show-paren-mode t)
34 (setq show-paren-style 'parentheses)
35
36 ;(setq default-major-mode 'text-mode)
37 ;(add-hook 'text-mode-hook 'turn-on-auto-fill)
38
39 ;(setq inhibit-eol-conversion 'gb2312-dos)
40
41 ;(setq default-tab-width 4)
42
43 ;(add-to-list 'load-path "/home/jerry/.emacs.d/lisp")
44 (setq scroll-margin 3 scroll-conservatively 10000)
45
46 (when window-system
47 ;; enable wheelmouse support by default
48 (mwheel-install)
49 ;; use extended compound-text coding for X clipboard
50 (set-selection-coding-system 'compound-text-with-extensions))
51
52 ;(set-default-font "-outline-...-normal-r-normal-normal-12-*-96-96-c-*-gb2312")
53 (set-language-environment 'Chinese-GB)
54 (set-keyboard-coding-system 'euc-cn)
55 (set-clipboard-coding-system 'euc-cn)
56 (setq locale-coding-system 'euc-cn)
57 (set-terminal-coding-system 'euc-cn)
58 (set-buffer-file-coding-system 'euc-cn)
59 (set-selection-coding-system 'euc-cn)
60 (modify-coding-system-alist 'process "*" 'euc-cn)
61 (setq default-process-coding-system '(euc-cn . euc-cn))
62 (setq-default pathname-coding-system 'euc-cn)
63
64 (require 'recentf)
65 (recentf-mode 1)
66 (defun recentf-open-files-compl ()
67 (interactive)
68 (let* ((all-files recentf-list)
69 (tocpl (mapcar (function
70 (lambda (x) (cons (file-name-nondirectory x) x))) all-files))
71 (prompt (append '("File name: ") tocpl))
72 (fname (completing-read (car prompt) (cdr prompt) nil nil)))
73 (find-file (cdr (assoc-ignore-representation fname tocpl)))))
74
75 (global-set-key [(control x)(control r)] 'recentf-open-files-compl)
76
77 (require 'color-theme)
78 (color-theme-tty-dark)
79
80 (autoload 'table-insert "table" "WYGIWYS table editor")
81
82 (require 'swbuff)
83 (setq swbuff-exclude-buffer-regexps '("^ " "//*.*//*"))
84 (setq swbuff-status-window-layout 'scroll)
85 (setq swbuff-clear-delay 1)
86 (setq swbuff-separator "|")
87 (setq swbuff-window-min-text-height 1)
88
89 (require 'browse-kill-ring)
90 (global-set-key [(control c)(k)] 'browse-kill-ring)
91 (browse-kill-ring-default-keybindings)
92
93 (require 'ibuffer)
94 (global-set-key (kbd "C-x C-b") 'ibuffer)
95
96 ;; Load CEDET
97 (setq semantic-load-turn-everything-on t)
98 (load-file "/usr/share/emacs/21.3/lisp/cedet-1.0pre3/common/cedet.el")
99 (add-to-list 'load-path "/usr/share/emacs/21.3/lisp/ecb-2.32/")
100 (require 'ecb-autoloads)
101 (semantic-load-enable-code-helpers)
102 ;; (semantic-load-enable-guady-code-helpers)
103 ;; (semantic-load-enable-excessive-code-helpers)
104
105 ;; Enable this if you develop in semantic, or develop grammars
106 ;; (semantic-load-enable-semantic-debugging-helpers)
107 (custom-set-variables
108 ;; custom-set-variables was added by Custom -- don't edit or cut/paste it!
109 ;; Your init file should contain only one such instance.
110 '(column-number-mode t)
111 '(cua-mode nil)
112 '(desktop-enable t nil (desktop))
113 '(desktop-globals-to-clear nil)
114 '(desktop-path (quote ("~/.emacs.d/")))
115 '(desktop-save t)
116 '(desktop-save-mode t nil (desktop))
117 '(ecb-options-version "2.32")
118 '(ecb-other-window-behavior (quote all))
119 '(ecb-primary-secondary-mouse-buttons (quote mouse-1--mouse-2))
120 '(ecb-tip-of-the-day nil)
121 '(ecb-windows-width 0.2)
122 '(global-semantic-decoration-mode t nil (semantic-decorate-mode))
123 '(hscroll-margin 0)
124 '(ido-everywhere t)
125 '(ido-use-faces nil)
126 '(kill-whole-line t)
127 '(pc-select-meta-moves-sexps t)
128 '(pc-select-selection-keys-only t)
129 '(pc-selection-mode t t)
130 '(semanticdb-default-save-directory "~/.emacs.d/semantic")
131 '(session-use-package t)
132 '(show-paren-mode t nil (paren))
133 '(template-default-directories (quote ("~/.emacs.d/templates/")))
134 '(time-stamp-time-zone "CST")
135 '(transient-mark-mode t))
136 (custom-set-faces
137 ;; custom-set-faces was added by Custom -- don't edit or cut/paste it!
138 ;; Your init file should contain only one such instance.
139 )
140
141 (setq backup-directory-alist (quote (("." . "~/.emacs.d/backups"))))
142 (setq version-control t)
143 (setq kept-old-versions 2)
144 (setq kept-new-versions 5)
145 (setq delete-old-versions t)
146 (setq backup-by-copying t)
147
148 (require 'time-stamp)
149 (setq time-stamp-active t)
150 (setq time-stamp-warn-inactive t)
151 (setq time-stamp-format "Jerry Fleming %3a %:y-%02m-%02d %02H:%02M:%02S")
152 (add-hook 'write-file-hooks 'time-stamp)
153
154 ;(diary)
155 (load-library "hideshow")
156 (add-hook 'java-mode-hook 'hs-minor-mode)
157 (add-hook 'perl-mode-hook 'hs-minor-mode)
158 (add-hook 'php-mode-hook 'hs-minor-mode)
159 (add-hook 'GNU Emacs-lisp-mode-hook 'hs-minor-mode)
160
161 ;(require 'thumbs)
162 ;(auto-image-file-mode t)
163
164 (setq x-stretch-cursor nil)
165
166 ;(setq font-lock-maximum-decoration t)
167 ;(setq font-lock-global-modes '(not shell-mode text-mode))
168 ;(setq font-lock-verbose t)
169 ;(setq font-lock-maximum-size
170 ; '((t . 1048576) (vm-mode . 5250000)))
171
172 ;(auto-compression-mode 1)
173
174 ;(blink-cursor-mode -1)
175
176 (show-paren-mode 1)
177
178 ;(icomplete-mode 1)
179
180
181 (defun remove-trailing-ctrl-m ()
182 (interactive)
183 (goto-char (point-min))
184 (while (search-forward-regexp " " nil t)
185 (replace-match "" nil t)))
186
187
188 ;(require 'htmlize)
189
190 ;(require 'setnu)
191 (add-to-list 'load-path "/home/jerry/.emacs.d/mmm-mode-0.4.8/")
192 (require 'mmm-mode)
193 (setq mmm-global-mode 'maybe)
194 ;(mmm-add-mode-ext-class nil "//.php//'" 'html-php)
195 ;(mmm-add-classes
196 ; '((html-php
197 ; :submode php-mode
198 ; :front "<//?//(php//)?"
199 ; :back "//?>"
200 ; )))
201 (autoload 'php-mode "php-mode" "PHP editing mode" t)
202 (add-to-list 'auto-mode-alist '("//.php//'" . php-mode))
203
204
205 ;(require 'gnuserv)
206 ;(serv-start)
207 ;(setq gnuserv-frame (selected-frame))
208 ;(setenv "GNUSERV_SHOW_EMACS" "1")
209
210
211
212 ;; Implement slickedit's default copy and cut behavior.
213 ;; If region is inactive, copy and cut will operate on the current line.
214 ;; (As if the current line is currently selected.)
215 ;;
216 ;; Please send comments to emailmac (at) gmail com
217 ;;
218
219 (defun slick-copy ()
220 (interactive)
221 "Copy the current line if region is inactive. Otherwise it behaves just like kill-ring-save"
222 (condition-case VAR (progn (mark) (kill-ring-save (region-beginning) (region-end)))
223 ('mark-inactive
224 (kill-ring-save (line-beginning-position) (line-beginning-position 2))
225 (message "copy line"))))
226
227 (defcustom slick-save-to-kill-ring t
228 "Specify whether slick-cut should use the kill-ring.
229 If nil, it will delete the line instead of kill it")
230
231 (defun slick-cut (toggle-save-to-kill-ring)
232 (interactive "P")
233 "Cut the current line if region is inactive. Otherwise it behaves just like kill-region.
234 If prefix argument is specified, will use delete-region instead (in case you are deleting
235 a bunch of junk and you don't want to pollute your kill-ring.)
236 Prefix argument will toggle back to kill-region again."
237 (condition-case VAR (progn (mark) (kill-region (region-beginning) (region-end)))
238 ('mark-inactive
239 (if toggle-save-to-kill-ring
240 (setq slick-save-to-kill-ring
241 (if slick-save-to-kill-ring '() t)))
242 (if slick-save-to-kill-ring
243 (progn (kill-region (line-beginning-position) (line-beginning-position 2))
244 (message "cut line"))
245 (progn (delete-region (line-beginning-position) (line-beginning-position 2))
246 (message "delete line"))))))
247
248 (global-set-key "/M-w" 'slick-copy)
249 (global-set-key "/C-w" 'slick-cut)
250
251
252 ;;hide region
253 (require 'hide-region)
254 (global-set-key (kbd "C-c r") 'hide-region-hide)
255 (global-set-key (kbd "C-c R") 'hide-region-unhide)
256
257
258 ;; hide lines
259 (require 'hide-lines)
260 (global-set-key (kbd "C-c l") 'hide-lines)
261 (global-set-key (kbd "C-c L") 'show-all-invisible)
262
263 (require 'template)
264 (template-initialize)
265
266 ;;tabbar-buffer-ignore-groups
267 (defun tabbar-buffer-ignore-groups (buffer)
268 "Return the list of group names BUFFER belongs to.
269 Return only one group for each buffer."
270 (with-current-buffer (get-buffer buffer)
271 (cond
272 ((or (get-buffer-process (current-buffer))
273 (memq major-mode
274 '(comint-mode compilation-mode)))
275 '("Process")
276 )
277 ((member (buffer-name)
278 '("*scratch*" "*Messages*"))
279 '("Common")
280 )
281 ((eq major-mode 'dired-mode)
282 '("Dired")
283 )
284 ((memq major-mode
285 '(help-mode apropos-mode Info-mode Man-mode))
286 '("Help")
287 )
288 ((memq major-mode
289 '(rmail-mode
290 rmail-edit-mode vm-summary-mode vm-mode mail-mode
291 mh-letter-mode mh-show-mode mh-folder-mode
292 gnus-summary-mode message-mode gnus-group-mode
293 gnus-article-mode score-mode gnus-browse-killed-mode))
294 '("Mail")
295 )
296 (t
297 (list
298 "Common" ;; no-grouping
299 (if (and (stringp mode-name) (string-match "[^ ]" mode-name))
300 mode-name
301 (symbol-name major-mode)))
302 )
303
304 )))
305
306
307 (delete-selection-mode)
308 ;(require 'ido)
309 ;(ido-mode t)
310
311 (require 'session)
312 (add-hook 'after-init-hook 'session-initialize)
313
314 (require 'desktop)
315 (desktop-load-default)
316 (desktop-read)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值