একটি ভিআইএম প্লাগইন তৈরি করতে কী অনুসরণ করবেন?


11

আমার প্রশ্ন তাই সহজ। শুধু ভিআইএম তৈরি করতে ভিএম স্ক্রিপ্টিং শিখাই কি ভাল ধারণা বা এটির জন্য আমাদের আরও কয়েকটি গৃহীত ভাষা গ্রহণ করা উচিত।

উদাহরণস্বরূপ, এই লিঙ্কটি একটি ইউটিউব ভিডিও খুলবে যা দেখায় যে ভিম প্লাগইনগুলি তৈরি করতে পাইথন কীভাবে ব্যবহার করতে হয়।

ভিম স্ক্রিপ্টগুলি সম্পূর্ণ কার্যকর হয় না যদি না কেউ কেউ কিছু ভিআইএম প্লাগইন তৈরি করতে চায় inte তাহলে কি এমন কোনও বিশেষ জিনিস রয়েছে যা কেবলমাত্র ভিএম স্ক্রিপ্টগুলি ব্যবহার না করা ছাড়া করা যায় না?


2
নোট করুন যে কোনও লোক কোনও প্লাগইন তৈরি বা বিতরণ না করেই তাদের ভিমটি কনফিগার করতে (খুব ভালভাবে) ভিমস্ক্রিপ্ট ব্যবহার করেন।
ভ্যানল্যাসার

উত্তর:


12

আমার প্লাগইনগুলি ভিএমএলে 99%। কারণটি হ'ল যেখানে ভিম ইনস্টল করা আছে সেখানে ভিএমএল উপলব্ধ। এটি অন্যান্য ভাষার সাথে আরও জটিল - উদাহরণস্বরূপ, আমি বিরল যেখানে উইম ব্যবহার করি সেই উইন্ডোজ বাক্সগুলিতে পাইথন ইনস্টল করেছি।

অবশ্যই ভিএমএল জটিল, এটি অনেক দুর্দান্ত বৈশিষ্ট্য হারিয়েছে, তবে কমপক্ষে, বহনযোগ্য কিছু পাওয়া সহজ।

ভিএমএলে থাকা 1% হ'ল যখন আমার বাহ্যিক এপিআইয়ের সাথে ইন্টারঅ্যাক্ট করতে হবে যা পাইথন বাইন্ডিংগুলি সরবরাহ করে।

বিটিডাব্লু, আপনি ভিএমএল সম্পর্কিত যা কিছু শিখেন সেগুলি আপনি যেমন কমান্ডের সাথে খেললে ইন্টারেক্টিভ ব্যবহার করতে পারেন :substitute। বেশিরভাগ ম্যাপিংস বা ম্যাক্রোগুলির পাইথনের দরকার নেই।


1
আমি আসলে ভিএমএলটিকে দেখতে পাই না umbers অবশ্যই, আমি সম্মত হই যে এটিতে পাইথনের মতো উচ্চ স্তরের ভাষার দুর্দান্ত বৈশিষ্ট্য এবং কার্যকারিতা নেই, তবে এটির সাথে কিছু সময় কাজ করার পরে, আমি ভিএমএলকে কাজ করতে বেশ আনন্দদায়ক বলে মনে করি। আমি মনে করি ভিএমএলটির খ্যাতি তার চেয়েও খারাপ।
কার্ল ইঙ্গভে লেরভেগ

আমরা হব. আমার অবশ্যই স্বীকার করতে হবে যে vim5.x (যখন আমি এটি ব্যবহার শুরু করেছি) থেকে অনেক অগ্রগতি হয়েছে। কিন্তু এখনও কোণার কেস রয়েছে যেখানে আমাদের জটিল জিনিসগুলি করতে হয়। উদাহরণস্বরূপ দেখুন map()যা স্ট্রিংগুলি বা (সম্পর্কিত নয়) প্রত্যাশা করে :map। আমার প্রায়শই স্ট্রিং মূল্যায়নের সাথে প্রায়শই খেলতে হয় যেমন ম্যাপিংগুলি তৈরি করা বা ফাংশন কলগুলির তালিকা প্রক্রিয়াকরণের জন্য, ...
লুক হার্মিটে

