emacs加強之旅.emacs配置

前言:還記得以前講過的emacs,這裏就再也不去贅述安裝和php模塊安裝了,這篇文章的目的主要是讓你們能更加深刻的瞭解emacs,以及配置emacs,讓emacs用起來更加順手。在此以前但願你們先看看有關emacs的前面兩篇文章。emacs開發phpemacs快捷鍵介紹php

設置emacs home html

打開emacs你將看到 shell

emacs配置-0

emacs配置-0 session

C-x C-f  輸入~/如圖 app

emacs配置-1

emacs配置-1 函數

回車你將看到 工具

emacs配置-2

C-x C-f新建.emacs回車 ui

emacs配置-3

emacs配置-3 spa

而後你將看到一個白畫面啥也沒有,而後在第一行輸入(load-file "D:/emacs-22.3/.emacs")位置本身定(若是你已經複製了這段代碼你只要C-y 就能在emacs裏面黏貼)。而後保存退出(C-x C-s C-x C-c)從新打開。這時候打開會報錯,由於咱們在D:/emacs-22.3/目錄沒有.emacs文件,若是你想看看一開始報錯的內容你只要C-x b而後按一下tab而後會出現 .net

emacs配置-4

emacs配置-4

輸入*M 而後按tab會自動補全,而後回車就行了這樣就能看到報錯的內容了。

emacs配置-5

emacs配置-5

而後咱們打開那個目錄(C-x C-f 打開) 新建.emacs。而後輸入

(setenv 「HOME」 「D:/emacs-22.3″)
(setenv 「PATH」 「D:/emacs-22.3″)

(setq default-directory 「~/」)
(add-to-list ‘load-path 「~/site-lisp」)

而後保存退出從新打開而後打開home是否是位置不同了

 

配色方案

http://download.savannah.gnu.org/releases/color-theme/下載最新的,咱們下載.zip結尾的那個而後解壓下載的文件,將 color-theme-6.6.0(目前是這個版本) 中的 color-theme.el 和 themes 文件夾複製到 d:\emacs-22.3\site-lisp

.emacs文件裏面輸入

;;配色方案

