سؤال

على الرغم من أن عدة آلاف من Emacs اللثغة المكتبات موجودة ، GNU Emacs, حتى الإصدار 24.1 لم يكن (الداخلية) مدير الحزم.

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

الصفحات التي تجعل الحياة أسهل قليلا

للحصول على إصدارات Emacs أقدم من 24.1:

  • Emacs اللثغة قائمة - المشكلة:أرى الأموات (الروابط).
  • Emacswiki - المشكلة:قد تحتوي على القليل من المكسرات (الشيفرات الخبيثة).
  • Emacsmirror - حزمة مستودع أنا أعمل على.المشكلة:لا مدير مجموعة تدعم ذلك أصلا حتى الآن.

بعض مديري حزمة

ليس أن أحدا لم يحاكم حتى الآن.(بعض هذه لم تكن موجودة عندما سئل هذا السؤال.)


تحديث -- الحزمة.ال يتم تضمينها في جنو إيماكس ، بدءا من الإصدار 24.1


الحزمة تم تضمينها في Emacs الجذع.epkg ليست جاهزة بعد و أيضا غير متوفرة حاليا.على الأقل تثبيت-elisp, المساعد واستخدام حزمة لا يبدو أن يحتفظ بنشاط بعد الآن.

لقد خلق بوابة مستودع تحتوي جميع هذه الحزمة مديري الوحدات الفرعية.

بعض الأدوات التي قد تكون مفيدة

حزمة مديري يمكن استخدام هذه المرافق و/أو أنها يمكن أن تستخدم للحفاظ على مرآة من الحزم.

المناقشات حول هذا الموضوع في متناول اليد

السؤال (أخيرا)

لذا أود أن أعرف منك ما كنت تنظر مهم/مهم/تكميلية.... الخفي حزمة مدير Emacs.

بعض الأفكار

  1. العديد من الحزم ( Emacsmirror على أن أكبر مجموعة متاحة من الحزم ، ولكن لا يوجد دعم صريح في أي مدير مجموعة حتى الآن).
  2. إلا الحزم التي تم اختبارها.
  3. دعم أكثر من حزمة الأرشيف (حتى يمكن للناس أن تختار بين العديد من/اختبار حزم).
  4. التبعية تحسب على أساس الميزات المطلوبة فقط.
  5. تبعيات تأخذ إصدارات معينة في الاعتبار.
  6. فقط استخدام الإصدارات التي تم إصدارها المنبع.
  7. استخدام الإصدارات من أنظمة التحكم في الإصدار إن وجدت.
  8. حزم تصنيفها.
  9. الحزم يمكن إلغاء تثبيت و تحديث لم يتم تثبيت فقط.
  10. دعم إنشاء شوكة من المنبع نسخة من الحزم.
  11. دعم نشر هذه شوك.
  12. دعم اختيار شوكة.
  13. بعد تثبيت حزم تفعيلها.
  14. توليد autoload الملفات.
  15. التكامل مع Emacswiki (انظر wikirel.ش).
  16. يمكن للمستخدمين الوسم تعليق الخ.حزم وتبادل تلك المعلومات.
  17. فقط FSF-تعيين/GPL/البرمجيات الحرة والمفتوحة المصدر أو لا يهتمون الترخيص.
  18. مدير مجموعة يجب أن تكون متكاملة توزع مع Emacs.
  19. دعم بسهولة الاتصال المؤلف.
  20. الكثير من البيانات الوصفية.
  21. اقتراح بدائل قبل تثبيت حزمة معينة.

وأنا على أمل لهذه الأنواع من الإجابات

  • مؤشرات إلى المزيد من تطبيقات ومناقشات الخ.
  • الوصف المطول مجموعة من الميزات التي تجعل الخاصة بك مثالية مدير الحزم.
  • وصف واحد بعينه المطلوب/غير المرغوب فيها ميزة.لا تتردد في توضيح أفكاري من فوق.
  • مفاجأة لي.
هل كانت مفيدة؟

المحلول

التلقائي النشر من التحكم في الإصدار

