मैं पहले से ही सम्मिलित मोड में एक महत्वपूर्ण संयोजन को मैप कर सकता हूं:
:inoremap abc <do stuff>
हालाँकि, इसकी कुछ कमियाँ हैं:
अनुक्रम के एक आंशिक संस्करण को टाइप करते समय, जैसे कि
ab
, वर्ण वास्तव में थोड़े समय के लिए प्रदर्शित नहीं होते हैं, क्योंकि यह "प्रतीक्षा" है यह देखने के लिए कि क्या आप पूर्ण कमांड टाइप करने जा रहे हैं। यह अवांछनीय है; यदि श्रृंखला का एक आंशिक विकल्प डाला जाता है, तो मैं बिना रुके पत्रों की एक श्रृंखला को मैप करना चाहता हूं।यदि मैं टाइप करता हूं
ab
, तो विराम दें (और प्रतीक्षा करें जब तक कि पात्रों को वास्तव में उपरोक्त बिंदु में वर्णित नहीं किया गया है), तब टाइप करेंc
, कमांड निष्पादित नहीं किया गया है। मैं चाहता हूं कि कमांड को क्रियान्वित किया जाए चाहे मैं कितनी भी प्रतीक्षा करूं।
मैं एक का उपयोग करेगा iab
, लेकिन यह काम नहीं करता क्योंकि:
- यह स्ट्रिंग के बाद एक स्थान में प्रवेश करने की आवश्यकता है
- मैं इसके साथ मनमाना आदेशों को निष्पादित नहीं कर सकता, केवल पाठ की एक स्ट्रिंग सम्मिलित करता हूं।
क्या कमांड या कीस्ट्रोक्स को निष्पादित करने का कोई तरीका है यदि एक निश्चित स्ट्रिंग को डालने के मोड में डाला जाता है, बिना नक्शे का उपयोग किए (जो हर बार जब मैं टाइप करता हूं a
और अगर मैं बहुत लंबा इंतजार करता हूं तो काम नहीं करता)?
ab<any key>
।
:cnoremap abc <do stuff>
...