2010-01-10 47 views
1

Emacs在更改主題,添加插件和配置後的4秒內延遲和閃爍是否正常? (Vim沒有發生這種情況)。Emacs在更改主題和添加插件時緩慢啓動

這裏是我的.emacs:

;; set tab width 

;; turn on tabs 
(setq indent-tabs-mode t) 
(setq-default indent-tabs-mode t) 

;; bind the tab key 
(global-set-key (kbd "TAB") 'self-insert-command) 

;; set the tab width 
(setq default-tab-width 4) 
(setq tab-width 4) 
(setq c-basic-indent 4) 

;; set open recent files 

(require 'recentf) 
(recentf-mode 1) 
(setq recentf-max-menu-items 25) 
(global-set-key "\C-x\ \C-r" 'recentf-open-files) 

;; set yasnippet 

(add-to-list 'load-path "D:/Program Files/emacs-23.1/site-lisp/plugins/yasnippet-0.6.1c") 
(require 'yasnippet) 
(yas/initialize) 
(yas/load-directory "D:/Program Files/emacs-23.1/site-lisp/plugins/yasnippet-0.6.1c/snippets") 

;; set yasnippet dropdown prompt 

(setq yas/prompt-functions '(yas/dropdown-prompt)) 

;; set yasnippet no indent 

(setq yas/indent-line 'none) 

;; same syntax hightlight for all languages 

(global-font-lock-mode 1) 

;; remove bold 

(mapc 
    (lambda (face) 
     (when (eq (face-attribute face :weight) 'bold) 
     (set-face-attribute face nil :weight 'normal))) 
(face-list)) 

;; set color theme 

(require 'color-theme) 
(color-theme-initialize) 
(color-theme-charcoal-black) 

;; set line number 

(global-linum-mode 1) 

;; set the highlight current line minor mode 

;; in every buffer, the line which contains the cursor will be fully 
;; highlighted 

(global-hl-line-mode 1) 

;; prevent emacs from making backup files 

(setq make-backup-files nil) 

;; default 

    (custom-set-variables 
    ;; custom-set-variables was added by Custom. 
    ;; If you edit it by hand, you could mess it up, so be careful. 
    ;; Your init file should contain only one such instance. 
    ;; If there is more than one, they won't work right. 
'(tool-bar-mode nil)) 
(custom-set-faces 
    ;; custom-set-faces was added by Custom. 
    ;; If you edit it by hand, you could mess it up, so be careful. 
    ;; Your init file should contain only one such instance. 
    ;; If there is more than one, they won't work right. 
'(default ((t (:inherit nil :stipple nil :background "SystemWindow" :foreground "SystemWindowText" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 98 :width normal :foundry "outline" :family "Monaco"))))) 

我能提高嗎?

回答

3

閃爍是正常的。通過字節編譯你的elisp代碼可以提高速度。爲此,請執行M-x byte-compile-file併爲您的.emacs指定路徑,然後爲每個尚未經過字節編譯的elisp目錄(可能爲yasnippet)執行C-u 0 M-x byte-recompile-directory

重新啓動Emacs並查看速度是否增加。如果仍然緩慢,啓動Emacs切換到消息後緩衝和形式查找信息

加載C:\ FOO \ bar.el(源)... 做

如果「(source)」部分在這裏,字節編譯C:\ foo目錄也是如此。

另外請記住,每次更改後都必須重新編譯.emacs。

+0

!我最好堅持用Vim。不管怎麼說,多謝拉。 – alexchenco 2010-01-10 11:19:37