मैं एकल एमएसीएस बफर का पृष्ठभूमि रंग कैसे बदल सकता हूं?


8

मैं SQL इंटरैक्टिव बफ़र बनाना चाहता हूं जो उत्पादन DBs से बहुत, बहुत स्पष्ट रूप से जुड़ा हुआ है, इसलिए मेरा विचार बफर की पृष्ठभूमि को एक गहरे लाल रंग में बदलना था।

set-background-colorहालांकि काम नहीं करता है; यह सभी फ़्रेमों के रंग को निर्दिष्ट रंग में सेट करता है।

मैं सिर्फ एक बफर की पृष्ठभूमि कैसे बदल सकता हूं?

जवाबों:


9

मैंने इसके लिए एक emacs lisp पैकेज बनाया है: https://github.com/vic/color-theme-buffer-local यह स्थानीय रूप से थीम चेहरों को स्थापित करने के लिए Emacs के फेस रीमैपिंग का उपयोग करता है।


(require 'color-theme-buffer-local)
(add-hook 'java-mode-hook (lambda nil (color-theme-buffer-local 'color-theme-robin-hood (current-buffer)) ))


6

आप नहीं कर सकते।

पृष्ठभूमि का रंग आम तौर पर फ्रेम-विशिष्ट होता है।

आप defaultचेहरे के बैकग्राउंड के रंग को सेट कर सकते हैं set-face-background, जैसे कि विशिष्ट फ्रेम का उपयोग करना ।

(set-face-background 'default "#CCCCCC" (window-frame (frame-selected-window))

फ्रेम अनुकूलन आमतौर पर फ्रेम मापदंडों के माध्यम से नियंत्रित होते हैं । अब, यदि आप background-colorफ़्रेम पैरामीटर के लिए बारीकी से देखते हैं, तो आप देखेंगे कि डिफ़ॉल्ट पृष्ठभूमि का रंग defaultचेहरे से लिया गया है - यही कारण है कि ऊपर के ऐस्पेल का प्रभाव पड़ता है।

विगत कि, ऐसा लगता है कि आप एक बफर बैकग्राउंड रंग में आ सकते हैं यह मामूली-मोड buffer-face-mode(23.1 में जोड़ा गया) का उपयोग करके है - हालांकि यह केवल एक बफर के पाठ के लिए पृष्ठभूमि को बदलता है , न कि पूरी पृष्ठभूमि को।


1

मैं यह कोशिश नहीं की, लेकिन http://www.emacswiki.org/emacs/BufferBackgroundColor संभव समाधान की तरह लगता है।


अच्छा विचार है, लेकिन यह ओवरले का उपयोग करता है, इसलिए यह केवल पाठ की पृष्ठभूमि को बदलता है।
क्रिस आर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.