विम यूनिक्स सिस्टम के लिए एक महान टेक्स्ट एडिटर है, लेकिन इसे बाहर निकलना मुश्किल है।
एक पूरा प्रोग्राम लिखें जो आउटपुट देगा :q
वीम से बाहर निकलने के लिए । इसके बाद इनपुट की एक पंक्ति पढ़नी चाहिए, क्योंकि तब इसे या तो बैश प्रॉम्प्ट दिया जाएगा, जिस स्थिति में निकास सफल रहा, या एक त्रुटि, जिस मामले में सहेजे नहीं गए परिवर्तन हैं।
बैश प्रॉम्प्ट यह होगा:
E37@vimmachine: /var/override)
जबकि त्रुटि यह होगी:
E37: No write since last change (add ! to override)
बैश प्रॉम्प्ट दिए जाने पर, प्रोग्राम का काम पूरा हो जाता है, और इसे कोई और आउटपुट नहीं देना चाहिए (व्हॉट्सएप को छोड़कर)।
त्रुटि दिए जाने पर, आपके प्रोग्राम को बेतरतीब ढंग से होना चाहिए (अर्थात प्रत्येक संभावना को चुने जाने की गैर-शून्य संभावना है) आउटपुट :q!
, बिना बचत के बाहर निकलने के लिए, या :x
, बचाने और बाहर निकलने के लिए।
यह प्रत्येक भाषा की जीत में कोड-गोल्फ इतना कम बाइट्स है !
E37: No write since last change
? यही है, एक एल्गोरिथ्म एक त्रुटि संदेश से एक संकेत को कैसे अलग कर सकता है?
E37@vimmachine: /var/override)
:x
बाहर निकलने के लिए उपयोग नहीं करते । किसी दिन :X
जब आप भ्रमित होते हैं, तो आप गलती से हिट करेंगे । आखिरकार आप :wq
अपनी फाइल को फिर कभी नहीं देख पाएंगे।
:x
था कि यह एक चीज़ है! मैंने हमेशा इस्तेमाल किया है:wq
:)