2012-04-15 17 views
18

क्या संदेश बफर अक्षम करने का कोई तरीका है? मुझे पता है कि मैं इसे मार सकता हूं, लेकिन यह फिर से दिखाई देता है। मुझे पता है कि मैं संदेश से गुज़रने के बिना बफर के माध्यम से स्क्रॉल कर सकता हूं, लेकिन क्या कोई तरीका है कि मैं इसे केवल सृजन को अक्षम कर सकता हूं?Emacs अक्षम * संदेश * बफर

धन्यवाद।

+5

आप बफर कैसे स्विच करते हैं? मुझे आशा है कि आप बेहद अक्षम अक्षम बफर स्विचिंग का उपयोग न करें। [Iswitchb] (http://emacswiki.org/emacs/IswitchBuffers) देखें और फिर आप सीधे किसी भी बफर पर जा सकते हैं, इसलिए आपको * संदेश * से गुजरना नहीं है। संदेश बफर उपयोगी है, वैसे, आप इसकी सराहना करना सीखेंगे, उदाहरण के लिए, जब आप elisp से सूचनात्मक संदेश प्रिंट करते हैं। – Tom

+3

'* संदेश *' अक्षम न करें; यह एक बुरा विचार है। इसे रोकने के तरीकों के कुछ सुझावों के लिए http://stackoverflow.com/questions/9536186/emacs-lisp-buffer-out-of- फ़ोकस- फ़ंक्शन देखें (और ऐसे अन्य बफर) आपके रास्ते में आने से। – phils

+0

@ टॉम, जब आप iswitchb के साथ स्विच करते हैं तो '* संदेश *' मिलान नहीं हो रहा है, एक सबस्ट्रिंग की अस्पष्टता को जोड़ना? – katspaugh

उत्तर

16

आप चर message-log-max अनुकूलित और निष्क्रिय करने के लिए nil के एक मूल्य दे सकते हैं प्रवेश:

Maximum number of lines to keep in the message log buffer. 
If nil, disable message logging. If t, log messages but don't truncate 
the buffer when it becomes large. 

मैं *Messages* बफर की हत्या की कोशिश की, संदेशों के उत्पादन (minibuffer पर कि इस शो), और कोई नया संदेश बफर प्रकट होता है ।

+0

टिप के लिए धन्यवाद। यह अब मुझे बहुत लॉग समय के लिए परेशान कर रहा है। BW। – Vincent

+2

उत्तर वास्तव में '.emacs' में जोड़ने के लिए कोड प्रदान करता है जो यह –

17

जवाब ऊपर के आधार पर, अपने .emacs में इस जगह पूरी तरह से

;; Forces the messages to 0, and kills the *Messages* buffer - thus disabling it on startup. 
(setq-default message-log-max nil) 
(kill-buffer "*Messages*") 

इसके अलावा संदेशों को निष्क्रिय करने, अगर तुम मुझे पसंद कर रहे हैं, यह कैसे आप प्राप्तियां बफर हटाने है कि बफर से एक नई फाइल खोलते समय प्रकट होता है।

;; Disabled *Completions* 
(add-hook 'minibuffer-exit-hook 
     '(lambda() 
     (let ((buffer "*Completions*")) 
      (and (get-buffer buffer) 
      (kill-buffer buffer))))) 
+0

प्राप्त करता है [link] (http://unix.stackexchange.com/a/152151/72170) यदि आप स्क्रैच, संदेश और समापन को हटाना चाहते हैं कुल मिलाकर। – oles

संबंधित मुद्दे