উইম ইউনিক্স সিস্টেমগুলির জন্য দুর্দান্ত পাঠ্য সম্পাদক, তবে এটি থেকে বেরিয়ে আসা কঠিন হওয়ার জন্য কুখ্যাত।
একটি সম্পূর্ণ প্রোগ্রাম লিখুন যা :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
:)