اذهب إلى المحتوى

مقارنة بين محرر النصوص فيم Vim ونانو Nano


Heidi Melhem

نحتاج دومًا إلى استخدام محرر النصوص للكثير من الأمور، منها تدوين الملاحظات أو كتابة شيفرة برنامج أو إجراء تعديل على ملف ضبط من إعدادات النظام وغيرها من الحالات التي يكثر فيها التعامل مع النصوص.

تمتلك كل توزيعة لينكس برامج تحرير للنصوص مثبتة مسبقًا بغض النظر عن متطلبات المستخدم، مثل Gedit و Geany و Kate وغيرها التي تعد جميعها محررات حديثة مزودة بواجهة رسومية GUI، ولكن لا يفضل الجميع استخدام محرر نصوص بواجهة رسومية في جميع الحالات بل يُفضّل البعض استخدام محرر نصوص بواسطة سطر الأوامر، ويتيح نظام تشغيل لينكس هذا الخيار أيضًا حيث يوجد العديد من برامج تحرير النصوص التي يمكن استخدامها من سطر الأوامر ومن أشهرها برنامجي فيم Vim ونانو Nano، اللذان يستخدمان في سطر الأوامر CLI وهي اختصار Command Line Interface، يقدم كل منهما معظم الميزات الأساسية لمحرر النصوص ويوجد بعض الاختلافات فمثلًا يأتي نانو مدمجًا في معظم توزيعات لينكس، بينما يحتاج فيم في بعض التوزيعات إلى تثبيته يدويًا.

لا يمكن اتخاذ القرار بشأن استخدام أي منهما إلا بعد التعرّف على تفاصيل وإمكانيات كل منهما وهو ما سنعرضه في هذا المقال.

1. مقدمة عن محرر النصوص فيم ومحرر النصوص نانو

محرر النصوص فيم

Vim.PNG

أُصدر فيم عام 1991 وهو نسخة محسّنة من محرر النصوص Vi الذي طُوّر عام 1976 لنظام التشغيل. يونكس Unix، ويُعرف فيم أيضًا باسم محرر نصوص المبرمِج، وذلك بسبب امتلاكه العديد من الميزات التي تساعد في تعديل ملفات البرنامج، ولا يعتبر فيم حكرًا على المبرمجين حيث يمكن استخدامه لكتابة وتحرير ملفات نصية عادية حتى مع امتلاكه إمكانيات متطورة.

محرر النصوص GNU nano

GNU Nano.PNG

أما المحرر غنو نانو GNU nano ويُعرف اختصارًا باسم نانو Nano، فهو محرر نصوص بسيط يعمل بواسطة سطر الأوامر ويعتمد على يونكس Unix ومستوحى من بيكو Pico، حيث كان Pico جزءًا من مجموعة Pine للبريد الإلكتروني التي طورتها جامعة واشنطن في عام 1989 ولكن كان من الصعب تضمينه في توزيعات لينكس لعدم امتلاكه ترخيص GPL، لذا طُوِّر محرر النصوص نانو كبديل مجاني للمحرر Pico، كما عُرف نانو في البداية باسم tip ثم أعاد ريتشارد ستولمان Richard Stallman تسميته مباشرةً قبل أن يعلن نانو برنامجًا رسميًا من برامج GNU.

أهم ما يميز هذا المحرر هو سهولة الاستخدام حيث يمكن لأي شخص استعماله وليس بالضرورة أن يكون مبرمجًا.

2. مزايا محرر فيم مقابل مزايا محرر نانو

فيما يلي الاختلافات الرئيسية بين فيم ونانو.

تُلخص الميزات الرئيسية لمحرر فيم بالميزات التالية:

  • يتيح التراجع عن آخر خطوة Undo لعدة مرات
  • التركيز على تركيب الجملة
  • التعديل بواسطة سطر الأوامر
  • إكمال اسم الملف
  • تقسيم شاشة العمل والذاكرة
  • التشعب
  • استرداد العمل السابق
  • سريع الأداء لاعتماده على تجزئة المهام

أما الميزات الرئيسية لمحرر نانو، فتلخص بالميزات التالية:

  • فتح ملفات متعددة معًا
  • تصفح المستند بالاعتماد على الأسطر
  • التراجع عن خطوة ما
  • إعادة تنفيذ خطوة معينة
  • تلوين التركيب النحوي للجملة
  • ترقيم الأسطر

