कैसे बताएं कि कौन सा रंग वर्तमान में एक विम सत्र का उपयोग करता है


107

आप जारी करके विम कलर स्कीम सेट कर सकते हैं

:colorscheme SCHEME_NAME

लेकिन, विचित्र रूप से पर्याप्त है, आप जारी करके वर्तमान में उपयोग की गई योजना प्राप्त नहीं कर सकते

:colorscheme

परिणामस्वरूप " E471: Argument required"। मैं आउटपुट में सूचीबद्ध रंग योजना भी नहीं देखता :set

तो आप वर्तमान रंग योजना का उपयोग करने के बारे में क्या जानते हैं (अन्य विषयों को मैन्युअल रूप से स्विच करने के अलावा जब तक आप इसे पहचान नहीं लेते हैं)?

जवाबों:


159

कोई गारंटीकृत तरीका नहीं है (रंग योजना के रूप में अनिवार्य रूप से विम कमांडों का एक भार है जो खट्टा होता है)। हालांकि, सम्मेलन द्वारा एक चर होना चाहिएg:colors_name जो रंग योजना के नाम पर सेट है।

इसलिए, यह प्रयास करें:

echo g:colors_name

यदि आपको E121 मिलता है, तो यह या तो खराब तरीके से बनाई गई रंग योजना है या यह डिफ़ॉल्ट है।

ऐसा करने का एक बेहतर तरीका है (विम के हाल के संस्करणों के लिए):

function! ShowColourSchemeName()
    try
        echo g:colors_name
    catch /^Vim:E121/
        echo "default
    endtry
endfunction

फिर करो:

:call ShowColourSchemeName()

यदि यह "डिफ़ॉल्ट" कहता है, तो :colorscheme defaultदेखें और देखें कि क्या रंग बदलते हैं। यदि वे ऐसा करते हैं, तो आप एक विकृत रंग योजना का उपयोग कर रहे हैं और ऐसा बहुत कुछ नहीं है जब तक आप इसे पहचानने से मैन्युअल रूप से स्विच करने वाले थीम के अलावा इसके बारे में नहीं कर सकते।

चर यहाँg:colors_name प्रलेखित है :

:help colorscheme

क्या "defaultगायब होने के बाद समापन डबल उद्धरण है?
बेंजामिन डब्ल्यू।

38

सबसे अच्छा विकल्प का उपयोग करना है :coloया :colorschemeवर्तमान vim में और वास्तविक colorcheme पाठ दिखाया गया है। कृपया देखें,

:help colorscheme 

अधिक जानकारी के लिए।


3
यह मेरे लिए काम नहीं करता है। यह कहता है default। और रंग योजना जब मुझे मिलती है तो मैं :colo defaultइसे पूरा करता हूं ।
डेव

4

DrAl के उत्तर का एक-पंक्ति संस्करण:

let current_scheme = get(g:, 'colors_name', 'default')

get()समारोह करना प्रारंभ कर देगा 'default'यदि चर अभी तक सेट नहीं किया गया।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.