ما هو أفضل مرفق لقالب التعليمات البرمجية لـ Emacs؟[مغلق]

StackOverflow https://stackoverflow.com/questions/61446

سؤال

على وجه الخصوص، ما هي أفضل حزمة المقتطفات المتوفرة؟

سمات:

  • من السهل تحديد المقتطفات الجديدة (نص عادي، إدخال مخصص مع الإعدادات الافتراضية)
  • التنقل البسيط بين المواضع المحددة مسبقًا في المقتطف
  • الإدراج المتعدد لنفس الإدخال المخصص
  • يقبل النص المحدد حاليًا كمدخل مخصص
  • عبر منصة (ويندوز، لينكس)
  • تعبيرات تم تقييمها ديناميكيًا (تعليمات برمجية مضمنة) مكتوبة بلغة برمجة موجزة (يفضل Perl وPython وRuby)
  • يتعايش بشكل جيد مع الحزم الأخرى في Emacs

مثال على قالب التعليمات البرمجية، بسيط for حلقة في C:

for (int i = 0; i < %N%; ++i) {
  _
}

هناك الكثير من الكتابة لمثل هذا الرمز المشترك.أرغب في استدعاء قالب رمز أو مقتطف يدرج رمز Boilerplate بالنسبة لي.بالإضافة إلى ذلك فإنه يتوقف (عند TAB أو ضغطة مفتاح أخرى) عند %N% (مدخلاتي تحل محلها) والموضع النهائي للمؤشر هو _.

هل كانت مفيدة؟

المحلول

مقتطفات TextMate هي أقرب تطابق ولكنها ليست حلاً عبر الأنظمة الأساسية وليست مخصصة لـ Emacs.

أما الشيء الثاني فهو الأقرب yasnippet (تسجيل الشاشة يظهر القدرات الرئيسية).لكنه يتدخل hippie-expand الحزمة الموجودة في الإعداد الخاص بي واللغة المضمنة هي EmacsLisp والتي لا أشعر بالراحة معها في الخارج .emacs.

يحرر:نشرت إجابتي هنا للسماح بالتصويت عليها yasnippet.

نصائح أخرى

أنا شخصياً أستخدم Dmacro منذ سنوات (ftp://ftp.sgi.com/other/dmacro/dmacro.tar.gz).

فيما يلي مراجعة له تشير أيضًا إلى بعض البدائل: http://linuxgazette.net/issue39/marsden.html

يحتوي EmacsWiki على صفحة محركات القالب.

من هذه، لقد استخدمت وتيرة في الماضي (البعيد) لإضافة دعم الجدول إليه html-مساعد الوضع, لكن لا أعرف كيف تطورت خلال الخمسة عشر عامًا الماضية.

أود أن أضيف صوتي ل مقتطفات الإيقاع ...سهل الإعداد وقوي (يمكنك تشغيل elisp بشكل عشوائي في القالب الخاص بك - بحيث يمكنك تصغير الأشياء والبحث عن أسماء الملفات والفئات وإحصاء الأشياء وما إلى ذلك)، وتعيين المسافة البادئة، والتكامل مع الاختصارات ...أنا استخدامها كثيرا ؛)

أنا التصويت ل http://cedet.sourceforge.net/srecode.shtml

يحتوي على بناء جملة نظيف للغاية ويمكنه الوصول إلى بيئة التعليمات البرمجية من خلاله Semantic.

كما أنها جزء من دعم كبير بشكل جيد CEDET التوزيع (الذي تم تضمينه في Emacs لسلسلة إصدارات 24.x).

تحديث https://github.com/capitaomorte/yasnippet هو أيضًا محرك قوالب قوي.ولكنه يستخدم مخطط تسمية ملف قبيح (اسم ملفك === اسم القالب) لأنه لا يمكنك وضع عدة قوالب في ملف واحد وتواجه مشكلات مع مجموعات الأحرف الوطنية...

يمكنك تجربة حل خفيف الوزن muban.el

إنه مكتوب بالكامل بلغة Elisp وله بناء جملة بسيط جدًا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top