البدء مع محرر النصوص الشهير Emacs

نشره Fahad في


ظهر محرر النصوص Emacs إيمكاس في عام 1967م وظل أحد أفضل المحررات لدى المطورين والكتاب.حيث أن أهم مميزاته هي قابلية التمدد، و التخصيص و التوثيق الذاتي، و العرض الآني ومضاهاته لنظام التشغيل في الوظائف. (نعم بالنسبة لي فهو نظام تشغيل متكامل)
وبالرغم من أن لب إيمكاس مكتوب بلغة السي، إلا أن العديد من الوظائف التي توسع من وظائف وقدرات إيمكاس مكتوبة بلغة elisp وهي لهجة من لغة البرمجة lisp أو شيء مشابه لذلك. وببساطة، فإن الملحقات تكتب بلغة ليسب ولكن مع إيماكس الكثير من الوظائف تأتي من الملحقات.
لقد تعرفت على إيماكس أثناء الجامعة لما كنت طالبا و كان بحثي يتضمن محاكاة لعمليات فيزيائية مبنية على لغة بايثون. كان العديد من زملائي يستخدمون محرر VIM ، وقد حاولت استخدامه ولكن سرعان ما وجدت نفسي ترغب بشيء أكثر بساطة. ولقد رأيت العديد من مطوري نواة لينكس يستخدمون إيماكس فقررت أن أجربه قليلا. لقد كان بسيطا ولكنه يقدم ميزة تخصيص عالية جدا. وبعد إعداده للغة بايثون و تعلم اختصاراته المناسبة، أصبحت مرتاحا في استخدامه من دون الحاجة لاستخدام الفأرة.
باستخدام إيماكس يمكنك الرد على الرسائل الالكترونية، وقراءة الأخبار، والدردشة، وتصفح الملفات والمجلدات، وتشغيل الأوامر، كتابة مدونات و تشغيل الصوتيات، كل هذه الخصائص مبنية بداخله. لقد استخدمته في برمجة جهازي Raspberry Pi و لوحات التحكم  Arduino/Atmega32.
إن إيمكاس يدعم معظم لغات البرمجة بشكل جيد، فهو يقدم للمبرمجين الكثير من المميزات من بينها إظهار قواعد اللغة، والإكمال التلقائي، والمساعدة والتوثيق. وهو يدعم أيضا تثبيت ملحقات من طرف ثالث (تمديدات) والتي يمكن أن تضاف باستخدام package-install . إن إيماكس متكامل بشكل جيد مع النظام بحيث من النادر أن تحتاج لتشغيل الطرفية لكتابة الأوامر. وحالما تعده بشكل جيد، فهو يصبح بيئة تطويرية جيدة للمطورين.
وللأمهات غير التقنية من مثل أخذ الملاحظات ، و الأجندة و التدوين فإن إيماكس يقد ميزة لا تضاهي تعرف بـ Org Mode. إني أدير كل ملاحظاتي وقائمة الأشياء التي أرغب بفعلها بهذا الملحق. ومؤخرا استخدمت Artist Mode مع ditaa لرسم المخططات وقد تفاجأت من النتائج. إن ملف org يمكن أن يصدر كملف HTML و LaTeX و ODT و Markdown.

نمط Artist في إيماكس على اليسار و الصور النهائية محولة باستخدام ditaa على اليمين


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

ملحقات رائعة لإيماكس:

    ‏magit: أداة للتعامل مع git داخل إيماكس
    git-timemachine: تصفح من خلال الإصدارات المؤرشفة من خلال git
    yasnippet: نظام قوالب إيماكس
    Jedi: مكتبة الاكمال التلقائي لبايثون
    Multiple cursos: مؤشرات متعددة لإيماكس
    hidepw: نمط إخفاء الكلمات السرية في إيماكس (ضد التجسس من فوق الكتف).
    Company: بيئة للاكمال التلقائي للنصوص لإيماكس بحيث يمكنها إكمال أي نوع تقريبا من النصوص

ملحق magit-log يظهر سجل تغييرات Git

تعلم إيماكس من رواده:

  • ‏  Sacha Chua: تحوي مدونتها على الالاف من التدوينات حول إيماكس، حيث تكتب تدوينات رائعة حو Org Mode و agenda.وهي أيضا تستضيف لقاءات حول إيماكس تحاول فيها مستخدمي ومطوري إيماكس
  •  Xah Lee: يعتبر زاه أكثر الأشخاص تحفيزا في عالم إيماكس. ويكتب باستمرار في صفحته على Google+.ودروسه في إيماكس و elisp رائعة جدا للمبتدئين.
  •  Chris Frono:كتب كريس hidepw و يساعد على استضافة The Haskell Cast. إن دروسه الفيديو حول إيماكس مفيدة جدا.
  •  Magnar Sveen: مؤلف و مشرف ملحق multiple-cursors. تفقد دروسه المرئية حول إيماكس في  موقع emacsrocks.com
  •   John Wiegley: جون هو المشرف إيماكس الحالية. وتعتبر أحاديثه المرئية في هانجأوت حول نصائح تطوير إيماكس ليسب من الأشياء التي لا تفوت.

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

هذه المقالة مترجمة من تأليف ساشن باتل موظف في شركة ردهات.