أنا أحب أن أرى القياسية المركزية ، واحد Emacs مدير الحزم.الآن سوف أضع أموالي على ELPA, ولكن لا يزال هناك طريق طويل لنقطعه.

أكبر شيء من شأنه أن يساعد Emacs مدير الحزم أن تجعل سوبر تافهة نشر حزم.في رأيي, أنا أود أن أرى هذا يحدث في تركيبة مع نظام التحكم في الإصدار مثل git على المركزية استضافت منصة مثل جيثب - شيء من شأنها أن تجعل من السهل بالنسبة المؤلفين لنشر حزم من شأنها أن تجعل من السهل على الآخرين للمساهمة في العودة.

على غرار كيف جيثب (المستخدمة) تجعل من السهل نشر جواهر روبي, أود أن أرى شيء مماثل في Emacs مدير الحزم.على سبيل المثال الوسم المستودع الخاص بك مع "vX.Y.Z" و elisp الخير تلقائيا متاحة للجميع.

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

نصائح أخرى

ما زلت أتعلم Emacs ، لذلك لم تتح لي فرصة للنظر في حزمة المديرين ، ولكن ميزة كبيرة أن يكون إعلام المستخدم أن الحزمة المتاحة إذا كانت محاولة استخدامه ولكن ليس على النظام الخاص بهم.على سبيل المثال, أردت أن تحرير ملف PHP على خادم مرة و حاولت

M-x php-mode

و Emacs كان كل شيء مثل

M-x php-mode [no match]

عندما كان ينبغي أن يكون مثل

php-mode available from ftp.gnu.org. install? (y/n)

ثم سيكون لديك تثبيت و تحميل php-الوضع بالنسبة لي.التي من شأنها أن تجعل يومي هناك.

ما أتوقع أكثر هو أن كل شيء فائدة على ذلك ، يعمل بشكل جيد.هذا يتطلب منك (أو فريق من مشرفي) بقوة مواصلة التعبئة والتغليف كل شيء من أجل ذلك ، والقيام بكل ما ينطوي على — البريد الإلكتروني كل مؤلف حزمة مفيدة ، وهلم جرا.

على سبيل المثال, السبب دبيان (ومشتقاته:أوبونتو.... الخ) جيد جدا هو أنه يمكنك استخدام بسعادة النظام الخاص بك دون الحاجة إلى تثبيت شيء خارج مستودعات, وأن كل شيء على ذلك هو اختبارها بدقة.الفعلية ملامح مدير مجموعة مهمة ، ولكن الثانوية المدارة حزم أنفسهم.

من السهل تكوين التزامن:أنا مثل كثير من الناس ، استخدام Emacs على العديد من أجهزة الكمبيوتر والخوادم ، وبعضها بلدي وبعض لا.سيكون من المدهش إذا كان مدير الحزم كان نوعا من الملفات التي لا يمكن نقلها من كمبيوتر إلى آخر ؛ ثم في الأخير الكمبيوتر ، مدير مجموعة سيجلب لي Emacs في الدولة يعجبني في-جميع الحزم المثبتة تكوينات مجموعة.جنبا إلى جنب مع القدرة على أن تكون قادرة على تثبيت بسهولة سواء على مستوى الموقع (إذا كان أحد لديه أذونات الجذر) أو مستخدم واحد يمكنني مزامنة كل من Emacsen في كل مكان.

أنا متأكد تقريبا من أن أفضل حل ينطوي على تقديم المزيد من حزم ELPA وإضافة مصادر متعددة دعم الحزمة.ش.Emacs مشرفي قالت أنها ستنظر بما في ذلك حزمة.ش في النسخة 24 طالما أنه أشار إلى FSF مستودع افتراضي.

بالطبع تقديم يحتاج أيضا إلى أن تكون عملية مؤتمتة أيضا ؛ الطريقة الحالية البريدية ELPA معيل يعمل فقط على نطاق صغير.

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

