2009-07-02 17 views
50

मैं Emacs चला रहा हूं, C++ मोड और PHP मोड में फ़ाइलों को संपादित कर रहा हूं। मुझे एक अवधारणा के रूप में हाइलाइटिंग सिंटैक्स पसंद है, लेकिन डिफ़ॉल्ट रंग एक झगड़ा है। मैं मुश्किल से उनमें से कुछ पढ़ सकता हूं: रास्ता बहुत अंधेरा है। उनके मूल्यों को बदलने का सबसे आसान तरीका क्या है? मुझे वेब पर इसके बारे में कुछ भी नहीं मिल रहा है। मुझे द्विआधारी बदलना भी बुरा नहीं लगता क्योंकि मैं अपने स्वयं के इमाक्स संकलित कर रहा हूं। मैं बस उस स्थान को ढूंढना चाहता हूं जहां नीला # 0000FF है और इसे उदाहरण के लिए #AAAAFF में बदलें।रंगों को हाइलाइट करने वाले Emacs वाक्यविन्यास बदलें

उत्तर

61

मुझे इस तरह की चीज़ के लिए रंग-थीम का उपयोग करना सबसे आसान लगता है।

https://www.emacswiki.org/emacs/ColorThemes

लेकिन अगर आप ऐसा करने के लिए, कृपया उल्लंघन पाठ पर कर्सर डाल नहीं करना चाहते, M-x customize-face मारा। यह उस चेहरे पर डिफ़ॉल्ट होना चाहिए जो कर्सर खत्म हो गया है।

http://www.gnu.org/software/emacs/manual/html_node/emacs/Specific-Customization.html

+0

एक अच्छा [रंग विषय] (https://github.com/bmarcot/color- विषय-pomgranate-विस्फोट)। – Benoit

+0

समस्या यह है कि, रंगों में से एक जिसे मैं आसानी से नहीं पढ़ सकता (यह एक गहरा नीला है जो काला पृष्ठभूमि पर व्यावहारिक रूप से अदृश्य है) जब भी मैं 'एम-एक्स कस्टमाइज़-फेस' टाइप करता हूं तो जो कुछ भी टेक्स्ट प्रदर्शित किया जा रहा है! (साथ ही, ColorTheme लिंक में कोई समस्या है) – Michael

+0

वैसे मैंने काम करने वाले व्यक्ति को लिंक ठीक करने का प्रयास किया, लेकिन जब यह इस पृष्ठ से पीछा किया जाता है तो यह * अभी भी काम नहीं करता !!! – Michael

25

2 तरीके - आप पैकेज रंग विषय, अच्छा योजनाओं के बहुत सारे चयन करने के लिए है और हाथ से करना आसान है, जो स्थापित कर सकते हैं। द्वारा हाथ इस तरह दिखता है (अपने .emacs में)

(custom-set-faces 
    custom-set-faces was added by Custom. 
    If you edit it by hand, you could mess it up, so be careful. 
    Your init file should contain only one such instance. 
    If there is more than one, they won't work right. 
    '(default ((t (:inherit nil :stipple nil :background "lightyellow2" :foreground "gray20" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight bold :width normal :family "liberation mono")))) 
    '(background "blue") 
    '(font-lock-builtin-face ((((class color) (background dark)) (:foreground "Turquoise")))) 
    '(font-lock-comment-face ((t (:foreground "MediumAquamarine")))) 
    '(font-lock-constant-face ((((class color) (background dark)) (:bold t :foreground "DarkOrchid")))) 
    '(font-lock-doc-string-face ((t (:foreground "green2")))) 
    '(font-lock-function-name-face ((t (:foreground "SkyBlue")))) 
    '(font-lock-keyword-face ((t (:bold t :foreground "CornflowerBlue")))) 
    '(font-lock-preprocessor-face ((t (:italic nil :foreground "CornFlowerBlue")))) 
    '(font-lock-reference-face ((t (:foreground "DodgerBlue")))) 
    '(font-lock-string-face ((t (:foreground "LimeGreen")))) 

...

आदि आदि

तुम भी टाइप कर सकते हैं

`M-x customize-face RET` 

आप दे देंगे जो सेट करने के लिए सभी अनुकूलन, आखिरकार आपके .emacs में समाप्त हो जाते हैं।

14

कर्सर को एक चेहरे ("रंग") पर रखें जिसे आप बदलना चाहते हैं। सी-यू सी-एक्स = दबाएं। यह आपको बताएगा कि उस स्थिति में कौन से चेहरे मौजूद हैं, और यह आपको इसे अनुकूलित करने के लिए क्लिक करने देगा। अपने अनुकूलन सहेजें।

+0

मैं अनुकूलन स्क्रीन में जो दर्ज करना चाहता हूं उसके बारे में अनजान हूं।एक बात के लिए, कुछ महत्वपूर्ण चीजें एक फ़ॉन्ट रंग में है जिसे मैं नहीं पढ़ सकता (यही वह है जो मैं पहली जगह में ठीक करने की कोशिश कर रहा हूं!) और दूसरा, मुझे रंग या किसी भी स्पष्ट संदर्भ को नहीं दिख रहा है उन्हें बदलने के लिए। – Michael

+0

@ माइकल: यदि आप कस्टमाइज़ में टेक्स्ट नहीं पढ़ सकते हैं, तो इसे एमिक्स सत्र से प्रयोग करें जो कुंवारी है: 'emacs -Q' का उपयोग करके Emacs प्रारंभ करें। यदि आप टेक्स्ट पढ़ सकते हैं तो आपको वर्तमान में आपके द्वारा अनुकूलित किए जा रहे चेहरे को परिभाषित करने के लिए उपयोग की जाने वाली विशेषताओं के लिए चेकबॉक्स देखने में सक्षम होना चाहिए। सभी विशेषताओं को दिखाने के लिए 'सभी विशेषताओं को दिखाएं' लिंक पर क्लिक करें। आवश्यकतानुसार किसी भी विशेषता को चेक या अनचेक करें। जब आप एक बॉक्स चेक करते हैं तो आप उसका वर्तमान मूल्य देखते हैं। यदि विशेषता 'पृष्ठभूमि' या' अग्रभूमि 'की जांच की जाती है तो आप उस विशेषता के लिए एक अलग रंग चुनने के लिए वर्तमान मान के बगल में' चुनें 'बटन का उपयोग कर सकते हैं। – Drew

2

यदि आपको बिल्कुल रंग हाइलाइटिंग की परवाह नहीं है, या उपरोक्त में से कोई भी उत्तर आपके लिए काम नहीं करता है (या पता लगाने में बहुत अधिक समय और प्रयास करें), तो यहां एक बहुत ही सरल समाधान है जो रंगों से छुटकारा पायेगा कुल मिलाकर।

टाइपिंग निम्नलिखित रंग से छुटकारा मिल जाएगा:

M-x global-font-lock-mode

तुम भी आप वास्तव में सब कुछ ऊपर जवाब में से किसी भी प्रयास करने के लिए अपनी स्क्रीन देखने के लिए अनुमति देने के लिए एक अंतरिम कदम के रूप में यह कर सकते हैं। मेरे मामले में यह बहुत उपयोगी था क्योंकि पाठ के कुछ महत्वपूर्ण टुकड़ों का रंग जो मुझे रंग बदलने की इजाजत देता था, वे स्वयं लगभग अदृश्य थे - उदाहरण के लिए, एम-एक्स का संकेत।

आप परिवर्तन स्थाई होना चाहते हैं, तो आप अपने .emacs फाइल करने के लिए इस जोड़ सकते हैं:

(setq-default global-font-lock-mode nil)

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