के साथ पूर्ण मोड डालें Ctrl-n
मुझे नहीं पता कि क्या आप अपने स्वयं के फ़ंक्शन (omnifunc की तरह) लिखने के बाहर WORD पूरा कर सकते हैं। हालाँकि, यदि आप यह नहीं समझते हैं कि आपके वर्णों से मेल खाने के लिए कोई शब्द क्या है, तो आप उन वर्णों को 'आइसकॉर्ड' में जोड़ सकते हैं
उदाहरण के लिए, मेरा 'iskeyword' डिफॉल्ट करता है
iskeyword=@,48-57,_,192-255
मैंने इसके बाद इसे अतिरिक्त वर्णों के ऊपर सेट किया
:set iskeyword=@,48-57,_,192-255,{,},,,(,),^
यह कहते हैं {
, }
, ,
, (
, )
, और ^
अक्षर हैं जो एक शब्द बनाने के लिए (क्या पहले से ही किया था के अलावा)
उसके बाद, टाइपिंग {
Ctrl-nपूरी हो जाती है {0,1}^n
(एक फ़ाइल में केवल उन्हीं दो उदाहरणों को दिया गया है)
नोट: यह :set iskeyword+=
केवल अतिरिक्त सामान के साथ करना बेहतर होगा , इस प्रकार है:
:set iskeyword+={,},,,(,),^
इस तरह, आप मौजूदा सेटिंग में नए वर्णों को जोड़कर पहले से ही कुछ अन्य चीजें बनाते हैं जो एक कीवर्ड बनाते हैं।
संक्षिप्तीकरण के साथ विस्तार
हालांकि मूल प्रश्न का हिस्सा नहीं है, एक और समान (ईश) कार्यक्षमता एनवीआई या वीआईएम की संक्षिप्त कार्यक्षमता का उपयोग करने के लिए है। कीवर्ड पूरा होने के विपरीत, संक्षिप्तीकरण को अंतिम पाठ की तरह नहीं देखना है। इसके अलावा, कीवर्ड पूरा होने के विपरीत, संक्षिप्तीकरण स्वचालित रूप से विस्तारित होते हैं, केवल जब आप उनके लिए पूछते हैं। आपके लक्ष्य और उपयोग के आधार पर, यह बहुत सारे टाइपिंग को बचा सकता है, और आपको पूरा करने के लिए बिना रुकावट के बहुत सारे पाठ टाइप करने देता है।
संक्षिप्तिकरण कीवर्ड के एक छोटे समूह के लिए अच्छे हैं और जब आप उन्हें समय से पहले परिभाषित कर सकते हैं (वे आपके पाठ से नहीं खोजे जाते हैं जैसे शब्द पूरा होता है)।
संक्षिप्ताक्षर के पीछे मूल विचार यह है कि आप किसी शब्द को किसी अन्य पाठ से जोड़ते हैं, और किसी भी समय संपादक यह पता लगाता है कि आपने वह शब्द टाइप किया है (यानी, आपके द्वारा लिखा गया पाठ सफेद स्थान से घिरा हुआ है, जहाँ पूर्ण क्रिया व्हाट्सएप को जोड़ रही है। कीवर्ड या इन्सर्ट मोड छोड़ना), इसे उस दूसरे टेक्स्ट से बदल दिया जाता है।
मान लीजिए कि आपकी फ़ाइल में {0,1}^n
बहुत कुछ है, और इसके अन्य रूपांतर नहीं हैं। टाइपिंग जो कि एक उंगली का खिंचाव है, इसलिए हो सकता है कि आप केवल टाइप करना चाहते हैं 01n
या myvalue
इसका विस्तार करना चाहते हैं {0,1}^n
, लेकिन केवल तभी 01n
या जब myvalue
यह अपने आप में एक शब्द है (यानी, यदि यह किसी अन्य शब्द के भीतर दिखाई देता है, तो नहीं बदल दें)।
एनवीआई में, आप कर सकते हैं :abbrev 01n {0,1}^n
। आप विम में भी ऐसा कर सकते हैं, लेकिन मैं :iabbrev 01n {0,1}^n
केवल मोड डालने के लिए विस्तार को प्रतिबंधित करने के लिए उपयोग करने की सलाह देता हूं ।
फिर, यदि आपके पास कुछ पाठ है (जहां |
कर्सर का प्रतिनिधित्व करता है)
We find that the value 01n|
और फिर आप मारते हैं Escया Spaceया Tabअन्यथा अभिशापों को स्थानांतरित करते हैं, पाठ प्रतिस्थापित हो जाता है, और आपके पास (अंतरिक्ष का उपयोग करने के लिए उदाहरण)
We find that the value {0,1}^n |
और आप बिना किसी रुकावट के टाइपिंग जारी रख सकते हैं।
यह आमतौर पर सामान्य-प्रकार के ऑटो-सही (उदाहरण के लिए 'तेह' को 'में' बदलते हुए) के लिए उपयोग किया जाता है, लेकिन यह आपके उपयोग के मामले के लिए समान रूप से उपयोगी हो सकता है, फिर से यह मानते हुए कि आप समय से पहले मैपिंग स्थापित करने में कोई आपत्ति नहीं करते हैं।
:abbreviate
इसके बजाय आप बेहतर उपयोग कर सकते हैं। उदाहरण के लिए,:ab 01n {0,1}^n
आदेश जारी करें । फिर, हर बार जब आप01n
इन्सर्ट मोड में एक स्वतंत्र शब्द के रूप में टाइप करते हैं, तो इसका विस्तार होगा{0,1}^n
।