من المفيد أيضا:

  • "metapackages" ، لتثبيت عدة مجموعات في آن واحد.
  • في نفس الطريق, يجب أن تكون قادرة على تثبيت مجموعة من elisp ملفات الصيانة
  • "كسر" حزم لا ينبغي أن يسمح لتعطيل Emacs بدء التشغيل.هذا سهل و يجب تنفيذه في بلدي .emacs
  • القدرة على تثبيت الملفات وغيرها من النصوص.هذا غالبا ما يتم تجاهله ، ولكن من المفيد جدا.سوف تكون قادرة على ، على سبيل المثال ، السفينة الصور للرموز, أشرطة الأدوات, الخ.
  • الإصدار:حزمة X يتطلب حزمة Y > 1.0
  • اختبار:أداء الأساسية التعقل الشيكات اختبار الصراعات (ارتباطات المفاتيح, وظيفة redefinitions, الوظائف التي من المتوقع أن تكون موجودة ولكن لم تكن ، إلخ).
  • تتبع علة:لا أستطيع أن أؤكد على أهمية هذا يكفي.وجود مكان مركزي على تقرير حزمة البق (ويجري قادرة على تتبع لهم) المهم للغاية ضمان جودة حزم.

نوعا من أرشيف مضغوط يبدو أن الأفضل القيام ببعض المذكورة أعلاه.


حتى الآن تحسنت كثيرا ELPA يبدو وسيلة للذهاب.

قضيت بعض الوقت في كتابة مجموعة صغيرة مدير Emacs.

http://gmarceau.qc.ca/plugin.el

كتبت:

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

سوف تحتاج اثنين مكتبة الملفات للحصول على تشغيل ، حلقة بنيات.ش و سجل.ش

أعتقد أن القراصنة فون حصلت قريب جدا إلى ما أريد ، كما يفعل أوبونتو "apt".

أحب أن تكون قادرة على:

  • إضافة
  • إزالة (حزمة فقط)
  • إزالة إعدادات المستخدم
  • عرض الوثائق
  • ترقية ( بعد قراءة سجل التغيير)
  • إضافة جديدة الأرشيف ( الملقب إضافة مستودع )
  • انظر تبعيات
  • انظر النسخة
  • البحث عن اسم الكلمة
  • تصفح عن طريق (تاريخ الاضافة ، تاريخ معدلة الاسم)
  • حفظ جميع الحزم المثبتة & الإعدادات
  • تحميل مجموعة من الحزم & الإعدادات

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

سيكون لطيفا إذا كان هذا كل تعادل في بوابة/svn/ما بحيث يمكن تثبيت الإصدارات القديمة.جعل الخاصة بك بقع من قبل التفرع خارج الخ الخ الخ....

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

أعتقد أن مدير مجموعة يجب أن تأخذ الكثير من الإلهام من جواهر روبي.أعتقد أيضا أنه يجب أن يكون موقع مثل Gemcutter.

مستودع مركزي يمكن أيضا أن تكون لطيفة (مثل Emacsmirror).لكن هذا قد لا يكون ضروريا إذا كان موقع مثل Gemcutter موجود أن يجمع كل الحزم.

أعتقد أن هذه الأمور مهمة لهذا العمل.

  • موقع مركزي من نوع ما يجمع جميع الباقات
  • سهلة لإضافة حزم
  • سهلة للحفاظ على الحزم
  • من السهل أن تسهم الحزم الأخرى
  • من السهل تثبيت وإلغاء التثبيت حزم التحديث
  • إمكانية إضافة حزمة تبعيات
  • هيكل مشترك لجميع الباقات

حتى مدير مجموعة مثل جواهر روبي مع موقع مثل Gemcutter و مستودع مركزي مثل Emacsmirror (يفضل أن يكون على جيثب بسبب انها الاجتماعية الترميز) أن تفعل Emacs جيدة حقا.

جميع في كل شيء أعتقد أن الكثير من الإلهام ينبغي أن تؤخذ من القضبان وكيف القضبان يتعامل مع الأحجار الكريمة.

أنا لا أعرف كيف طازجة هذا السؤال...
ولكن النموذج أود أن أراه هو CPAN.أنا أيضا لا أعرف جواهر روبي ولكن يبدو مشابهة CPAN.

