الفرق بين المراجعتين لصفحة: «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 %}