जब मैं विम शुरू करूं, तो मैं निम्नलिखित परिदृश्य में एक ऑटोकैमड चलाना चाहता हूं:
- कोई फ़ाइल नाम निर्दिष्ट नहीं है।
- जब फाइल नई हो।
- जब फ़ाइल मौजूद है, लेकिन पूरी तरह से खाली है।
उपरोक्त तीनों मामलों में मैं एक ऑटोकैमड चलाना चाहता हूं; विशेष रूप से, मैं केवल उपरोक्त परिदृश्यों के लिए स्वचालित रूप से इन्सर्ट मोड शुरू करना चाहूंगा (और नहीं जब मैं एक ऐसी फ़ाइल खोल रहा हूँ जो पहले से मौजूद है और रिक्त नहीं है)।
अपडेट करें:
मैंने निम्नलिखित को अपने में रखने की कोशिश की है _vimrc
, लेकिन कोई भी भाग्य नहीं है (प्लस मुझे यकीन नहीं है कि क्या कोई ऐसा कार्य है जो किसी फ़ाइल में वर्णों की संख्या को गिनता है (यह देखने के लिए कि क्या यह शून्य है) इसे खोलने से पहले:
if @% == "" || filereadable(@%)
autocmd BufRead,BufNewFile * startinsert
endif
normal
इसके बजाय का उपयोग करके अनुकूलित किया जा सकता है exec
।
if
कथन आटोक्मड के आस-पास नहीं होना चाहिए , अगर आटोक्मड के अंदर होना चाहिए , तो यह ऑटोकैड ट्रिगर होने पर हर बार चलाया जाएगा।