এনবি যদিও পূর্ববর্তী দুটি উত্তরই সমস্যার সমাধান করতে পারে তা নির্ধারণ করার জন্য আমাকে যথেষ্ট তথ্য দিয়েছিল (এবং আমার কাছ থেকে প্রাপ্ত অগ্রগতি অর্জন করেছিল), তবে উভয়ই পুরোপুরি উত্তর দেয়নি। যাতে একই প্রশ্নযুক্ত অন্যদের গবেষণা না করতে হয়, আমি নিজের উত্তর যুক্ত করছি। তবে, @googletorp বা @Az এই তথ্য অন্তর্ভুক্ত করার জন্য যদি তাদের উত্তরগুলি সম্পাদনা করে তবে আমি আমার উত্তরটি সরিয়ে দেব এবং সেগুলি গ্রহণ করব।
আউটপুটটি আপনাকে :h feature-list
ব্যবহার করতে সক্ষম হতে হবে has("win32")
এবং has("macunix")
এটির পরামর্শ দেয় তবে ওএস এক্স অন্তর্ভুক্ত থাকা ভিমের সংস্করণে কোনও কাজ করে না ((এটি অবশ্য ম্যাকভিমে কাজ করে))
এখানে আমি ব্যবহার করে শেষ করেছি:
if has("win32")
"Windows options here
else
if has("unix")
let s:uname = system("uname")
if s:uname == "Darwin\n"
"Mac options here
endif
endif
endif
নোট যেটি has("win32")
আমার পক্ষে কাজ করেছে, এমনকি 64৪ বিট উইন্ডোতে bit৪ বিট ভিমে।
আপনি ইউনিক্সের অন্যান্য স্বাদগুলি আলাদা uname
করতে if has("unix")
ব্লকের মধ্যে একই রকম পরীক্ষাগুলি ব্যবহার করতে পারেন । আপনার সাথে কী তুলনা করতে হবে তা দেখতে কেবল চালনা করুন uname
বা uname -a
কমান্ড-লাইন থেকে s:uname
। :h matchstr()
আপনার uname
আউটপুটটির মাত্র একটি অংশের তুলনা করতে হবে কিনা তাও দেখুন ।