2012-04-19 34 views
2

非常感謝您的幫助。Emacs:當字節編譯時,它會刪除摺疊內的任何內容。

我想字節編譯我的init.le文件。 我遇到的問題是生成的init.lec文件是空的! 經過一些測試後,我意識到任何內容摺疊(這將是;; {{{;;}}})被刪除。

除了停止使用摺疊:-D(folding.el更精確)之外,任何人都有任何想法如何防止這種情況。

我也試着改變foldings的語法。 這並不容易,但是當我得到它的工作時,Emacs用新語法刪除了摺疊的內容!瘋了嗎?

乾杯!

UPDATE:

這是我init.el文件(抱歉上面的錯字)

我用folding.le東西都保持整潔。

基本上,它的作用是收縮和擴張;; {{{;;}}}標籤

所以,當一切都被摺疊,我init.el文件看起來像這裏面的內容:

(message "Loading Emacs!") 

;;{{{ FIRST... 
;;{{{ DIRECTORIES... 
;;{{{ PACKAGES... 
;;{{{ INTERFACE... 
;;{{{ EDITOR... 
;;{{{ FUNCTIONS... 
;;{{{ HOOKS... 
;;{{{ PACKAGES... 
;;{{{ LAST... 

(message "Emacs Loaded!") 

字節編譯後,該所產生的init.elc文件:

ELC 
;;; Compiled by [email protected] on Thu Apr 19 17:37:20 2012 
;;; from file c:/Users/rafaelgp/AppData/Roaming/.emacs.d/init.el 
;;; in Emacs version 24.0.92.1 
;;; with all optimizations. 

;;; This file uses dynamic docstrings, first added in Emacs 19.29. 

;;; This file does not contain utf-8 non-ASCII characters, 
;;; and so can be loaded in Emacs versions earlier than 23. 

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 


(byte-code "\300\301!\210\300\302!\207" [message "Loading Emacs!" "Emacs Loaded!"] 2) 

乾杯

+0

其首先不是'init.le',而是'init.el'。我不是你的意思,請提供任何例子。你不應該看字節編譯的'elc'文件。 – kindahero 2012-04-19 19:09:38

回答

0

嗯。它似乎爲我工作,但我不得不評論一些我沒有安裝的東西,比如毒蛇。我使用this fold mode的修改版本,並沒有任何問題。至少你可以添加圍繞字節編譯的建議來關閉摺疊,就像

(defadvice byte-compile-file (around turn-off-folding activate) 
    (turn-off-folding-mode) 
    ad-do-it 
    (turn-on-folding-mode)) 

希望能解決你的問題。不過,我可能會嘗試不同的摺疊模式。

+0

幹得好!我用fold.el取代了fold.el。現在init.elc編譯正確。 Fold.el目前工作正常。很遺憾,它使用兩個不同的鍵盤映射來打開和關閉摺疊,而不是一個切換狀態。非常感謝您的幫助! – RafaelGP 2012-04-23 11:28:12

+0

我相信這兩種模式的功能是不同的,但如果你對'fold.el'滿意,那麼我想它沒關係。 – 2012-04-23 11:30:15