وحدة:Flagg
صُنفت هذه الوحدة على أنها في مرحلة بيتا. عندما تصل الوحدة لهذه المرحلة، يمكن أن يوسع استخدامها في الصفحات الأخرى. لكن يجب توخي الحذر من أن الوحدات في هذه المرحلة ما زالت حديثة العهد لذلك وجب توخي الحذر عند الاستخدام وملاحظة أي أخطاء تنتج عنها. من العرف أن المجتمع سوف يوصل الوحدات في هذه المرحلة للتي بعدها عبر صفحات النقاش الخاصة بالوحدة أو أي مكان يعلن عن هذه الوحدة عبر ملاحظة أن هذه الوحدة تعمل بشكل صحيح والجميع راضٍ عن أدائها. |
هذه الوحدة تعتمد على الوحدات الأخرى التالية: |
قالب {{Flagg}}
(عـلم عـام) هو قالب أعلام عام مع تنسيق الإخراج متغير. يستخدم لغة لوا بدلا من الآلية الموحدة، لأنها تتيح تجاوز اسم الصورة والهدف والارتباط، ويعمل القالب حتى لو كان قالب البلد غير موجود (دون تجاوز أي من حدود القوالب).
الوسائط
يتم إعطاء (بدائل القيم) لكل معلمة بين قوسين ().
التنسيق (المعلمة الأولى غير المسماه)
المعلمة الأولى هي رمز أبجدي تحدد شكل ظهور القالب. الحرف الأول يتعلق بالصورة، والثاني بالفاصل، والثالث باسم البلد. تأخذ المعلمة بعين الاعتبار تحسس حالة الأحرف.
إذا كان أي حرف من المعلمة مفقود أو بطابع لا يتطابق مع أحد الخيارات التالية, سيتم استخدام القيمه الافتراضية المحددة أدناه؛ على سبيل المثال إذا كانت المعلمة الأولى مساوية لـi، أو i**، أو izz ستقرأ كالتالي: isc.
الصورة
الصورة (الحرف الأول)
الحرف | المعنى | المعنى | وصفه | مثال |
---|---|---|---|---|
u | unlinked | دون وصلة | صورة غير مرتبطة (إفتراضي) | {{flagg|uxx|France}} ←
|
c | country | البلد | وصلة الصورة لصفحة البلد/الكيان. | {{flagg|cxx|France}} ←
|
p [f] | prefix/suffix | وصلة الصورة لاسم البلد مع البادئة. "و/أو" نص اللاحقة (افتراضي "علم ...")، يتعين باستخدام |pref= و|suff= (انظر ادناه). |
{{flagg|pxx|France}} ←
| |
i | image page | صفحة الصورة | وصلة الصورة إلى الملف الخاص بها تستخدم مع الصور غير الحرة. | {{flagg|ixx|France}} ←
|
d | data template | بيانات القالب | وصلة الصورة إلى قالب بيانات بلد المستخدم، للاستخدام في النقاش/التوثيق. تضيف الوحدة تلقائياً redirect=no إذا كانت الوصلة تحويلة. |
{{flagg|dxx|France}} ←
|
x | علامة الشطب | علامة × | لا يتم عرض أي صورة. يستخدم صورة شفافة غير مرتبطة للحفاظ على المسافات في حالة إذا كان الحرف الثاني أي شيء آخر غير x، وأيضاً o لم يتم تحديدها. | {{flagg|xnx|France}} ←
|
الفاصل
الفاصل (الحرف الثاني)
الحرف | المعنى | المعنى | وصفه | مثال | ||
---|---|---|---|---|---|---|
s | span box | مربع ممتد (افتراضي) | يتم وضع صورة العلم في <span>، وهذا يعني أن أسماء البلدان منحازة في قوائم عمودية؛ راجع توثيق قالب {{Flaglist}}. | {{flagg|usu|Niger}} ← النيجر
| ||
n | non-breaking space | مسافة غير منقسمة | يستخدم مسافة غير منقسمة ( ) كما هو الحال في معظم قوالب الأعلام، بما فيها قالب {{علم}}. لاحظ أن لا يمنع في الواقع التفاف بين الصورة والنص في جميع المتصفحات؛ استخدم w كما هو موضح أدناه إذا لزم الأمر. |
{{flagg|unu|Niger}} ← النيجر
| ||
l | line break | خط مكسور | يستخدم فاصل سطر جديد (<br/> ) كفاصل. |
{{flagg|ulu|Niger}} ← النيجر | ||
t | table cell | خلية جدول | يستخدم فاصل خلية جدول (||). | النيجر | ||
x | X mark | علامة × | لا يستخدم أي فاصل. | {{flagg|uxu|Niger}} ← النيجر
|
الاسم
الاسم (الحرف الثالث)
الحرف | المعنى | المعنى | وصفه | مثال |
---|---|---|---|---|
c | country | البلد (افتراضي) | يضع الوصلة إلى وصلة البلد. | {{flagg|xxc|Chile}} ← تشيلي
|
p | prefix/suffix | بادئة / لاحقة | وصلة اسم البلد إلى صفحة البلد، مع سابقة و/أو لاحقة (افتراضياً "علم ..."). تحدد باستخدام |pref= ، و|suff= (طالع أدناه). |
{{flagg|xxp|Chile}} ← تشيلي
|
f | full prefix/suffix | بادئة / لاحقة الكاملة | كما p، لكن في هذه الحالة يتم عرض البادئة و/أو اللاحقة. | {{flagg|xxf|Chile}} ← علم تشيلي
|
l |
link target | هدف الارتباط | كما p ، باستثناء أنه يتم عرض هدف الارتباط. |
{{flagg|xxl|Chile|avar=army}} ← تشيلي الجيش
|
b | both country and prefix/suffix | البادئة/اللاحقة للبلد | يضع وصلة البلد ووصلة البادئة واللاحقة، يربط اسم البلد إلى صفحة الدولة، ويضع وصلة أخرى مع البادئة اللاحقة. | {{flagg|xxb|Chile}} ← علم تشيلي
|
u | unlinked | دون وصلة (انظر. {{flagu}}) | يتم عرض اسم البلد كنص عادي، دون وصلة. | {{flagg|xxu|Chile}} ← تشيلي
|
d | data template | بيانات القالب | يربط اسم البلد إلى قالب بيانات البلد المستخدم، للاستخدام في صفحات النقاش أو التوثيق. يضع بشكل افتراضي redirect=no إذا كان القالب عبارة عن تحويلة. |
{{flagg|xxd|Chile}} ← تشيلي
|
a |
abbreviation | اختصار | اسم البلد غير مرتبط، ولكن يتم عرض اسم صفحة البلد/الكيان الرئيسية كنص تمرير بالماوس إذا كان مختلفًا. | {{flagg|xxa|Chile}} ← تشيلي{{flagg|xxa|CHI}} ← تشيلي
|
x | X mark | علامة × | لا يعرض أي نص. | {{flagg|xxx|Chile}} ←
|
* |
Add * | يضيف * | يشبه "p"، باستثناء أنه تتم إضافة علامة النجمة (*) إلى نص الرابط إذا كان ينتقل إلى مقالة أكثر تحديدًا. | {{flagg|xx*|Chile}} ← تشيلي *
|
أخرى
يمكن تمكين بعض الخيارات الإضافية بإلحاق الرسائل التالية إلى الأحرف الثلاثة، في أي أمر:
الحرف | شرح | مثال |
---|---|---|
a |
يضيف اسم البلد (معلمة "name"، وإن لم تكن متوفرة يستخدم المعلمة الثانية الغير مسماة) كـ نص بديل للصورة يظهر عند تمرير الفأرة على الصورة، إذا استخدمت المعلمة |alt= لتخصيص نص بديل للصورة، فهذا لا يحتاج إلى تعيينه بصورة منفصلة. |
{{flagg|uxxa|Pakistan}} ←
|
b |
يقوم بإفراغ جزء النص إذا لم يتم العثور على علامة. | {{flagg|uncb|Xanadu}} ← Compare with: {{flagg|unc|Xanadu}} ← Xanadu
|
e |
يستخدم الاسم المنصوص عليه في قالب بيانات بلد (بدلا من المعلمة الأولى) للعرض، كما في قالب {{علم الدولة}}. | {{flagg|unue|PAK}} ← باكستان
|
f |
إذا لم يكن اسم المقالة المضاف إليه بادئة أو لاحقة موجودًا، فيتم الرجوع إلى الربط بالصفحة غير المضافة إليها بادئة أو لاحقة. قد يكون ذلك مكلفًا، وعدد المرات التي يمكن استخدامها في صفحة واحدة محدود. | {{flagg|psff|Egypt|pref=السياحة في}} ← السياحة في مصرCompare with: {{flagg|psf|Egypt|pref=السياحة في}} ← السياحة في مصر
|
i |
يستخدم جدول رموز الدول الخاص باللجنة الأولمبية الدولية من وحدة:Country alias/data لاستخلاص بيانات الدولة من معلمة الكيان. | {{flagg|uxxi|BRN}} ← Compare with: {{flagg|uxx|BRN}} ←
|
l |
يضيف اسم الرابط (كما هو معرف بواسطة معلمة "image") كنص بديل وعند تمرير الفأرة فوق الصورة. إذا تم استخدام |alt= لنص بديل/نص تمرير مخصص، فلا حاجة لضبطه بشكل منفصل. |
{{flagg|cxxl|PAK}} ← Compare with: {{flagg|cxxa|PAK}} ←
|
o |
يتجاهل الصورة والمسافات في حالة كانت الصورة غير مرئية، بحيث يظهر التباعد في حالة تم عرض العلم. مفيد للاستعمال في حالة التضمين في سطر أو في قوائم أفقية، حيث ليست هناك حاجة لمحاذاة الاسم. | {{flagg|unuo|Pakistan|image=}} ← باكستانCompare with: {{flagg|unu|Pakistan|image=}} ← باكستان
|
p |
يلتف النص بين قوسين. | {{flagg|unup|Pakistan}} ← (باكستان)
|
r |
يعكس ترتيب العناصر, حيث يضع الصورة يمين الاسم كما قالب {{علم يمين}}. ولا يؤثر هذا على ترتيب الأحرف في التنسيق. | {{flagg|uncr|Pakistan}} ← باكستان
|
w |
يتجنب الالتفاف بإضافة <span class="nowrap"></span> حول الناتج. |
{{flagg|unuw|Pakistan}} ← باكستان
|
t |
محاذاة إلى اليسار في الجدول. |
الكيان/البلد (المعلمة الثانية الغير مسماة)
المعلمة الثانية هي اسم البلد أو الكيان. يستخدمها القالب لقراءة بيانات العلم من "قالب:بيانات بلد"؛ إذا لم يوجد القالب، سيتم استخدام نفس المعلمة افتراضياً كاسم البلد ولن يتم عرض أي صورة، وتعرف المعلمة اسم العرض الافتراضي إذا لم تستخدم المعلمة e.
وسائط الصورة
|variant=
[المعلمة الثالثة غير المسماة]- يحدد صورة متغير العلم، كما هي محددة في قالب بيانات بلد. على سبيل المثال،
{{flagg|ixx|Germany|naval}}
← يستخدم المتغير "naval بحري" في قالب:بيانات بلد ألمانيا. |image=
- تخصيص اسم الصورة تحتوي أو لا تحتوي "File:" .يمكن استخدامها إذا كانت الصورة المطلوبة ليست متوفرة كمتغير للكيان (يمكنك بدلا من ذلك تطلب ذلك يمكن ان تضاف في صفحة نقاش القالب البيانات التي تخصها)، أو في حالة عدم وجود قالب بيانات. قم بتعيينها إلى "none" أو ["blank" أو قيمة فارغة] لاستخدام صورة شفافة غير موصولة (عمليا مطابقة لتنسيق الوسيط x).
|size=
و[|sz=
]- يحدد حجم الصورة؛ الافتراضي هو 23×15 بكسل (أكبر في بعض الكيانات). يمكنك استخدام حجم صريح في بكسل (مثل 30x20px; اللاحقة "px" هي اختيارية) أو واحد من الأحجام النسبية "xs" (نصف الأبعاد الافتراضية)، "s" و"m" و"l" و"xl" (ضعف الحجم الافتراضي).
|border=
- افتراضيا، يتضمن رمز العلم حدود، إلا إذا تم تعطيله في قالب بيانات بلد في الوسيط
|border=
يمكن تعيينه لـ "yes" أو ["y" ًأو "1"] لفرض الحدود عند استبعاده افتراضيا، أو يمكن تعيينه لـ "no" أو ["n" أو "0" أو سلسلة فارغة] لمنع ذلك. |align=
و[|al=
]- قم بتعيينها إلى
- "left" أو ["l"] أو
- "center" أو ["centre" أو "c" أو "middle" أو "m"]
- أو "right" أو ["r"]
لضبط محاذاة صورة لتنسيق المربع الممتد (s) وتنسيق خلية الجدول (t). بالنسبة للوسيط t فانه افتراضياً محاذاة الوسط، أما s فهو محاذاة إلى اليمين، إن لم تحدد قيمة لـ r وإلا فأنه سيكون محاذاة لليسار.
|width=
و[|w=
]- يحدد عرض المربع الممتد المحيط حول الصورة (s) بالبكسل، بدون "px" يتم احتساب قيمة افتراضية بواسطة وحدة:Flaglist/size ويعتمد على حجم الصورة.
|alt=
- يحدد نص بديل ونص يظهر عند مرور الفأرة فوق صورة العلم،إذا كان النص المطلوب يساوي اسم الكيان، استخدم الخيار a المذكور أعلاه.
|ilink=
- تجاوز وصلة الصورة (استخدم هذا فقط إذا لم يتيح أي من خيارات التنسيق أعلاه بربط الصفحة المطلوبة).
|noredlink=no
- يعرض رابطًا أحمر إلى قالب بيانات الدولة المفقود بدلاً من صورة بديلة. إذا تم ضبطه على
notext
، فلن يتم عرض أي نص بجانب الرابط الأحمر. الوضع الافتراضي هو "نعم" (لا يتم عرض رابط أحمر). |missingcategory=اسم التصنيف
- يضيف الصفحة إلى "اسم التصنيف" إذا كانت بيانات الدولة مفقودة.
وسائط النص والوصلة
|name=
- تغيير اسم البلد المعروض. لاحظ أنه مع تنسيق f، وهذا يشمل البادئة و / أو لاحقة.
- [
|link=
] و|clink=
- الكتابة فوق الارتباط إلى مقالة البلد؛ يتم استخدام هذه أيضا لبناء وصلة بادئة / لاحقة للخيارات التالية: f، وp، وb .
|pref=
و|suff=
و|plink=
|pref=
و|suff=
تعيين البادئة واللاحقة لاستخدامها في بادئة / لاحقة الروابط (شكل الحروف f، وp وb). افتراضياً،إذا لم يتم تحديد ذلك، سيكون "علم_" بادئة (راجع {{flagof}}) ولن يتم استخدام لاحقة. يمكن استخدام المعلمة|plink=
لتجاوز الارتباط المشترك.
|the=
- قم بتعيينها إلى "yes" أو ["y"، أو "1"] لتضمين "the" قبل اسم البلد في بادئة/لاحقة الروابط . مثال:
{{flagg|usf|Philippines|the=1}}
← علم ال الفلبين. استعمل|pthe=
إذا كان الرابط يحتاج ذلك، "و" لكن في الاسم ليس كذلك، واستخدم|nthe=
إذا كان الاسم يحتاج ذلك، ولكن الرابط لا يحتاج ذلك.
|section=
- وصلة لقسم من أقسام المقالة، دون عرض اسم المقطع في الاسم، في حالة تم استخدام وصلة البلد وأيضاً بادئة/لاحقة الوصلة قم باستخدام
|csection=
للقسم في المقالة، واستخدم|psection=
للقسم المسبوق/المتبوع من المقالة.
|altvar=
، و[|avar=
]، و|age=
- إمكانية استخدام لاحقة قياسية محددة مسبقاً، كوصلة لفريق رياضي أو فرع عسكري. يتم تحميل بيانات altvar واللاحقة من وحدة:flagg/Altvar data. القيم الممكنة للمعلمات هي الأسماء الأساسية للقوالب المخصصة المقابلة؛ قيم الاسم المستعار من أسم الرياضة الكاملة الموجودة (أنظر الأمثلة الواردة أدناه وصفحة البيانات).
بالنسبة لبعض الكيانات أو العناصر، هذا يغير الصورة أيضاً لمحدد بديل variant إلى رياضة أو فرع عسكري؛ على سبيل المثال:
{{flagg|usp|Ireland|avar=ru}}
← أيرلندا يستخدم علم اتحاد الرغبي لتمثيل فريق اتحاد الرجبي الأيرلندي. لفرق الشباب في بعض الألعاب الرياضية (انظر صفحة البيانات)، الحد الأدنى للسن لا بد وأن يتم تعيينه باستخدام الوسيط |age=
.
|nalign=
، و[|nal=
]- تعيين محاذاة النص في شكل خلية الجدول (t). افتراضياً محاذاة لليسار؛ القيم الممكنة هي نفسها بالنسبة لـ
|align=
.
|preftext=
- يضيف بادئة نصية فقط لا تُدرج في الرابط. هذا النص لا يتأثر بأي خيار سوى b لإخفاء النص إذا لم يتم العثور على العلم. سيتم فصله عن نص الرابط بواسطة
 
