الفرق بين المراجعتين لصفحة: «Twig/coding standards»

من موسوعة حسوب
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 %}

انظر أيضًا

المصادر