(require 'color-theme)

保存退出,從新打開若是出錯的話打開*Message*看看錯誤是啥相應改下

而後M-x color-theme-select, 回車查看效果,d 查看主題信息(主題名)選好本身喜歡的主題好比我選hober(若是選的有空格的話把空格替換成-)
則在 (require ‘color-theme) 下面添加代碼:

(color-theme-initialize)

(color-theme-hober)

保存退出,從新打開是否是開始界面顏色變了吧

顯示行號

下載擴展文件linum.el放到site-lisp,能夠在http://stud4.tuwien.ac.at/~e0225855/linum/linum.html進行下載放到d:\emacs-22.3\site-lisp而後在.emacs加入下面代碼

(require ‘linum)
(global-linum-mode 1)

保存退出,從新打開

工做環境保存

http://sourceforge.net/projects/emacs-session/files/session/下載最新的session解壓獲得session.el放到d:\emacs-22.3\site-lisp而後在在d:\emacs-22.3目錄新建desktop文件夾而後再.emacs加入下面代碼,下面的代碼在重啓後,第一次運行的時候要運行下M-x desktop-save,讓選擇目錄的時候就選擇d:\emacs-22.3\desktop

01 ;;加載desktop
02 (require 'session)
03 (add-hook 'after-init-hook 'session-initialize)
04 (setq desktop-globals-to-save '(desktop-missing-file-warning))
05  
06 (load "desktop")
07 ;;(desktop-load-default)
08 ;; defcustom
09 (setq desktop-path '("~/desktop" "."))
10 (desktop-save-mode t)
11 (setq desktop-load-locked-desktop t)
12 (desktop-read)

buffer加強

下載擴展http://www.opensource.apple.com/source/emacs/emacs-70/emacs/lisp/ibuffer.el?txt   http://www.cua.dk/ido.el兩個擴展都放到site-lisp而後加入以下代碼

1 ;; ibuffer
2 (require 'ibuffer)
3 (global-set-key (kbd "C-x C-b") 'ibuffer)
4  
5 ;; ido
6 (require 'ido)
7 (ido-mode t)

保存退出從新打開 而後試試你的C-x C-b看看效果吧,是否是好多了

php支持

上次已經講過了,因此不贅述

基本配置

直接拷貝下面的代碼到.emacs便可 註釋已經寫得很清楚

01 ;; 在標題欄提示你目前在什麼位置
02 (setq frame-title-format "zhu@%b")
03 ;; 默認顯示 80列就換行
04 ;;(setq default-fill-column 80)
05 ;; 去掉工具欄
06 (tool-bar-mode nil)
07 ;; 去掉菜單欄
08 (menu-bar-mode nil)
09 ;; 去掉滾動欄
10 (scroll-bar-mode nil)
11 ;; 語法高亮
12 (global-font-lock-mode t)
13 ;; 一打開就起用 text 模式。
14 ;;(setq default-major-mode 'text-mode)
15 ;; 以 y/n表明 yes/no
16 (fset 'yes-or-no-p 'y-or-n-p)
17 ;; 顯示括號匹配
18 (show-paren-mode t)
19 (setq show-paren-style 'parentheses)
20 ;; 顯示時間,格式以下
21 (display-time-mode 1)
22 (setq display-time-24hr-format t)
23 (setq display-time-day-and-date t)
24 ;不產生備份文件
25 (setq make-backup-files nil)
26 ;顯示列號
27 (column-number-mode t)
28 ;; 光標禁止閃爍
29 ;;(blink-cursor-mode -1)
30 ;;去掉一打開emacs的歡迎屏幕
31 (setq inhibit-splash-screen t)
32 ;光標靠近鼠標指針時,讓鼠標指針自動讓開
33 ;;(mouse-avoidance-mode 'animate)
34 ;;底板透明
35 (set-frame-parameter (selected-frame) 'alpha (list 80 50))
36 (add-to-list 'default-frame-alist (cons 'alpha (list 80 50)))
37 ;;默認目錄 和home目錄不一樣
38 (setq default-directory "D:/www")
39 ;; 當有問題出現顯示錯誤信息,便於調試
40 (setq debug-on-error t)
41  
42 ;啓動窗口大小
43 (setq initial-frame-alist '((top . 0) (left . 0) (width . 145) (height . 49)))
44 ;; C-k 刪除一整行設置
45 (setq-default kill-whole-line t)

最後貼一個完整的.emacs配置須要下載的.el先下載好,放到site-lisp

001 (setenv "HOME" "D:/emacs-22.3")
002 (setenv "PATH" "D:/emacs-22.3")
003  
004 (setq default-directory "~/")
005 (add-to-list 'load-path "~/site-lisp")
006  
007 ;;配色方案
008 (require 'color-theme)
009 (color-theme-initialize)
010 (color-theme-hober)
011  
012 ;;顯示行號
013 ;;下載擴展文件linum.el放到site-lisp,能夠在http://stud4.tuwien.ac.at/~e0225855/linum/linum.html進行下載
014 (require 'linum)                                                  
015 (global-linum-mode 1)
016  
017 ;;; ibuffer.el: list the buffers
018 ;(require 'ibuffer)
019 ;(global-set-key (kbd "C-x C-b") 'ibuffer)
020  
021 ;; 在標題欄提示你目前在什麼位置
022 (setq frame-title-format "zhu@%b")
023 ;; 默認顯示 80列就換行
024 ;;(setq default-fill-column 80)
025 ;; 去掉工具欄
026 (tool-bar-mode nil)
027 ;; 去掉菜單欄
028 (menu-bar-mode nil)
029 ;; 去掉滾動欄
030 (scroll-bar-mode nil)
031 ;; 語法高亮
032 (global-font-lock-mode t)
033 ;; 一打開就起用 text 模式。
034 ;;(setq default-major-mode 'text-mode)
035 ;; 以 y/n表明 yes/no
036 (fset 'yes-or-no-p 'y-or-n-p)
037 ;; 顯示括號匹配
038 (show-paren-mode t)
039 (setq show-paren-style 'parentheses)
040 ;; 顯示時間,格式以下
041 (display-time-mode 1)
042 (setq display-time-24hr-format t)
043 (setq display-time-day-and-date t)
044 ;不產生備份文件
045 (setq make-backup-files nil)
046 ;顯示列號
047 (column-number-mode t)
048 ;; 光標禁止閃爍
049 ;;(blink-cursor-mode -1)
050 ;;去掉一打開emacs的歡迎屏幕
051 (setq inhibit-splash-screen t)
052 ;光標靠近鼠標指針時,讓鼠標指針自動讓開
053 ;;(mouse-avoidance-mode 'animate)
054 ;;底板透明
055 (set-frame-parameter (selected-frame) 'alpha (list 80 50))
056 (add-to-list 'default-frame-alist (cons 'alpha (list 80 50)))
057 ;;默認目錄 和home目錄不一樣
058 (setq default-directory "D:/www")
059 ;; 當有問題出現顯示錯誤信息,便於調試
060 (setq debug-on-error t)
061  
062 ;啓動窗口大小
063 (setq initial-frame-alist '((top . 0) (left . 0) (width . 145) (height . 49)))
064 ;; C-k 刪除一整行設置
065 (setq-default kill-whole-line t)
066  
067 ;;加載desktop
068 (require 'session)
069 (add-hook 'after-init-hook 'session-initialize)
070 (setq desktop-globals-to-save '(desktop-missing-file-warning))
071  
072 (load "desktop")
073 ;;(desktop-load-default)
074 ;; defcustom
075 (setq desktop-path '("~/desktop" "."))
076 (desktop-save-mode t)
077 (setq desktop-load-locked-desktop t)
078 (desktop-read)
079  
080 ;; ibuffer
081 (require 'ibuffer)
082 (global-set-key (kbd "C-x C-b") 'ibuffer)
083  
084 ;; ido
085 (require 'ido)
086 (ido-mode t)
087  
088 ;;php支持
089 (load "php-mode")
090 ; 這兩句是告訴emacs對於.php的文件自動加載php-mode
091 (add-to-list 'auto-mode-alist '("\\.php\\'" . php-mode))
092 (add-to-list 'auto-mode-alist '("\\.phps\\'" . php-mode))
093  
094 ;;(分號是註釋的意思)這裏是定義一個函數
095 (define-key php-mode-map
096   [menu-bar php php-run]
097   '("Run PHP" . php-run))
098  
099 (define-key php-mode-map
100 [menu-bar php php-run]
101 '("Run PHP" . php-run))
102  
103 (defun php-run ()
104 (interactive)
105 (message buffer-file-name)
106 (shell-command
107 (concat "d:/wamp/bin/php/php5.3.3/php.exe -f \""
108 (buffer-file-name)
109 "\"")))
110  
111 (define-key php-mode-map
112   [menu-bar php php-debug]
113   '("PHP Debug" . php-debug))
114  
115 (defun php-debug ()
116   (interactive)
117   (shell-command
118    (concat "d:/wamp/bin/php/php5.3.3/php.exe -f \""
119            (buffer-file-name)
120            "\"")))
121  
122 ;;這裏是綁定函數到快捷鍵C+c r
123  
124 (defun my-php-mode()
125 (define-key php-mode-map [(control c) (r)] 'php-run)
126 (define-key php-mode-map [(control c) (d)] 'php-debug)
127 (hs-minor-mode t)
128 (linum-mode t)
129 )
130  
131 (add-hook 'php-mode-hook 'my-php-mode)

本文固定連接: http://www.qaforcode.net/archives/207 | 豬哥每日一貼

相關文章
相關標籤/搜索