إلا إذا تم تحديد خيارات الفاصل x أو n (في هذه الحالة، سيستخدم لا شيء أو فاصل سطر، على التوالي).
|text=
- يتجاوز النص بالكامل؛ استخدمه فقط عند الضرورة لأي تنسيقات غير قياسية. بدلاً من ذلك، يمكنك ضبط الحرف الثالث من معلمة التنسيق إلى x (بدون نص) وإضافة نص مخصص خارج القالب.
|nodata=y
- يتجاوز محاولات استخدام قالب
{{country data ...}}
المقابل، وهو مفيد عندما لا يوجد قالب بيانات الدولة المقابل.
|pref2=
,|suff2=
,|plink2=
,|psection2=
- إذا تم تحديد f extra، ولم يكن اسم المقالة المضاف إليه بادئة أو لاحقة موجودًا، فاستخدم هذه المعلمات كبادئة/لاحقة بديلة، وتحقق مما إذا كان موجودًا أيضًا. (إذا لم يكن موجودًا بعد ذلك، فعليك الرجوع إلى الصفحة غير المضافة إليها بادئة أو لاحقة كالمعتاد). قد يكون ذلك مكلفًا، وعدد المرات التي يمكن استخدامها في صفحة واحدة محدود.
أمثلة
التنسيقات:
{{flagg|usc|Fiji}}
← فيجي (التنسيق الافتراضي){{flagg||Fiji}}
← فيجي (التنسيق الافتراضي){{flagg|pnbr|Fiji}}
← علم فيجي<span style="display:inline-block;text-align:center;">{{flagg|ilf|Fiji|sz=xl}}</span>
→
علم فيجي
تنسيق الجدول والمحاذاة:
{{flagg|utu|Jamaica}} |
جامايكا | |
{{flagg|utur|Jamaica}} |
جامايكا | |
{{flagg|utu|Jamaica|al=l|nal=l}} |
جامايكا | |
{{flagg|utu|Jamaica|al=c|nal=c}} |
جامايكا | |
{{flagg|utu|Jamaica|al=r|nal=r}} |
جامايكا |
{{flagg|usu|Switzerland}}
← سويسرا{{flagg|usu|Switzerland|al=l}}
← سويسرا{{flagg|usu|Switzerland|al=c}}
← سويسرا{{flagg|usu|Switzerland|al=r}}
← سويسرا
معايير الصورة الافتراضية واسماء المعلمات:
{{flagg|isc|Myanmar}}
← ميانمار{{flagg|isc|Myanmar|border=}}
← ميانمار{{flagg|isc|Myanmar|1974}}
← ميانمار{{flagg|isc|Myanmar|variant=1974}}
← ميانمار{{flagg|isc|Myanmar|name=Burma|variant=1974}}
← Burma{{flagg|isc|Burma|variant=1974}}
← بورما{{flagg|isc|Myanmar|sz=30}}
← ميانمار{{flagg|isc|Myanmar|size=30}}
← ميانمار{{flagg|isc|Myanmar|size=30px}}
← ميانمار{{flagg|isc|Myanmar|size=30x18px}}
← ميانمار{{flagg|isc|Myanmar|size=xs}}
← ميانمار{{flagg|isc|Myanmar|size=xl}}
← ميانمار{{flagg|isc|Myanmar|width=30|size=xs}}
← ميانمار{{flagg|isc|Myanmar|image=}}
← ميانمار{{flagg|isc|Myanmar|image=Flag of None.svg}}
ينتج: → ميانمار{{flagg|isc|Myanmar|image=File:Flag of None.svg}}
ينتج: → ميانمار
الوصلات والـ altvars:
{{flagg|psp|Egypt}}
← مصر{{flagg|psf|Egypt}}
← علم مصر{{flagg|psb|Egypt}}
← علم مصر{{flagg|psb|Philippines|the=1}}
← علم ال الفلبين{{flagg|csc|Egypt|section=History}}
← مصر{{flagg|csb|Egypt|csection=History}}
← علم مصر{{flagg|psb|Egypt|psection=Kingdom of Egypt (1922–1953)|variant=1922}}
← علم مصر{{flagg|psb|Egypt|plink=List of Egyptian flags}}
← علم مصر{{flagg|psf|Egypt|pref=تاريخ}}
← تاريخ مصر{{flagg|psp|Egypt|suff=at the Olympics}}
← مصر{{flagg|psp|Egypt|avar=fb}}
← مصر{{flagg|psp|Egypt|avar=football}}
← مصر{{flagg|psp|Egypt|avar=fbu|age=20}}
← مصر{{flagg|psl|Egypt|avar=navy}}
← القوات البحرية المصرية{{flagg|unapi|EGY|preftext=Sara Ahmed}}
← Sara Ahmed (مصر)
قالب بيانات غير موجود:
{{flagg|isc|EUSSR|nodata=1}}
← EUSSR{{flagg|isc|EUSSR|image=EUSSR red flag.svg|size=xl|nodata=1}}
← EUSSR
إضافة روابط لمقالات البلدان أو الولايات وغيرها باستخدام النجمة
مثال:
بمجرد أن يكون لديك جدول يحتوي على {{flaglist}}, "و/أو قالب علم آخر مثل {{flag}}" من السهل تحويل الروابط إلى روابط متخصصة. لذلك بدلا من أوكلاهوما سيكون لديك السجن في أوكلاهوما، أو إذا لم تكن هذه المقالة موجودة، إذن الجريمة في أوكلاهوما.
يعمل هذا مع الأسماء الكاملة للدول أو الولايات الأمريكية. كما يعمل مع الأسماء المختصرة (المكونة من 3 أحرف) للدول، والأسماء المختصرة (المكونة من حرفين) للولايات الأمريكية.
استخدم البحث والاستبدال الشامل كما هو موضح سابقًا، ولكن بدون تعبيرات منتظمة. استبدل:
{{علم|
- أو
{{Flaglist|
باسستخدام
{{flagg{{{1|}}}|us*eft|pref=Incarceration in|pref2=Crime in|
The bar after flag or flaglist is necessary to avoid problems in case you have to replace 2 flag templates.
The {{flagg}} template looks for the articles. If it finds one of the two choices it adds the link and an asterisk after the location name. If it does not find either article, it just adds the standard link.
Substitute your preferred topics in the pref= and pref2= spots.
{{flagg{{{1|}}}|us*eft|
usually left aligns the text of that column (due to the "t" at the end of the code). For some unknown reason that is not always true. In that case each cell in that column will need style=text-align:left
in it. Or use the whole column code described here: #Column alignment and here: {{Table alignment}}. See example table.
واشنطن العاصمة - Have to force the full name to be shown:
{{flagg{{{1|}}}|us*eft|pref=Crime in|Washington, D.C.|name=Washington, D.C.}}
This particular use of {{flagg}} parameters is expensive and can only be used on a few hundred links per article. Every time the article is saved it occurs, even for null edits. So only one big country table per article. Other country tables in the same article should use standard links.
In قائمة الدول حسب معدل السجن the {{flagg}} template creates a link to Incarceration in United States. That link is a redirect to Incarceration in the United States. Add "the" as necessary to create redirect pages. Admins will delete redirects that are not linked from within Wikipedia. So if you need to create redirects be sure to use them right away in an article table. Or keep them in a sandbox that the admins can see until you use them in an article table. See examples. See list.
{{flagg}} removes the names of the countries behind territories, subnational areas, etc.. This makes for more compact tables. Other flag templates (such as {{flaglist}}) do not do that. But that template can not create specialized country links.
See Global Search at Toolforge. Search for
"{{flagg{{{1|}}}|us*eft" - in quotes. To get transclusion count and list of articles.
The {{flagg}} template does not work if colspan is used before the country/state name. {{flag+link}} works. See: نقاش القالب:flagg#Does not work with colspan. See section farther down for {{flag+link}} info: #Without asterisks. Only one preference.
مقارنة مع قوالب أخرى
هذه القوالب "المتخصصة" تسبق ظهور flagg، وعلى الرغم من أن معظمها لا يحتوي على خيارات للروابط والصور المخصصة، إلا أنها ربما تكون أسرع لأنها تقوم فقط بإجراء عمليتين نقل دون استدعاء Lua.
قوالب عامة
القالب | قالب {{flagg}} مقابل |
مثال |
---|---|---|
{{العلم|البلد}}
|
{{flagg|unc|البلد}}
|
{{العلم|China}} ← China
|
{{flagbig|البلد}}
|
{{flagg|ulc|البلد|sz=l}}
|
{{flagbig|China}} ← الصين
|
{{flagc|البلد}}
|
{{flagg|inc|البلد}}
|
{{flagc|China}} ← الصين
|
{{علم الدولة|البلد}}
|
{{flagg|unce|البلد}}
|
{{علم الدولة|CHN}} ← الصين
|
{{علم ديكو|البلد}}
|
{{flagg|uxx|البلد}}
|
{{علم ديكو|China}} ←
|
{{رمز علم|البلد}}
|
{{flagg|cxxlo|البلد}}
|
{{رمز علم|China}} ← |
{{صورة رمز علم|image}}
|
{{flagg|uxx|image=image}}
|
{{صورة رمز علم|Flag of China.svg}} ←
|
{{رابط علم|البلد|لاحقة }}
|
{{flagg|unp|البلد|suff=لاحقة }}
|
{{رابط علم|China|at the Hopman Cup}} ← الصين
|
{{flag+link|بادئة|البلد}}
|
{{flagg|unpe|البلد|pref=بادئة}} (no existence check)
|
{{flag+link|Agriculture in|China}} ← الصين
|
{{flaglist|البلد}}
|
{{flagg|usc|البلد}}
|
{{flaglist|China}} ← الصين
|
{{flagof|البلد}}
|
{{flagg|unp|البلد|sz=l}}
|
{{flagof|China}} ← الصين
|
{{علم يمين|البلد}}
|
{{flagg|uncr|البلد}}
|
{{علم يمين|China}} ← الصين
|
{{flagu|البلد}}
|
{{flagg|unu|البلد}}
|
{{flagu|China}} ← الصين
|
{{noflag|البلد}}
|
{{flagg|xnu|البلد}}
|
{{noflag|China}} ← China
|
{{noflag|[[البلد]]}}
|
{{flagg|xnc|البلد}}
|
{{noflag|[[الصين]]}} ← الصين
|
قوالب رياضية/عسكرية
تستخدم الأمثلة قوالب كرة القدم، وبقية الألعاب الرياضية تعمل تبعاً لذلك.
القالب | قالب {{flagg}} مقابل |
مثال |
---|---|---|
{{ك ق|البلد}}
|
{{flagg|unpe|البلد|avar=fb}}
|
{{ك ق|China}} ← الصين
|
{{ك ق|البلد|align=1}}
|
{{flagg|uspe|البلد|avar=fb|al=c}}
|
{{ك ق|China|align=1}} ← الصين
|
{{ك ق-كبير|البلد}}
|
{{flagg|ulpe|البلد|avar=fb|sz=l}}
|
{{ك ق-كبير|China}} ← الصين
|
{{ك ق-يم|البلد}}
|
{{flagg|unpre|البلد|avar=fb}}
|
{{ك ق-يم|China}} ← الصين
|
{{fbicon|البلد}}
|
{{flagg|pxxl|البلد|avar=fb}}
|
{{fbicon|China}} ← |
{{ك ق ت|عمر|البلد}}
|
{{flagg|unpe|البلد|avar=fbu|age=عمر}}
|
{{ك ق ت|17|China}} ← الصين
|
{{ك ق ن|البلد}}
|
{{flagg|unpe|البلد|avar=fbw}}
|
{{ك ق ن|China}} ← الصين
|
{{fbwu|عمر|البلد}}
|
{{flagg|unpe|البلد|avar=fbwu|age=عمر}}
|
{{fbwu|17|China}} ← الصين
|
{{علم الجيش|البلد}}
|
{{flagg|unl|البلد|avar=army}}
|
{{army|China}} ← القوات البرية لجيش التحرير الشعبي
|
{{بحرية|البلد}}
|
{{flagg|unl|البلد|avar=navy}}
|
{{بحرية|China}} ← بحرية جيش التحرير الشعبي
|
{{قوات جوية|البلد}}
|
{{flagg|unl|البلد|avar=air force}}
|
{{قوات جوية|China}} ← سلاح جو جيش التحرير الشعبي
|
{{armed forces|البلد}}
|
{{flagg|usl|البلد|avar=military}}
|
{{armed forces|China}} ← قوات مسلحة الصين
|
طالع أيضًا
- وحدة:Flag غلاف لوا لـ وحدة:flagg مُصمم لاستبدال بعض قوالب الأعلام الشائعة بسهولة.
local titleSelf = mw.title.new(... or mw.getCurrentFrame():getTitle())
local titleCountryData = mw.title.new [[Module:CountryData]]
local sandbox = titleSelf.subpageText:match [[^ملعب]]
--if titleSelf.isSubpage then
--if sandbox then
--titleCountryData = titleCountryData:subPageTitle(sandbox)
--end
--end
local CountryData = require(tostring(titleCountryData))
local p = {}
function p.main(frame)
--Get input arguments
local args =
require("Module:Arguments").getArgs(
frame,
{
valueFunc = function(key, value)
if value then
value = mw.text.trim(value)
--Change empty string to nil for all args except 'image' and 'border'
if key == "image" or key == "border" or value ~= "" then
return value
end
end
return nil
end
}
)
--Call main function
return p.luaMain(frame, args)
end
function getcachedtable(frame, countryDataCountry, apar)
-- return CountryData.getcachedtable(frame, countryDataCountry, apar)
return CountryData.gettable(frame, countryDataCountry, apar)
end
function p.luaMain(frame, args)
local function emp2nil(x)
if x == "" then
return nil
else
return x
end
end
local function space2emp(x)
if string.find(x, "^%s*$") then
return ""
else
return x
end
end
local function nopx(x)
if x ~= nil and (string.find(x, "^%d+$") or string.find(x, "^%d+px$")) then
return string.gsub(x, "^(.*)px", "%1")
else
return nil
end
end
--Country & mode parameters
local mode = string.lower(args[1] or "usc")
local mi = string.sub(mode, 1, 1)
local ms = string.sub(mode, 2, 2)
local mn = string.sub(mode, 3, 3)
local me = string.sub(mode, 4, -1)
local country = args[2] or ""
local countryDataCountry = country
if string.find(me, "i") then
local titleIocCountryData = mw.title.new [[Module:Country alias/data]]
local IocCountryData = require(tostring(titleIocCountryData))
local iocCountryAlias = IocCountryData.countryAliases[country] or country
countryDataCountry =
IocCountryData.countries[iocCountryAlias]["countrydata_name"] or
IocCountryData.countries[iocCountryAlias]["name"]
end
local find = require("Module:تحويلات بلدان").red -- Just in Arabic
country = find(country) or ""
local avar = args["avar"] or args["altvar"]
local clink = args["clink"] or args["link"]
--Get country data & altvar data
local data, alink, amap, asuf, apre
if avar then
local age = args["age"] or ""
local aalias
amap, aalias = require("Module:Flagg/Altvar data" .. ((sandbox and "/ملعب") or "")).alttable(age)
avar = string.gsub(string.lower(avar or ""), "[ -]", "")
avar = aalias[avar] or avar
if not amap[avar] then
error("Unknown avar")
end
local apar = {
altvar = amap[avar].altvar,
mw = amap[avar].mw,
age = amap[avar].age,
variant = args["variant"] or args[3]
}
data = getcachedtable(frame, countryDataCountry, apar)
asuf = amap[avar].altlink
apre = amap[avar].linkpre
alink =
data["link alias-" .. amap[avar].altvar] or
(apre or '') .. " " .. (clink or data["shortname alias"] or data.alias or country) .. " " .. asuf
else
data =
(args["nodata"] and {}) or
getcachedtable(frame, countryDataCountry, { variant = args["variant"] or args[3] })
avar = ""
amap = { [""] = { altvar = "" } }
end
--Name and link parameters
clink = clink or data.alias or country
local pref = args["pref"]
local suff = args["suff"] or asuf
local pref2 = args["pref2"]
local suff2 = args["suff2"]
if not pref and not suff then --Default prefix
pref = "علم"
end
local yn_map = { [""] = 0, ["0"] = 0, ["no"] = 0, ["n"] = 0, ["1"] = 1, ["yes"] = 1, ["y"] = 1 }
local fthe = (args["pthe"] and yn_map[args["pthe"]] ~= 0) or (args["the"] and yn_map[args["the"]] ~= 0)
local nthe = (args["nthe"] and yn_map[args["nthe"]] ~= 0) or (args["the"] and yn_map[args["the"]] ~= 0)
-- fthe = fthe and (pref and "t" or "T") .. "he " or ""
-- nthe = nthe and (pref and "t" or "T") .. "he " or ""
fthe = fthe and (pref and "ا" or "ا") .. "ل " or ""
nthe = nthe and (pref and "ا" or "ا") .. "ل " or ""
local flink =
args["plink"] or args["flink"] or alink or clink == "" and "" or
space2emp((pref or "") .. " ") .. fthe .. clink .. space2emp(" " .. (suff or ""))
local flink2
if args["plink2"] or args["flink2"] or pref2 or suff2 then
flink2 =
args["plink2"] or args["flink2"] or clink == "" and "" or
space2emp((pref2 or "") .. " ") .. fthe .. clink .. space2emp(" " .. (suff2 or ""))
else
flink2 = flink
end
local fsec = args["psection"] or args["section"]
local fsec2 = args["psection2"] or args["section"]
local csec = args["csection"] or args["section"]
fsec = fsec and "#" .. fsec or ""
fsec2 = fsec2 and "#" .. fsec2 or ""
csec = csec and "#" .. csec or ""
if string.find(me, "f") then
if mw.title.new(flink).exists == false then
if flink2 ~= flink and mw.title.new(flink2).exists == true then
flink = flink2
fsec = fsec2
else
flink = clink
end
end
end
local name = args["name"]
if not name then
local cname =
string.find(me, "e") and (data["name alias-" .. amap[avar].altvar] or data["shortname alias"] or data.alias) or
country
if mn == "f" then
name =
cname == "" and "" or space2emp((pref or "") .. " ") .. nthe .. cname .. space2emp(" " .. (suff or ""))
else
name = cname
end
end
--Image parameters
local pimage = args["image"]
local placeholder = "Flag placeholder.svg"
local variant = args["variant"] or args[3] or ""
local image_map = { [""] = placeholder, ["none"] = placeholder, ["blank"] = placeholder }
if pimage then --Remove namespace
pimage = string.gsub(pimage, "^[Ff][Ii][Ll][Ee]:", "")
pimage = string.gsub(pimage, "^[Ii][Mm][Aa][Gg][Ee]:", "")
end
local iname = image_map[pimage] or pimage
local size = args["size"] or args["sz"]
local size_map = { xs = "12x8px", s = "17x11px", m = "23x15px", l = "32x21px", xl = "46x30px" }
if size == nil or string.find(size, "^%d*x?%d+px$") then
--valid EIS size ( .. px, x .. px or .. x .. px) or unset
elseif string.find(size, "^%d*x?%d+$") then --EIS size without "px" suffix
size = size .. "px"
else --size from map, or invalid value
size = size_map[size] or nil
end
local border = args["border"]
if iname then
size = size or "23x15px"
if yn_map[border] == 0 then
border = ""
else
border = "|border"
end
else
iname =
data["flag alias-" .. amap[avar].altvar .. "-" .. variant] or data["flag alias-" .. variant] or
data["flag alias-" .. amap[avar].altvar] or
data["flag alias"] or
placeholder
size = size or emp2nil(data.size) or "23x15px"
if border then
if yn_map[border] == 0 then
border = ""
else
border = "|border"
end
else
local autoborder = data["border-" .. variant] or data["border-" .. amap[avar].altvar] or data.border
if autoborder and autoborder ~= "border" then
border = ""
else
border = "|border"
end
end
end
local am = ""
if args["alt"] or string.find(me, "a") then
am = args["alt"] or args["name"] or country
am = am .. "|" .. am
end
--Build display name
local text = args["text"]
if not text then
if mn == "x" then --no text
text = ""
elseif mn == "p" or mn == "f" or mn == "*" then --prefix/suffix link
text = flink == "" and name or "[[" .. flink .. fsec .. "|" .. name .. "]]"
-- By the principle of least surprise, there should be some
-- indication that the link [[X of Country|Country]] does not
-- go to [[Country]].
if mn == "*" and clink ~= flink then
text = text:sub(1, -3) .. "\226\128\175*]]"
end
elseif mn == "l" then --display link target
text = flink == "" and name or "[[" .. flink .. fsec .. "|" .. (args["name"] or flink) .. "]]"
elseif mn == "b" then --both prefix/suffix and normal country link
local preflink =
pref and (flink == "" and pref .. " " or "[[" .. flink .. fsec .. "|" .. pref .. "]] ") or ""
local sufflink =
suff and (flink == "" and " " .. suff or " [[" .. flink .. fsec .. "|" .. suff .. "]]") or ""
local namelink =
(name == "" and "" or nthe) .. (clink == "" and name or "[[" .. clink .. csec .. "|" .. name .. "]]")
text = preflink .. namelink .. sufflink
elseif mn == "d" then --data template
local title = mw.title.new("Template:بيانات بلد " .. country)
--check if redirect
if title.isRedirect then
text = '<span class="plainlinks">[' .. title:fullUrl("redirect=no") .. " " .. name .. "]</span>"
else
text = "[[" .. title.fullText .. "|" .. name .. "]]"
end
elseif mn == "u" then --unlinked
text = name
elseif mn == "a" then --abbr
text =
name == country and
(clink == country and country or "<abbr title='" .. clink .. "'>" .. country .. "</abbr>") or
("<abbr title='" .. name .. "'>" .. country .. "</abbr>")
else --country link (default)
text = clink == "" and name or "[[" .. clink .. csec .. "|" .. name .. "]]"
end
if string.find(me, "p") then
text = "(" .. text .. ")"
end
end
if type(text) == "function" then
text = text(data)
end
--Define separator
local separator = " " --non-breaking space (n)
if ms == "x" then --no separator
separator = ""
elseif ms == "l" then --line break
separator = "<br/>"
end
--Add preftext, if used
local preftext = args["preftext"]
if (preftext or "") ~= "" then
text = preftext .. separator .. text
end
--Build image
local ilink = args["ilink"]
if not ilink then
if mi == "x" or (iname == placeholder and pimage ~= placeholder) then --no image/invisible image
iname = placeholder
border = ""
ilink = "|link="
am = ""
elseif mi == "i" then --image page link
ilink = ""
elseif mi == "c" then --country link
ilink = "|link=" .. clink .. (clink == "" and "" or csec)
elseif mi == "p" or mi == "f" then --prefix/suffix link
ilink = "|link=" .. flink .. (flink == "" and "" or fsec)
elseif mi == "d" then --data template
local title = mw.title.new("Template:بيانات بلد " .. country)
--check if redirect
if title.isRedirect then
ilink = "|link=" .. title:fullUrl("redirect=no")
else
ilink = "|link=" .. title.fullText
end
else --unlinked (default)
ilink = "|link="
end
end
if am == "" and string.find(me, "l") then
am = mw.ustring.sub(ilink, 7, -1)
end
local image = "[[ملف:" .. iname .. "|" .. size .. border .. ilink .. "|alt=" .. am .. "]]"
if iname == placeholder then
if require("Module:yesno")(args["noredlink"]) == false or args["noredlink"] == "notext" then
if country ~= "" and data.alias == nil then
iname = ""
image = "[[:Template:بيانات بلد " .. country .. "]]"
if args["noredlink"] == "notext" then
text = ""
end
end
end
if (args["missingcategory"] or "") ~= "" then
image = image .. args["missingcategory"]
end
if string.find(me, "b") then
text = ""
end
end
--Combine image and name with separator
local align_map = {
left = "left",
l = "left",
center = "center",
centre = "center",
c = "center",
middle = "center",
m = "center",
right = "right",
r = "right"
}
local align = align_map[args["align"] or args["al"]]
local nalign = align_map[args["nalign"] or args["nal"]]
local out
if string.find(me, "r") then
--image right of name
if (ms == "x" and mi == "x") or (string.find(me, "o") and iname == placeholder and pimage ~= placeholder) then --name only
out = text
elseif ms == "x" or ms == "n" or ms == "l" then --no separator, non-breaking space, or line break
out = text .. '<span class="flagicon">' .. separator .. image .. "</span>"
elseif ms == "t" then --table cell
out =
'style="text-align:' ..
(nalign or "left") ..
'"|' ..
text ..
'||style="text-align:' ..
(align or "center") .. '"|<span class="flagicon">' .. image .. "</span>"
else --fixed-width span box (default)
local width = args["width"] or args["w"] or require("Module:Flaglist").luawidth(size)
out =
text ..
' <span class="flagicon" style="display:inline-block;width:' ..
width .. "px;text-align:" .. (align or "right") .. ';">' .. image .. "</span>"
end
else --image left of name
if (ms == "x" and mi == "x") or (string.find(me, "o") and iname == placeholder and pimage ~= placeholder) then --name only
out = text
elseif ms == "x" or ms == "n" or ms == "l" then --no separator, non-breaking space, or line break
out = '<span class="flagicon">' .. image .. separator .. "</span>" .. text
elseif ms == "t" then --table cell
out =
'style="text-align:' ..
(align or "center") ..
';"|<span class="flagicon">' ..
image .. '</span>||style="text-align:' .. (nalign or "left") .. '"|' .. text
else --fixed-width span box (default)
local width = nopx(args["width"] or args["w"]) or require("Module:Flaglist").luawidth(size)
out =
'<span class="flagicon" style="display:inline-block;width:' ..
width .. "px;text-align:" .. (align or "left") .. ';">' .. image .. "</span> " .. text
end
end
if string.find(me, "w") then --avoid wrapping
out = '<span class="nowrap">' .. out .. "</span>"
end
-- align in table
if me:find("t") then
out = 'style="text-align:' .. (align or "left") .. '"|' .. out
end
--Tracking categories
local cat = ""
if pimage and not image_map[pimage] and country ~= "" and data["flag alias"] and not args.demo then
cat = "[[تصنيف:صفحات تستخدم قالب Flagg بصورة محددة]]"
end
return out .. cat
end
return p