الفرق بين المراجعتين ل"Twig/coding standards"
< Twig
اذهب إلى التنقل
اذهب إلى البحث
أسامه-دمراني (نقاش | مساهمات) (1.0: إضافة عنوان الصفحة.) |
أسامه-دمراني (نقاش | مساهمات) (إدخال 2.0 تمام المحتوى وانظر أيضًا والتصانيف والمصادر.) |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:معايير كتابة الشيفرة في Twig}}</noinclude> | <noinclude>{{DISPLAYTITLE:معايير كتابة الشيفرة في Twig}}</noinclude> | ||
+ | إن{{DISPLAYTITLE:معايير كتابة الشيفرة في Twig}}نا ننصح أثناء كتابة قوالب Twig باتباع معايير الكتابة التالية: | ||
+ | |||
+ | * ضع{{DISPLAYTITLE:معايير كتابة الشيفرة في Twig}} مسافة واحدة -واحدة فقط- بعد بدء المحدِّد (delimiter) <code><nowiki>{{</nowiki></code> و <code>{%</code> و <code>{#</code>، وقبل نهاية المحدِّدات <code><nowiki>}}</nowiki></code> و <code>%}</code> و <code>#}</code>: | ||
+ | <syntaxhighlight lang="twig"> | ||
+ | {{ foo }} | ||
+ | {# تعليق #} | ||
+ | {% if foo %}{% endif %} | ||
+ | </syntaxhighlight>وعند استخدام محرف التحكم في المسافات الفارغة، لا تضع أي مسافات بينه وبين المحدِّد:<syntaxhighlight lang="twig"> | ||
+ | {{- foo -}} | ||
+ | {#- تعليق -#} | ||
+ | {%- if foo -%}{%- endif -%} | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | * ضع مسافة واحدة -واحدة فقط- قبل وبعد العوامل التالية: | ||
+ | ** عوامل الموازنة (<code>==</code>, <code>!=</code>, <code><</code>, <code>></code>, <code>>=</code>, <code><=</code>). | ||
+ | ** العوامل الرياضية (<code>+</code>, <code>-</code>, <code>/</code>, <code>*</code>, <code>%</code>, <code>//</code>, <code>**</code>). | ||
+ | ** العوامل المنطقية (<code>not</code>, <code>and</code>, <code>or</code>)، و <code>~</code> و <code>is</code> و <code>in</code>. | ||
+ | ** العامل الثلاثي (<code>?:</code>): | ||
+ | <syntaxhighlight lang="twig"> | ||
+ | {{ 1 + 2 }} | ||
+ | {{ foo ~ bar }} | ||
+ | {{ true ? true : false }} | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | * ضع مسافة واحدة -واحدة فقط- بعد علامة <code>:</code> في الجداول (hashes) و <code>,</code> في المصفوفات والجداول: | ||
+ | <syntaxhighlight lang="twig"> | ||
+ | {{ [1, 2, 3] }} | ||
+ | {{ {'foo': 'bar'} }} | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | * لا تضع أي مسافات بعد أقواس البدء ولا قبل أقواس الإغلاق في التعابير: | ||
+ | <syntaxhighlight lang="twig"> | ||
+ | {{ 1 + (2 * 3) }} | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | * لا تضع أي مسافات قبل محددات السلاسل النصية ولا بعدها: | ||
+ | <syntaxhighlight lang="twig"> | ||
+ | {{ 'foo' }} | ||
+ | {{ "foo" }} | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | * لا تضع أي مسافات قبل أو بعد العوامل التالية <code>|</code>, <code>.</code>, <code>..</code>, <code>[]</code>: | ||
+ | <syntaxhighlight lang="twig"> | ||
+ | {{ foo|upper|lower }} | ||
+ | {{ user.name }} | ||
+ | {{ user[name] }} | ||
+ | {% for i in 1..12 %}{% endfor %} | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | * لا تضع أي مسافات قبل أو بعد الأقواس المستخدمة في استدعاءات الفلاتر والدوال: | ||
+ | <syntaxhighlight lang="twig"> | ||
+ | {{ foo|default('foo') }} | ||
+ | {{ range(1..10) }} | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | * لا تضع أي مسافات قبل أو بعد بدايات أو نهايات المصفوفات والجداول: | ||
+ | <syntaxhighlight lang="twig"> | ||
+ | {{ [1, 2, 3] }} | ||
+ | {{ {'foo': 'bar'} }} | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | * اكتب المتغيرات باستخدام أحرف في حالتها الصغرى وباستخدام شرطة سفلية مكان المسافات: | ||
+ | <syntaxhighlight lang="twig"> | ||
+ | {% set foo = 'foo' %} | ||
+ | {% set foo_bar = 'foo' %} | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | * استخدم الإزاحات في شيفرتك داخل الوسوم، مع الحفاظ على نفس الإزاحة المستخدمة للغة الهدف للقالب المصيَّر: | ||
+ | <syntaxhighlight lang="twig"> | ||
+ | {% block foo %} | ||
+ | {% if true %} | ||
+ | true | ||
+ | {% endif %} | ||
+ | {% endblock %} | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | == انظر أيضًا == | ||
+ | |||
+ | * [[Twig/internals|المكونات الداخلية لمحرك القوالب Twig]]. | ||
+ | * [[Twig/api|Twig للمطورين]]. | ||
+ | * [[Twig/templates|Twig لمصممي القوالب]]. | ||
+ | |||
+ | == المصادر == | ||
+ | |||
+ | * [https://twig.symfony.com/doc/3.x/coding_standards.html صفحة Coding Standards في توثيق Twig الرسمي]. | ||
+ | |||
+ | [[تصنيف:Twig]] |
مراجعة 04:09، 23 أبريل 2021
إننا ننصح أثناء كتابة قوالب Twig باتباع معايير الكتابة التالية:
- ضع مسافة واحدة -واحدة فقط- بعد بدء المحدِّد (delimiter)
{{
و {%
و {#
، وقبل نهاية المحدِّدات}}
و%}
و#}
:
{{ foo }}
{# تعليق #}
{% if foo %}{% endif %}
وعند استخدام محرف التحكم في المسافات الفارغة، لا تضع أي مسافات بينه وبين المحدِّد:
{{- foo -}}
{#- تعليق -#}
{%- if foo -%}{%- endif -%}
- ضع مسافة واحدة -واحدة فقط- قبل وبعد العوامل التالية:
- عوامل الموازنة (
==
, !=
,<
,>
, >=
, <=
). - العوامل الرياضية (
+
,-
,/
,*
,%
,//
,**
). - العوامل المنطقية (
not
,and
,or
)، و~
وis
وin
. - العامل الثلاثي (
?:
):
- عوامل الموازنة (
{{ 1 + 2 }}
{{ foo ~ bar }}
{{ true ? true : false }}
- ضع مسافة واحدة -واحدة فقط- بعد علامة
:
في الجداول (hashes) و,
في المصفوفات والجداول:
{{ [1, 2, 3] }}
{{ {'foo': 'bar'} }}
- لا تضع أي مسافات بعد أقواس البدء ولا قبل أقواس الإغلاق في التعابير:
{{ 1 + (2 * 3) }}
- لا تضع أي مسافات قبل محددات السلاسل النصية ولا بعدها:
{{ 'foo' }}
{{ "foo" }}
- لا تضع أي مسافات قبل أو بعد العوامل التالية
|
,.
,..
,[]
:
{{ foo|upper|lower }}
{{ user.name }}
{{ user[name] }}
{% for i in 1..12 %}{% endfor %}
- لا تضع أي مسافات قبل أو بعد الأقواس المستخدمة في استدعاءات الفلاتر والدوال:
{{ foo|default('foo') }}
{{ range(1..10) }}
- لا تضع أي مسافات قبل أو بعد بدايات أو نهايات المصفوفات والجداول:
{{ [1, 2, 3] }}
{{ {'foo': 'bar'} }}
- اكتب المتغيرات باستخدام أحرف في حالتها الصغرى وباستخدام شرطة سفلية مكان المسافات:
{% set foo = 'foo' %}
{% set foo_bar = 'foo' %}
- استخدم الإزاحات في شيفرتك داخل الوسوم، مع الحفاظ على نفس الإزاحة المستخدمة للغة الهدف للقالب المصيَّر:
{% block foo %}
{% if true %}
true
{% endif %}
{% endblock %}