نلاحظ بشكل عام أن فيم يوفر إمكانيات أكثر تقدمًا ومع ذلك يقدم كلاهما الميزات الأساسية لتحرير ملفات نصية مثل ضبط إحدى إعدادات النظام وملفات الشيفرات البرمجية.

3. استخدام محرر النصوص

يعتبر فتح ملف موجود مسبقًا في كل من فيم أو نانو عملية سهلة وتتحقق من خلال كتابة اسم محرر النصوص المراد استخدامه (فيم أو نانو) متبوعًا بمسار الملف كما يلي:

vim Documents/text.txt
nano Documents/text.txt

ولكن هناك ما هو أكثر بكثير من مجرد الوصول إلى ملف أو فتحه باستخدام محرر النصوص، فيما يلي قائمة ببعض نقاط للمقارنة بين فيم ونانو حول استخدام كل منهما:

نانو Nano فيم Vim
سهل الاستخدام يعمل في عدة أوضاع Mode-driven
سهل التعلم صعب التعلم
مصمم بهدف إجراء تعديلات سريعة استرداد العمل السابق بسهولة
  تلوين التركيب النحوي للجملة دلالةً على وجود خطأ
  يوفر قدرات متقدمة

الفرق الأساسي بين نانو وفيم هو أن الجمهور المستهدف مختلف تمامًا.

استخدام فيم

يعمل في أوضاع تحرير متعددة Mode-driven منها:

  • الوضع العادي
  • الوضع المرئي
  • وضع الإدراج
  • الكتابة بواسطة سطر الأوامر
  • التحرير بواسطة سطر الأوامر

يعمل فيم بشكل افتراضي في الوضع العادي، ويمكن ضبط فيم كأداة كتابة حتى مع كل الأوضاع، وتتصرف أزرار لوحة المفاتيح نفسها تصرفًا مختلفًا تبعًا للوضع المفعَّل، فمثلًا يمثل زر h على لوحة المفتاتيح الحرف h في وضع الكتابة ويتحول في الوضع العادي إلى زر حركة فيحرك مؤشر الكتابة إلى اليسار بمقدار حرف واحد، ويحرك الحرف l (حرف L صغير) مؤشر الكتابة إلى اليمين بمقدار حرف واحد، وينقل الحرف j مؤشر الكتابة إلى الأسفل بمقدار سطر، وينقل الحرف k مؤشر الكتابة إلى الأعلى بمقدار سطر، كما يمكن استخدام أزرار الأسهم للتنقل.

شاشة سطر الأوامر عند تشغيل Vim بلا وسطاء.PNG

أما المفاتيح الأكثر استخدامًا فهي: "w" و "b" و "e" وشرحها وفق التالي:

  • "w": ينقل مؤشر الكتابة إلى الكلمة التالية، وإذا كان المؤشر موجودًا في بداية الكلمة فينقله إلى بداية الكلمة التالية
  • "b": ينقل المؤشر إلى بداية الكلمة الموجودة على يسار الكلمة الحالية
  • "e": ينقل المؤشر إلى نهاية الكلمة الموجودة على اليمين

كما يمكن مزج الأرقام بهذه المفاتيح، مثال: يؤدي الضغط على "6w" إلى تحريك المؤشر بمقدار ست كلمات للأمام.

التبديل بين الأوضاع المختلفة يتطلب الضغط على مفاتيح محددة مثل:

  • "i": لتفعيل وضع الإدراج
  • "CTRL + C": للعودة إلى الوضع العادي
  • "wq:": لحفظ الملف وإغلاق النافذة

كل ما سبق هو لمحة بسيطة عن فيم، لمعرفة المزيد يمكن استخدام الأمر vimtutor الذي يقدم معلومات عن الأوامر الأساسية للتعامل مع الملفات كحذف ملف ما أو تعديله أو حفظه وغيرها.

أوامر Vim.PNG

استخدام GNU nano

يمتلك نانو واجهة أساسية تفاعلية تحتوي على معلومات مهمة في أسفل النافذة تسهل عمل المستخدم عند تنفيذ الإجراءات الأساسية ولا يحتاج إلى الاستعانة بصفحة دليل المستخدم أو أي توثيق آخر.

