وbrodul.recipe.template هو مفترق amplecode.recipe.template، وصفة buildout لتوليد الملفات باستخدام قوالب Jinja2 & nbsp؛ يمكنك وصفة بتكوين بيئة Jinja2، افتراضيا نسبة إلى الدليل Buildout، مما يسمح القوالب لتوسيع و تشمل القوالب الأخرى النسبية للبيئة.
هي التنزيلات المتاحة من pypi: http://pypi.python.org/pypi/brodul.recipe.template/
خيارات Buildout
- قالب ملف أو المدخلات (مطلوب): واحد أو أكثر Jinja2 مسارات الملفات القالب.
- الهدف ملف أو الإخراج (مطلوب): واحد من أكثر مسارات الملفات المستهدفة. عدد الملفات يجب أن تتطابق عدد الملفات القالب.
- قاعدة دير: دليل قاعدة للبيئة Jinja2. مسارات الملفات قالب قريبة إلى هذا الدليل. الافتراضي هو الدليل Buildout.
- هدف قابل للتنفيذ: واحد أو أكثر من الأعلام منطقية (نعم | لا يوجد | صحيح | كاذبة | 1 | 0) مما يدل على executability من الملفات المستهدفة. إذا أعطيت العلم واحد فقط يتم تطبيقه على كافة الملفات المستهدفة.
- البيض: محجوز للحصول على قائمة من البيض، وتحويلها بسهولة إلى pkg_resources.WorkingSet عندما محدد
- jinja2_filters: وظائف تصفية مخصص مفصولة مساحة بيضاء
يتم توجيهها خيارات إضافية ببساطة إلى قوالب، ومصنوعة الخيارات من جميع الأجزاء الأخرى المتاحة من خلال أجزاء. <جزء من اسم>. <خيار اسم> وأجزاء [<جزء من اسم>] [<خيار اسم>].
قوائم القيم
فمن الممكن لخيار وصفة لاحتواء واحد أو أكثر من القيم، مفصولة بيضاء. مرشح الانقسام هو متاح لعندما تريد تكرار عبر القيم بيضاء فصل في قالب Jinja2 الخاص بك:
#! / بن / ش
{٪ لcmd في CMDS | انقسام٪}
على & nbsp؛ صدى "{{}} كمد"
{٪ ENDFOR٪}
مثال الحد الأدنى
يتم إنشاء foo.txt من foo.txt.jinja2 دون أي خيارات إضافية:
[buildout]
أجزاء = فو
[فو]
وصفة = brodul.recipe.template
قالب ملف = foo.txt.jinja2
الهدف ملف = foo.txt
مثال أكبر
يتم إنشاء foo.txt من اسم التطبيق / foo.txt.jinja2، يتم إنشاء bar.sh من اسم التطبيق / bar.sh.jinja2، والثانية أن يكون قابل للتنفيذ، ويمكن لكل من القوالب الاستفادة من خيارات إضافية محددة:
[buildout]
أجزاء = فو
[فو]
وصفة = brodul.recipe.template
قاعدة دير = اسم التطبيق
قالب ملف =
على & nbsp؛ foo.txt.jinja2
على & nbsp؛ bar.sh.jinja2
الهدف ملف =
على & nbsp؛ foo.txt
على & nbsp؛ bar.sh
هدف قابل للتنفيذ =
على & nbsp؛ كاذبة
على & nbsp؛ صحيح
project_name = مثال آخر
المؤلف = عني
عوامل تصفية مخصصة
يقع وظيفة مرشح في نفس الدليل ك buildout.cfg في ملف filter.py. إذا كنت ترغب في استخدام أكثر المرشحات منفصلة لهم المساحة البيضاء.
[buildout]
أجزاء = فو
[فو]
وصفة = brodul.recipe.template
المدخلات = foo.txt.jinja2
الناتج = foo.txt
jinja2_filters = filter.bar
المتطلبات:
بيثون
لم يتم العثور على التعليقات