M-x ibuffer
- एक बफर का चयन करें
- उस बफर को मार डालो
बफर के मारे जाने के बाद, आइबफ़र बफर फिर से प्रकट होता है, लेकिन यह अभी भी चरण 3 में मारे गए बफर नाम को दिखाता है।
क्या ibuffer ऑटो-रिफ़र को बफ़र्स की सूची में रखना संभव है?
M-x ibuffer
बफर के मारे जाने के बाद, आइबफ़र बफर फिर से प्रकट होता है, लेकिन यह अभी भी चरण 3 में मारे गए बफर नाम को दिखाता है।
क्या ibuffer ऑटो-रिफ़र को बफ़र्स की सूची में रखना संभव है?
जवाबों:
ibuffer-auto-mode
इब्फ़र बफर में कमांड चलाना प्रत्येक इंटरेक्टिव कमांड के बाद डिस्प्ले को रिफ्रेश करता है।
वहाँ इसे स्वचालित रूप से सक्रिय करने का एक सीधा तरीका प्रतीत नहीं होता है। आप इसे अपनी इनिट फ़ाइल में डाल सकते हैं:
(add-hook 'ibuffer-mode-hook (lambda () (ibuffer-auto-mode 1)))
ibuffer
, चयन खो गया है।
यह करने के लिए सही तरीके से समर्थन से परिचित कराना है ibuffer
के लिए auto-revert-mode
। यह buffer-stale-function
उन बफ़र्स के लिए परिभाषित करके प्राप्त किया जा सकता है । यकीनन, चूंकि buffer-menu
यह उस सुविधा का समर्थन करता है, इसलिए इसे अपस्ट्रीम के लिए ibuffer
भी रखना अच्छा होगा , लेकिन यह अभी के लिए ऐसा प्रतीत नहीं होता है।
वैसे भी, यहाँ यह करने का एक तरीका है:
(defun my-ibuffer-stale-p (&optional noconfirm)
;; let's reuse the variable that's used for 'ibuffer-auto-mode
(frame-or-buffer-changed-p 'ibuffer-auto-buffers-changed))
(defun my-ibuffer-auto-revert-setup ()
(set (make-local-variable 'buffer-stale-function)
'my-ibuffer-stale-p)
(set (make-local-variable 'auto-revert-verbose) nil)
(auto-revert-mode 1))
(add-hook 'ibuffer-mode-hook 'my-ibuffer-auto-revert-setup)
नोट: सामान्य तौर पर, किसी को इसके लिए एक मूल्य को परिभाषित करने की आवश्यकता होगी revert-buffer-function
, लेकिन ibuffer
पहले से ही ऐसा होता है (यह निर्धारित है ibuffer-update
)
ibuffer-auto-mode
?
auto-revert-mode
टाइमर का उपयोग करता है, और ibuffer-auto-mode
उपयोग करता है post-command-hook
, इसलिए एक स्पष्ट अंतर है ; लेकिन अगर मैं एक दूसरे के लिए बेहतर था नहीं कह सकता।
ibuffer
बफ़र्स दूसरों की तरह व्यवहार करते हैं जब पुरानी सामग्री को ताज़ा करने की बात आती है, तो मुझे क्लीनर लगता है। इसके अलावा, मैं आम तौर पर post-command-hook
इस तरह से दुर्व्यवहार करना पसंद करता हूं : जब आप बफर में पूरी तरह से असंबंधित कुछ करने के लिए होते हैं तो यह वास्तव में ओवरकिल है। अंत में, यदि सामग्री को ताज़ा करने के लिए किसी प्रकार की कीस्ट्रोक की आवश्यकता होती है, तो यह अच्छी तरह से हो सकती है g
, जो सामग्री को अपडेट करने का स्पष्ट तरीका है। लेकिन दी गई, यह संभवतः एक दार्शनिक मुद्दा है :)
Reverting buffer `*Ibuffer*'.
रहता है। संदेश घुसपैठ योग्य है क्योंकि यह मिनीबफ़र में काम करने के दौरान मुझे बाधित करता रहता है। संदेश दिखाई देता है कि ibuffer
बफर दिखाई दे रहा है या नहीं।
(setq auto-revert-verbose nil)
, संभावित रूप से स्थानीय रूप से