فيم سكريبت
المحتويات
قبل الخوض في التفاصيل، فيم سكريبت يعتبر فيم واحداً من أشهر محررات النصوص خصوصاً في مجتمعات التطبيقات الحرة والمفتوحة المصدر، ويعطي فيم القابلية للمبرمجين بالقيام بتطوير إضافات وامتدادات للمحرر ويتم ذلك بشكل رئيسي باستخدام لغة البرمجة النصية (فيم سكريبت) وهي لغة برمجة مخصصة لتطوير محرر النصوص فيم، وقد تم تطوير هذه اللغة بناءً على لغة «إي أكس» (ex) والتي استعملت لتطوير محرر النصوص في آي (vi). وتعرض الأقسام التالية جوانب أخرى من الموضوع.
ومن ناحية أخرى، و تسمح الوظائف المبرمجة مسبقا في فيم للمبرمجين القيام بكتابة البرامج الأساسية بنمط البرمجة الوظيفية ولكن فيم سكريبت بنيت وتبنت نمط البرمجة الأمرية.
من جهة ثانية، ضمت الإصدارات الأولى من محرر النصوص فيم بعض أوامر التحكم للسيطرة على مجرى التنفيذ (Execution Flow) والتحكم بتعريفات الوظائف أو ما تعرف بالروتين الفرعي (Function Definitions) ومنذ الإصدارة السابعة لفيم أصبحت فيم سكريبت تدعم أنواع متغيرات متقدمة مثل القوائم المرتبطة (Lists) ومصفوفات الخرائط (Dictionaries) فضلًا عن دعم بسيط للبرمجة الكينونية.
وفي السياق ذاته، و يمكن لأي ماكرو في فيم أن يحوي سلسلة متعاقبة من أوامر النمط الخارجي ولكن يمكنه كذلك استدعاء أمر (ex) أو وظيفة مكتوبة بفيم سكريبت لتنفيذ مهام أكثر تعقيداً، ويشار هنا إلى أن أغلب الإضافات أو الامتدادات التي تم تطويرها لفيم كانت قد كتبت باستخدام فيم سكريبت وطبعا لا يعني ذلك أنه لا يمكن كتابة إضافات بلغات نصية أخرى مثل بيرل (Perl) أو بايثون (Python) أو لوا (Lua) ويشترط في ذلك أن تكون هذه اللغات قد تم ربطها مع فيم أثناء عملية الترجمة (Compilation Time)، ويتم تخزين ملفات الفيم سكريبت على شكل نصوص عادية ولكن اسم الملف ينتهي بالامتداد (vim.)
مثال توضيحي
وعلى صعيد آخر، التالي يمثل برنامج تمت كتابته بلغة فيم سكريبت وهو برنامج بسيط يقوم بطباعة الأرقام من 1 إلى 4:
- let i = 1
- while i <5
- echo "count is" i
- let i += 1
- endwhile
- وصلات خارجية
- مستودع إضافات فيم
- أمثلة على فيم سكريبت
📝 هل في هذه المقالة خطأ؟
إذا وجدت معلومة تحتاج تصحيحاً أو إضافة، أو أردت حذف المقالة، أرسل لنا طلباً وسنراجعه.
ما رأيك في هذه المقالة؟