विशेष रूप से, मैं केवल मेकप्रग विकल्प सेट करना चाहता हूं अगर इसे अभी तक बदला नहीं गया है। इसे करने का कोई तरीका?विम में, क्या कोई तरीका है: केवल एक विकल्प सेट करें यदि यह अभी तक सेट नहीं है?
5
A
उत्तर
4
आप &
का उपयोग कर किसी विकल्प की सामग्री तक पहुंच सकते हैं।
if &makeprg == ""
set makeprg=new_value
endif
--- संपादित करें ---
जेवियर अच्छा बिंदु बनाता है कि makeprg
का डिफ़ॉल्ट मान नहीं है: यदि विकल्प "खाली" इस तरह है तो इस मामले में आप की जांच कर सकता एक खाली स्ट्रिंग। तुम्हें पता है, set {option}&
उपयोग कर सकते हैं उसके डिफ़ॉल्ट के लिए एक विकल्प सेट करें कि निम्नलिखित मान बदलने के लिए केवल तभी वर्तमान मान डिफ़ॉल्ट है इस्तेमाल किया जा सकता:
function! SetMakePrg(new_value)
let cur_value=&makeprg
" let new_val=a:new_value
set makeprg&
if &makeprg == cur_value
" cur_value is default: set to new value
exe "set makeprg=" . a:new_value
else
" cur_value is not default: change it back
exe "set makeprg=" . cur_value
endif
endfunction
तो बुला call SetMakePrg("my_make")
विकल्प को संशोधित करेगा ही अगर यह नहीं है वर्तमान में डिफ़ॉल्ट।
संबंधित मुद्दे
- 1. विम इतिहास क्या सेट करता है?
- 2. चर के साथ विम विकल्प सेट करना
- 3. स्ट्रिंग में वर्णों का केवल एक सेट सेट है
- 4. क्या यह तालिका केवल "तालिका में" जुड़ना संभव है यदि वह तालिका अभी तक शामिल नहीं है?
- 5. क्या यह जांचने का कोई तरीका है कि अलार्म पहले से सेट है या नहीं?
- 6. क्या कोई अंतर्निहित Emacs Lisp फ़ॉर्म केवल एक चर सेट करने के लिए है यदि यह अनबाउंड है?
- 7. स्प्रिंग - केवल एक संपत्ति सेट करें यदि मान शून्य नहीं है
- 8. यदि मेरे पास --no-tag विकल्प सेट
- 9. क्या यह बताने का कोई तरीका है कि एक एंड्रॉइड डिवाइस केवल वाईफाई है या नहीं?
- 10. क्या कोई संकलक समर्थन अभी तक है?
- 11. यदि "सूची" एक मोनॉयड है, तो इसका "सेट" क्या है?
- 12. क्या कोई सेट बनाने का कोई त्वरित तरीका है?
- 13. विम: सेट और फ़ाइलप्रकार
- 14. क्या LINQ में मान सेट करने का कोई तरीका है?
- 15. पायथन में - ऑपरेटर जो एक सेट परीक्षण के लिए उपयोग करता है यदि कोई ऑब्जेक्ट सेट
- 16. यदि यह मौजूद नहीं है तो कोई सरणी में कोई तत्व पुश करें (कोई डुप्लीकेट नहीं)
- 17. यदि लक्ष्य अभी तक शुरू नहीं हुआ है तो जावा में Thread.join() का व्यवहार क्या है?
- 18. यदि(), और अगर() सी ++ में विकल्प (क्या यह एआई है?)
- 19. क्या हैशसेट्स को हैश मैप में चाबियाँ मिल सकती हैं? यदि कोई विकल्प नहीं है तो
- 20. क्या सी # फ़ील्ड केवल पढ़ने के लिए कोई लाभ है यदि यह उचित है?
- 21. क्या यह सिम योग्य है? क्या कोई बेहतर विकल्प है?
- 22. क्या रिमोट-विशिष्ट .gitignores सेट करने का कोई तरीका है?
- 23. कोई संपत्ति सेट नहीं होने पर निर्माण में विफल होने का आसान तरीका क्या है?
- 24. समुद्रतट अभी भी एक वैध विकल्प है?
- 25. क्या टास्कबार में Pygame आइकन सेट करने का कोई तरीका है? set_icon() केवल वास्तविक विंडो
- 26. वितरण प्रमाणपत्र त्रुटि: "यह प्रमाणपत्र अभी तक मान्य नहीं है।"
- 27. क्या न्यूनतम रूबीजमेम दर्पण (केवल अंतिम संस्करणों के साथ) सेट करने का कोई तरीका है
- 28. क्या कोई तरीका है कि मैं अभी भी अपने एएसपी.नेट एमवीसी 2 परियोजनाओं पर app_offline.htm का उपयोग कर सकता हूं? यदि नहीं, तो क्या कोई वैकल्पिक तरीका है?
- 29. अजगर xlutils: यह सच है = formatting_info अभी तक लागू नहीं
- 30. आंतरिक त्रुटि: पुनः प्राप्त रिसीवर क्लास अभी तक सेट नहीं है
मुझे यकीन नहीं है कि मेकप्रग का डिफ़ॉल्ट मान खाली है, मुझे लगता है कि डिफ़ॉल्ट 'मेक' है (लेकिन यह ओएस, आदि के आधार पर भिन्न हो सकता है)। 'वर्बोज़ सेट मेकप्रग?' रिटर्न मेकप्रग = फ़ाइल नाम के बिना बना देता है मुझे लगता है कि इसका मतलब है कि यह डिफ़ॉल्ट मान है। –