অন্য ভাষায় ভিম প্লাগইন লেখাই আপনাকে কোনওভাবেই ভিএমএল শেখা থেকে মুক্ত করে না, কারণ পাইথন / রুবি / ইত্যাদির সাথে যুক্ত। বেশ সীমাবদ্ধ এবং আপনি অবশ্যম্ভাবী execযাইহোক, ভিএমএলের স্নিপেটগুলি শেষ করতে পারেন । এটি আপনাকে এমন একটি ভাষায় আপনার মূল যুক্তি লিখতে দেয় যাতে আপনি আরও বেশি দক্ষতার সাথে কাজ করতে সক্ষম হতে পারেন তবে এখনও আপনার ভিএমএল শিখতে হবে much
hobbs

12

আপনি যদি প্লাগইন লেখার ইচ্ছা রাখেন তবে আপনি অবশ্যই স্টিভ লশের রচনা "উইম প্লাগইনগুলি রচনা" ভাল নিবন্ধটি পড়া উচিত ; কেবলমাত্র আপনি ভিএমএলের সাথে থাকবেন কি না তা সিদ্ধান্ত নেওয়ার জন্যই নয়, সেরা অনুশীলনের পরামর্শের জন্য।

এটি অন্যান্য ভাষার সাথে স্ক্রিপ্টিং ভিম সম্পর্কে একটি ছোট আলোচনা রয়েছে :

প্রথমত, অন্য কোনও ভাষা ব্যবহারের জন্য আপনার প্লাগইন ব্যবহারকারীর সেই সংস্করণের সমর্থন সহ সংকলিত ভিমের একটি সংস্করণ ব্যবহার করা প্রয়োজন। এই দিন এবং যুগে এটি সাধারণত কোনও সমস্যা নয় তবে আপনি যদি নিজের প্লাগইনটি সর্বত্র চালিত করতে চান তবে এটি কোনও বিকল্প নয়।

অন্য একটি ভাষা ব্যবহার করা ওভারহেড যুক্ত করে। আপনাকে কেবল ভিমস্ক্রিপ্ট শিখতে হবে না, ভিম এবং ভাষার মধ্যে ইন্টারফেসও রয়েছে। ছোট প্লাগইনগুলির জন্য এটি প্রকল্পের সংরক্ষণের চেয়ে জটিলতায় আরও জটিলতা যোগ করতে পারে তবে বড় প্লাগইনগুলির জন্য এটি নিজের জন্য মূল্য দিতে পারে। এটি উপযুক্ত কিনা তা সিদ্ধান্ত নেওয়ার দায়িত্ব আপনার up

শেষ অবধি, অন্য ভাষা ব্যবহার করা আপনাকে ভিমস্ক্রিপ্টের উদ্দীপনা থেকে সম্পূর্ণরূপে উত্তাপ দেয় না। আপনার এখনও উইমস্ক্রিপ্টে বেশিরভাগ জিনিসগুলি কীভাবে করা যায় তা শিখতে হবে - অন্য ভাষা ব্যবহারের মাধ্যমে আপনি এর বেশিরভাগ অংশ পরিষ্কার করতে পারবেন অন্যথায় আপনি যা করতে পারেন তার চেয়ে বেশি।

আমার অভিজ্ঞতাটি হ'ল এমনকি যখন কোনও ভি-ভিএমএল প্লাগইন আরও ভাল হয় তবে আমি পরে বিশুদ্ধ ভিএমএল বিকল্পে স্যুইচ করি, মূলত বহনযোগ্যতার কারণে। ভার্চ ভার্চুয়ালি যে কোনও সিস্টেমে চালিত হয় (এমনকি কুশ্রী এবং পুরানো লেগ্যাসি সিস্টেমগুলিও), এবং নির্ভরতা স্থাপন করা বা সেই প্লাগইনটি অস্থায়ীভাবে অক্ষম করা কার্যকর নয় (বিশেষত আপনি যদি ভুলে যেতে থাকেন যে আপনি এটি অক্ষম করে রেখেছেন এবং এর ম্যাপিংস / আদেশগুলি ব্যবহার করার চেষ্টা করছেন) ।

নির্ভরতা সেটআপ করা সহজ হয়ে গেলেও আপনি কিছু সমস্যা হিট করতে পারেন (যেমন: কিছু পাইথন-ভিত্তিক প্লাগইনগুলি ভার্চুয়াল মেশিনে ভাগ করা ফোল্ডারগুলি থেকে সংগ্রহ করার সময় 100% কাজ করে না)। এজন্য আমি যে কয়েকটি প্লাগইন লিখেছি তা কেবল ভিএমএল ব্যবহার করে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.