बैकग्राउंड कलर जो भी हो, मैं फ्रिंज कलर कैसे सेट करूं?


12

मैं एक व्याकुलता-मुक्त मोड का उपयोग कर रहा हूं जो विशाल भँवरों का उपयोग करता है जिसे बफर कहा जाता है bzg-big-fringe-mode

समस्या यह है कि, इन झालरों में अक्सर पृष्ठभूमि की तुलना में एक अलग रंग होता है जो एक बदसूरत दृश्य प्रभाव देता है (अंत में चित्र देखें)।

मुझे इसे मैन्युअल रूप से ठीक करने में कोई समस्या नहीं है, जैसे कि फ्रिंज कलर को बैकग्राउंड कलर में सेट करके, जैसे:

(set-face-attribute 'fringe nil :background "#3F3F3F" :foreground "#3F3F3F")

समस्या यह है कि जब विषय बदलते हैं, तो फ्रिंज रंग ग्रे रहता है, भले ही वह नए विषय के लिए समझ में न आए।

क्या प्रोग्राम को पृष्ठभूमि के रंग में फ्रिंज सेट करने का एक तरीका है?

मुझे लगता है कि मुझे दो चीजें चाहिए:

  1. फ्रिंज बैकग्राउंड कलर को डिफॉल्ट बैकग्राउंड कलर में सेट करने की क्षमता।
  2. एक फ़ंक्शन जो थीम बदलने के लिए झुका हुआ है और जो 1. करता है।

मुझे लगता है कि मुझे 2 करने में सक्षम होना चाहिए) भले ही मेरे पास कोई एमएसीएस कौशल नहीं है, लेकिन मैं 1 कैसे करूँ)?

या यह किसी कारण से एक बुरा विचार है? यदि हां, तो एक बेहतर दृष्टिकोण क्या होगा?

यहाँ छवि विवरण दर्ज करें

जवाबों:


11

आधिकारिक तौर पर विषय को कस्टमाइज़ किया जाएगा ताकि फ्रिंज चेहरे को पृष्ठभूमि के चेहरे के समान रूप दिया जा सके। लाइनों के साथ एक चेहरे की युक्ति (fringe :inherit default)चाल करना चाहिए।

वैकल्पिक रूप से, आप इसे कोड स्निपेट का उपयोग करके मक्खी पर संशोधित कर सकते हैं:

(defun my-tone-down-fringes ()
  (set-face-attribute 'fringe nil
                      :foreground (face-foreground 'default)
                      :background (face-background 'default)))

एकमात्र समस्या यह है कि इसे हर विषय परिवर्तन पर लागू किया जाएगा। मुझे ऐसा कोई भी हुक नहीं मिल रहा है जो यह देख सके कि जो काम थोड़ा दुखद है, defadviceवह ठीक से काम भी नहीं करता। कम से कम Emacs 24.4 में नहीं


धन्यवाद। मैं सोमवार तक प्रतीक्षा करूँगा जब तक मामले में एसबी के पास समाधान नहीं होगा।
अनफिन कैट

1
क्या इस कोड को स्निपेट में इस्तेमाल न करने face-backgroundऔर न करने का कोई कारण है face-foreground?
कॉन्सटेंटाइन

वहाँ संपादित नहीं है।
वामासा

6

आप फ्रिंज रंग को शून्य पर सेट कर सकते हैं, जिस स्थिति में आपको किसी भी विषय परिवर्तन के बारे में चिंता करने की आवश्यकता नहीं है। मुझे अपने विन्यास में निम्नलिखित मिला है:

(set-face-attribute 'fringe nil :background nil)

और फ्रिंज बस गायब हो जाता है .... :)


0

किसी तरह 'fringeमेरे लिए काम करना बंद कर दिया, और अब यह करता है:

(set-face-attribute 'linum nil :background "gray19")
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.