# إلفيس (محرر نصوص)

إلفيس (بالإنجليزية: Elvis)‏ محرر النصوص وهو واحد من مشتقات في آي أو إكس وتشبه وظائفه وظائف المحرر في آي كثيراً ويضيف عليها عدداً آخر من الأوامر والوظائف والإضافات، تم تطوير إلفيس على يد ستيف كيركيندال ويتم توزيعه تحت رخصة ارتيستنك والتي يتم استخدامها أيضا لتوزيع لغة البرمجة بيرل، ومن المعلوم أيضاً أن إلفيس هو محرر النصوص الافتراضي المحاكي ل«في آي» في أنظمة سلاكوير (Slackware)، فروجالوير (Frugalware)، كايت أو أس (KateOS)، ومينيكس 3 (MINIX 3).

## نظرة عامة

في بداياته كان إلفيس محاكي في آي الرائد والرئيسي وكان واسع الانتشار في تسعينيات القرن العشرين ويعود السبب في ذلك لاستقراره ولكثرة الميزات التي يحويها، ومن الجدير بالذكر أن محرر النصوص المشهور فيم كان قد تأثر وبشكل مباشر بإلفيس وكان ذلك في العام 1997، ومن أشهر ما يمتاز به إلفيس هو أنه يعتبر أول محرر نصوص يدعم ما يسمى بتعليم الصيغة أو تمييز الصيغة (بالإنجليزية: Syntax Highlighting)‏ بالإضافة لكونه أيضاً الأول في تعميم تمييز الصيغة لأنواع متعددة من الملفات، وهو أيضاً أول محرر نصوص يدعم تمييز النصوص وتضليلها عن طريق لوحة المفاتيح، ويضاف إلى ذلك كله قدرته على دعم لغة أتش تي أم أل (HTML) مما سمح له بإعطاء قدرات فائقة في تحرير النصوص على نمط «ما تراه هو ما تحصل عليه». و من ميزاته أيضاً أنه قادر على تمييز الملفات التنفيذية ويقدم شاشة مقسومة إلى نصفين للمساعدة في تحرير هذا النوع من الملفات. و قد كان لإلفيس معجبين كثر ويبدو ذلك جلياً في محرر النصوص جيلفيس (بالإنجليزية: Jelvis)‏ وهو محرر نصوص ياباني يحاكي إلفيس في تصميمه واستخداماته وقد قام جونايشيرو إيتوجُن هاجينو بتطويره حتى العام 1998 واَخر أعماله في هذا المجال كانت على شكل ملفات باتش للمشاركة في تطوير محرر النصوص أن في أي (NVI). كما ويوجد أيضاً محرر نصوص كوري محاكي ل «في آي» واسمه هيلفيس (بالإنجليزية: Helvis)‏ وتم تطويره على يد بارك تشونج-داي ومن المعلوم أن هذه المحاكيات عبارة عن تعديلات على محرر النصوص الرئيسي إلفيس بنسخته 1.8 التي تم إطلاقها بتاريخ (10 يوليو 1994) وتجدر الاإشارة أيضاً إلى أن محرر النصوص أن في أي (NVI) كان قد تم تطويره أيضاً على إلفيس بنسخة 1.5 التي تم إطلاقها بتاريخ (2 أبريل 1992).

## تاريخ إلفيس

