الفرق بين المراجعتين ل"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 %}

انظر أيضًا

المصادر