شاشة سطر الأوامر عند تشغيل nano بلا وسطاء.PNG

هذا هو السبب الأساسي في تفوق نانو على فيم من ناحية سهولة الاستخدام، ومع ذلك لا تزال بعض المصطلحات المستخدمة في نانو مصطلحات قديمة، مثال على ذلك أمر "Write Out" يعني اكتب التعديلات بدلًا من "Save" يعني احفظ التعديلات على الملف وأمر "Where Is" يعني أين كذا بدلًا من "Search" يعني ابحث عن كذا، لكنها لا تعتبر مشكلة كبيرة إذ من السهل التعود عليه.

لا يتشابه نانو مع استخدام Notepad أو Gedit (برامج تمتلك واجهة رسومية)، حيث عادةً ما تكون تركيبة المفاتيح لإجراء عملية القص هي "Ctrl + X" في معظم برامج التحرير الحديثة ولكن تكون في نانو "Ctrl + K".

يستخدم الرمز "^" للإشارة إلى استخدام مفتاح Ctrl كمفتاح تعديل ويستخدم كمجموعة مع المفاتيح المجاورة له.

توجد أيضًا مجموعات مفاتيح والاختصارات مثل:

  • Ctrl + F لتحريك المؤشر إلى الأمام
  • Ctrl + B الانتقال إلى الخلف
  • Ctrl + X للخروج
  • Ctrl + O لحفظ الملف أو حفظ الملف باسم
  • Alt + U للتراجع عن الإجراء الأخير
  • Ctrl + ← كلمة واحدة للخلف
  • Ctrl + → كلمة واحدة للأمام

مما سبق، يناسب محرر نانو المبتدئين خصوصًا عندما يكون كل ما يحتاجه المستخدم هو تحرير ملف من حين لآخر.

4. سهولة التعلم

نلاحظ مما سبق أن فيم يختلف عن محرر النصوص التقليدي وهذا هو السبب الأساسي لكونه برنامجًا صعب الممارسة في الفترة الأولى من تعلمه واستخدامه، بينما تعتبر إمكانيات فيم المتقدمة ميزة بالنسبة للمستخدمين ذوي الخبرة وخاصة من ناحية توفير الوقت.

بناء على ذلك، إذا كان المستخدم مبرمجًا أو يقوم بتحرير العديد من الملفات بين الحين والآخر فاستخدام فيم كمحرر نصوص خاص به يعتبر الخيار الأنسب، بالمقابل يحتاج نانو إلى وقت أقل لتعلمه نظرًا لامتلاكه بعض التشابه مع محرر النصوص المعتمد على الواجهة الرسومية مثل Gedit أو Notepad.

هل أستعمل فيم أم نانو؟

يتيح فيم تنفيذ مجموعة متنوعة من المهام وذلك بسبب تميزه بالمرونة، ولكن من الصعب الاعتياد على آلية عمله وأوضاعه بالنسبة للمستخدم العادي، بينما يعتبر التعامل مع نانو أسهل لأنه يتيح للمستخدم القيام بالتعديلات بوضوح وبساطة.

غالبًا ما يوصى باستخدام محرر النصوص نانو في البداية، وعند الحاجة إلى مزيد من الميزات أو إنجاز المهام بشكل أسرع يمكن الانتقال إلى فيم.

الأسئلة الشائعة حول فيم ونانو

  • هل فيم أفضل من نانو؟ من الناحية التقنية نعم، ولكن إذا لم تكن هناك حاجة إلى ميزات إضافية فإن استخدام فيم سيشكل عبئًا على المستخدم.
  • هل يستخدم المبرمجون فيم؟ نعم، يميل المبرمجون ومديرو الأنظمة إلى استخدام فيم بسبب إمكانياته المتقدمة.
  • هل نانو أكثر شهرة؟ نعم، يعتبر نانو أكثر شهرة لكونه يأتي مدمجًا مع معظم توزيعات لينكس ويعتمد عليه معظم المستخدمين بينما فيم يستخدمه قلة من الناس.

ترجمة -وبتصرف- للمقال Vim vs Nano: What Should You Choose?‎ لصاحبه Pratham Patel.

اقرأ أيضًا


تفاعل الأعضاء

أفضل التعليقات

لا توجد أية تعليقات بعد



انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أضف تعليق

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • أضف...