يعتبر إلفيس نسخة محسنة عن المحرر في آي ولفهم السياق الكامل لعملية إنشاء إلفيس فإننا نشجع القارئ على قراءة صفحة الويكي العربية الخاصة ب في آي لأن ذلك سيوفر الوقت والكثير من العناء في إعادة سرد الأحداث التاريخية التي أدت إلى إنشاء محاكيات خاصة ب في آي وفي هذا الجزء سنقوم بسرد المقاطع التاريخية الخاصة بإلفيس: قام ستيف كيركيندال بالإعلان عن النسخة الأولى من إلفيس في مجموعة يوزنت الإخبارية المسمى (comp.os.minix) وكان ذلك في بدايات شهر يناير من العام 1990 وكان ينوي بذلك إنشاء محرر نصوص يحاكي قدر الإمكان المحرر في آي وبشكل أفضل من المحرر ستيفي الذي قام تيم ثومبسون بتطويريه قبل ثلاث سنوات من الإعلان عن إلفيس، وقد بين كيركيندال أن إلفيس يتميز عن ستيفي بعدة نقاط وهي:
* يتم تخزين النصوص في ملفات مؤقته (تماماً كما يتصرف في آي) ولهذا السبب فإنك تستطيع أن تقوم بتحرير ملفات كبيرة الحجم تزيد في حجمها عن الحجم المخصص لمعالجة العملية الحاسوبية (Process).
* نتيجة للنقطة السابقة يستطيع المستخدم أن يقوم باستعادة النص المحرر إذا ما أصيب المحرر بانهيار ما أو إذا ما تعطل النظام لسبب ما مثل انقطاع الكهرباء المفاجئ.
* تم دعم أزرار الأسهم على لوحة المفاتيح بحيث أصبحت تعمل على «وضع الإدخال».
* في حال تم استدعاء المحرر مع الخيار "input" سيقوم إلفيس بفتح الملف المراد تحريره في وضع الإدخال مباشرة مما يتيح للمستخدم البدء بتحرير النص بدون المرور على وضع الأوامر وبعد الانتهاء من التحرير يقوم المستخدم بالضغط مرتين على الأزرار Ctrl + Z ليتم حفظ التغييرات على الملف ومن ثم الخروج الهادئ من بيئة المحرر والعودة مرة أخرى إلى بيئة الإستدعاء، بكلمات أخرى يستطيع إليفس التصرف كما لو أنه محرر نصوص عادي وهذا شيء لا يستطيع في آي القيام به.
* السطور الطويلة يتم إظهارها بشكل مختلف حيث أنه في في آي وستيفي يتم إزاحة السطور الطويلة إلى السطور التالية ويتم تحديد ذلك بعرض شاشة الإخراج بينما يقوم إلفيس بإظهار السطر بشكل كامل ويتوجب على المستخدم أن يتحرك على الأجناب لإظهار الأجزاء الغير مرئية من السطر.
بالإضافة إلى ما تم ذكره سالفاً فإن إلفيس يستطيع تنفيذ جميع أوامر في آي فيما عدا الأوامر التالية:
* الأمر @:
* الأمر abbr:
* الأمر preserve:
و بالتالي أصبح إلفيس يجذب انتباه العديد من المهتمين وقام أندرو تانينباوم بطرح استفتاء على مجتمع مينيكس لتحديد محرر النصوص الذي سيتم دعمه في مينيكس من واحد من المحررين ستيفي أو إلفيس ليكون محاكي في آي على تلك الأنظمة وتم اختيار إلفيس على ستيفي وبقي إلفيس إلى اليوم هو محرر النصوص الرئيسي في مينيكس. و في عام 1989 بدأ الزوجان لين ووليام جوليتز بتطويع بي أس دي يونكس للعمل على معالجات إنتل من فئة 386 ولكن من أجل إيجاد توزيعة حرة كان يجب عليهم تجنب أي شيفرة مصدرية توجب حق الملكية لشركة إي تي أند تي (AT&T) ويتضمن ذلك الشيفرة المصدرية ل«في آي» ولسد هذا الفراغ قاما في عام 1992 باستخدام المحرر إلفيس بديلاً عن في آي وقد جاءت أحفاد بي أس دي 386 (386BSD) مثل فري بي أس دي (FreeBSD) ونِت بي أس دي (NetBSD) على نفس النسق لاعتماده كمحرر نصوص رئيسي على هذه الأنظمة. و في جامعة كاليفورنيا، بركلي أراد كيث بوستيك بديلاً مطابقاً ل«في آي» من أجل تنصيبه في بي أس دي 4.4 لايت، وباستخدام الإصدارة 1.8 من المحرر إلفيس قرر أن تكون هذه هي نقطة البداية لتطوير محرره الخاص المطابق ل«في آي» فوجد المحرر أن في آي (NVI) وقد تم إطلاقه في ربيع عام 1994. و في شهر أغسطس من العام 1994 أعلن كيركيندال أنه بصدد العمل على إعادة كتابة إلفيس وفي أوكتوبر من العام 1996 كان جاهزاً للإطلاق والنسخة كانت تحوي عدد من الميزات والإضافات بما فيها ما يلي:
* دعم عوازل التحرير المتعددة (multiple buffers) مما يتيح للمستخدم تحرير أكثر من ملف بنفس الوقت.
* دعم تعدد نوافذ التحرير بحيث أن عوازل التحرير المتعددة تتشارك نفس مساحة الشاشة.
* أنماط إظهار متعددة ويشمل ذلك:
** النمط العادي (normal mode) ويمثل ذلك شاشة في آي الاعتيادية.
** النمط الستة عشري (hex mode) ومن الجيد استخدام هذا النمط في تحرير الملفات التنفيذية أو الثنائية.
** النمط التمييزي (syntax mode) وهذا النمط يدعم تمييز الصيغة.
** النمط الاستخدامي (man mode) وهو مسؤول عن إظهار شاشة المساعدة والاستخدام الخاصى بإلفيس (unix man page).
** نمط لغة رقم النص الفائق (HTML mode) وهو مسؤول عن تنسيق صفحات الويب.
* مساعدة على صفحات الويب (Online hypertextual help).
* عدة واجهات استخدامية للمحرر ويتضمن ذلك:
** واجهة تيرمكاب والتي تستخدم شاشات النصوص كما يفعل في آي.
** واجهة x11 الرسومية.
** واجهة إظهار الأخطاء، حيث يمكن لإلفيس تحليل رسائل الأخطاء والتحريك المؤشر نحو مصدر الخطأ.
* دعم ميزة «ما تراه هو ما تحصل عليه» المخصصة للطباعة مع برامج مساعدة (drivers) لمعظم أنواع الطابعات.
* وجود آلة حاسبة إلكترونية خاصة بالمحرر مع تلائم نصي للغة سي.
* دعم كبير لخيارات التخصيص.
و في ديسيمبر من العام 1998 قام كيركيندال بإطلاق النسخة 2.1 من إلفيس مع ميزات إضافية من بينها الإكمال الاوتوماتيكي للكلمات والأسماء باستخدام زر Tab ⇆ بالإضافة إلى دعم البروتوكولات الشبكية وعدد آخر من الإضافات، بقي كيركيندال يقوم بصيانة النسخة 2.1 من إلفيس عن طريق تصحيح الأخطاء والعمل على الإضافات الطفيفة وشمل ذلك النسخ الفرعية 2.1.1 و 2.1.2 و 2.1.3 والأخيرة 2.1.4 التي تم إطلاقها في شهر أوكتوبر من العام 1999. و في شهر أوكتوبر من العام 2003 وذلك بعد 4 سنوات من الإصدارة الأخيرة لإلفيس قام كيركيندال بإطلاق الإصدارة 2.2 والتي أضافة عدد آخر من المزايا مثل دعم المدقق اللغوي، ونظام لطي النصوص (في المحررات الأخرى يتم تنفيذ هذه الوظيفة بالنقر على زر "+" لإظهار النصوص المطوية وزر "-" لطيها)، ودعم ميزة تعليم المنطقة، ودعم بروتوكولات شبكية مخصصة من قبل المستخدمين، بالإضافة إلى أنه قام بتطبيق بعض المزايا المأخوذة من فيم وكانت هذه آخر إصدارة لإلفيس منذ العام 2003 وحتى وقت كتابة هذه المقالة في شهر أوكتوبر من العام 2012.

## انظر أيضاً

* قائمة محررات النصوص
* في آي
* فيم (محرر نصوص)
* إكس (محرر نصوص)
* جي إديت
* محرر نصوص