CPAN هو بيرل الأرشيف + نظام إدارة المكتبات.عندما أريد أن أكتب بيرل البرنامج الذي يتطلب...FTP أو الصابون أو سلمان أو XML أو الرمز البريدي, أو...الخ, لا يمكن تشغيل CPAN مدير مجموعة ، حدد المطلوبة حزمة تحميل, عرض والتحقق من التبعيات ، ثم تثبيت كل شيء.CPAN هو معكوسة .."في كل مكان".

CPAN يعمل بشكل رائع لأغراض بلدي ، و شيء مماثل بالنسبة emacs سيكون من الجميل أن يكون.كما أنها تدعم بناء C/C++ رمز على الطلب.

هذا ما كنت تود أن ترى في emacs.

بعض تعليقات أخرى على هذه المتطلبات.

  • صراحة تحميل الحزم.لا تركيب السيارات.لا غير مرئية شعبية.أريد أن أسأل عن مكتبات جديدة أو وظيفة جديدة.
  • يجب أن تكون قادرة على إدراج اسم/الإصدار/الطابع الزمني من الحزم المثبتة.
  • إذا كان صديقي يعطيني له قائمة, يجب أن تكون قادرة على مهرجان دبي السينمائي الدولي له emacs الدولة ضد الألغام.
  • الاختيار التحديثات المهمة.ما هي التحديثات المتاحة ؟ ما الإصلاح ؟
  • depedency التدقيق والتحقق تحميل.إذا قمت بتثبيت csharp-وضع يتطلب v5.0.28 من cc-الوضعية ، ومن ثم ينبغي أن تؤكد لي أنني يجب أيضا تحميل cc-الوضعية.
  • يجب أن يكون هناك نوع من الترتيب المجتمع من هذه الحزم ، مثل ترتيب السيول على ايزوهنت.أريد أن أرى إذا كان حزمة 3 القطرية أو 3000.
  • "المعاملات" السلوك.إذا تم تثبيت يذهب الطفرة ، يجب أن الاسترخاء إلى آخر معروف-حالة جيدة.
  • إجراءات الأمان.إذا كنت قد وضعت تعديل مخصصة في linum.ال ، يجب أن ترفض تثبيت نسخة جديدة على التغييرات ، إلا أنني صراحة تسمح بذلك.يجب أن يحذر مني قبل حتى أن تبدأ.تفعل هذا مع اختبارية/md5 على القائمة تثبيت.
  • لديك الخيار من تشغيل بعض الحزم من أرشيف مضغوط ، مثل ملفات zip.لذا لم يكن أي شك في أن كنت لم تقم بتحديث أي من embbedded elisp.
  • القدرة على استخدام معكوسة المضيفين حزمة توزيع.
  • كل هذه الوظيفة ينبغي أن يكون الوصول إليها من خلال م-× المكتبة-manageemnt أو شيء من هذا.

أخيرا, سيكون من الجميل أن يكون وسيلة لعزل أو تنظيم المكتبات من الوظائف.الهرمية مساحات الأسماء.Emacs' شقة مساحة مؤرخة جدا.هذا هو نوع من المستقلين ولكن مكملة الوظيفة الأساسية حزمة إدارة.أنا لا يسب المعلم لذلك أنا لا أعرف كم هذا صعب ؛ ربما هناك بالفعل طريقة للقيام بذلك.

حزمة المديرين لا تقدم أي قيمة I w.r.t.ملف واحد elisp حزم مع بسيطة تبعيات:إضافة وحذف من site-lisp لم تسبب المشاكل.إنه الحزم التي تعتمد على البرامج الخارجية (على سبيل المثال ، يسبيل), ملفات متعددة الحزم (على سبيل المثال ، auctex, org-الوضعية) التي يمكن أن تكون خادعة.لا يمكن التفكير في أي ملف واحد elisp حزمة مع بديهي تبعيات مرتجلا.

لهذه قصيرة من مدير مجموعة أود emacs' elisp حزم للحصول على اختبار الأجنحة والتي يمكن تشغيلها بشكل جماعي ، التي توفر معلومات مفيدة في حالة تبعية الفشل.

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