2012-11-26 12 views
18

मैंने हाल ही में 23 से जीएनयू एमएक्स 24 का उपयोग करने के लिए स्विच किया है, और मुझे लगता है कि जब भी मैं घुमाता हूं * इनपुट/आउटपुट * बफर खुला होता है। जब भी मैं डीबग करता हूं, मैंने इसे सी-एक्स 0 के साथ मैन्युअल रूप से बंद कर दिया है। क्या कोई मुझे सही चर पर इंगित कर सकता है जिसे डिफ़ॉल्ट रूप से इस बफर को प्रदर्शित करना बंद करने के लिए कॉन्फ़िगर करने की आवश्यकता है?गड़बड़ में इनपुट/आउटपुट * बफर को कैसे बंद करें

उत्तर

7

मुझे यह समस्या भी है। स्रोत कोड पर त्वरित रूप से देखने के बाद, समस्या यह प्रतीत होती है कि जीयूडी अपनी अधिकांश खिड़कियों को समर्पित करता है (यानी, यह set-window-dedicated-p उन पर कॉल करता है)। एक समर्पित खिड़की वह है जिसे से दूर नहीं किया जा सकता है। मुझे लगता है कि अधिक से अधिक युवा बंदूकें कई विंडोज़ मोड में जीयूडी का उपयोग कर रही हैं और जीयूडी को अपने खिड़की के लेआउट का प्रबंधन करना चाहते हैं, और हममें से जो लोग मैन्युअल रूप से ऐसा करना चाहते हैं, वे अल्पसंख्यक हैं। ऐसा लगता है कि gdb-mi.el में कुछ भी स्पष्ट नहीं है जो इस व्यवहार को अक्षम करता है (उदाहरण के लिए, gdb-set-window-buffer हमेशा set-window-dedicated-p से t पर चलने वाली सभी विंडो के लिए ऐसा लगता है)।

अभी के लिए, this solution जितना मैं उपयोग कर रहा हूं उतना ही कम है - मैं विंडो समर्पण को मैन्युअल रूप से निष्क्रिय करता हूं। हालांकि, यह suboptimal लगता है। जीयूडी को मैन्युअल रूप से विंडो लेआउट का प्रबंधन करने के लिए कुछ तरीका होना चाहिए। This question is related.

+0

किसी कारण से, आपका फिक्स केवल थोड़ी देर के लिए काम करता है - फिर खिड़की समर्पित मोड में फिर से पॉप अप हो जाती है, हर बार जब यह एक नया आउटपुट प्राप्त करता है। –

12

नए emacs रिलीज में 'gud-gdb' है जो gdb/emacs इंटरैक्शन (कोई समर्पित-विंडोज़ और नहीं I/O बफर) के पुराने व्यवहार को लागू करता है। आप MX gud-gdb जब आप इसका इस्तेमाल कॉल करने के लिए नहीं करना चाहते हैं आप MX gdb के लिए उपनाम परिभाषित कर सकते हैं

+0

thanx .. डिफ़ॉल्ट जीडीबी व्यवहार अवांछित है, यह देखते हुए कि एम-एक्स जीडीबी-कई-खिड़कियां हमेशा के लिए मौजूद हैं .. – vrdhn

3

आप इस तरह कुल मिलाकर खिड़की समर्पण निष्क्रिय कर सकते हैं: (Emacs 24.4+ में)

(defun set-window-undedicated-p (window flag) 
"Never set window dedicated." 
flag) 

(advice-add 'set-window-dedicated-p :override #'set-window-undedicated-p) 

ध्यान दें कि यह पहले से ही समर्पित विंडोज़ को प्रभावित नहीं करता है।

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