الگو:Code
{{{1}}}
![]() | بهدلیل محدودیت سرورها برابر با ۵۰۰ فراخوانی «توابع تجزیهگر پرخرج» (#اگرموجود:، اندازهصفحه:، و صفحهدررده:)، این الگو تنها در صورتی بهدرستی کار خواهد کرد که صفحهای که از آن استفاده میکند، پیش از این از این محدودیت عبور نکرده باشد. هرگاه محدودیت شکسته شود، صفحهای که این الگو در آن بهکار رفته به رده:صفحههایی که حاوی تعداد زیادی فراخوانی سنگین دستورهای تجزیهگر هستند افزوده خواهد شد. (اطلاعات بیشتر) |
استفاده
[ویرایش]این الگو بخش کوچکی از متن را در برچسبهای <syntaxhighlight>
قرار میدهد (mw:Extension:SyntaxHighlight را ببینید). از این الگو باید برای نمونههای کوچک استفاده شود؛ برای محتوای بزرگتر از <pre>...</pre>
یا <syntaxhighlight>...</syntaxhighlight>
استفاده کنید. برای توضیح درباره برچسبهای مختلف راهنما:ویکیمتن را ببینید.
اگر در الگو علامت مساوی (=) بکار رفته است، باید صراحتا پارامتر را با |1=
مشخص کنید. مانند: {{code
این الگو از برچسب <syntaxhighlight>
با ویژگی inline=1
استفاده میکند. این مانند ترکیب برچسبهای <code>
و <nowiki>
است که به یک متن گستردهتر اعمال میشود. برای نمونه، {{code
یک '''ویکی''' متن
اگر متن بالا به صورت ویکیمتن معرفی شود مانند ({{code
یک '''ویکی''' متن
اما {{code
فراخوانی {{[[الگو:{{{1}}}|{{{1}}}]]}}
برای جلوگیری از فراخوانی الگو از <nowiki>...</nowiki>
استفاده کنید:
فراخوانی {{الگو}}
هنگامیکه از {{code}}
به صورت درونخطی استفاده میشود، این الگو به بهترین شکل خود نمایش داده میشود و اگر با فاصله (space) از متن معمولی جدا شود، خواندن آن بسیار راحت است:
.خالی {{code|ویکی متن}} یک
که به خوبی با فاصله (space) از متن معمولی جدا شده است:
- یک
ویکی متن
خالی.
در مقابل:
.خالی {{code|ویکی متن}} یک
که تشخیص آن دشوارتر است:
- یک
ویکی متن
خالی.
چون "یک" و "ویکی
" در مقایسه با "ویکی
" و "متن
" نزدیکتر به هم به نظر میرسند؛ عرض کاراکتر فاصله (space) در یک قلم تکفاصله، تقریبا همیشه بیشتر از یک قلم تناسبی (proportional) است.
از پارامتر {{{2}}} (در حالت بینام به شکل |2=
یا به شکل مشخصتر به صورت |زبان=
) برای مشخص کردن زبان برنامهنویسی برای mw:Extension:SyntaxHighlight استفاده کنید. پیشفرض این گزینه |زبان=text
یعنی بدون برجستهسازی است. مقادیر معتبر برای این پارامتر |زبان=wikitext
برای ویکیمتن و |زبان=html
برای HTML به همراه بسیاری از زبانهای دیگر از جمله php
،perl
،css
،javascript
،mysql
است. اگر تلاش کنید مقدار نامعتبری را در پارامتر |زبان=
استفاده کنید، آن صفحه به رده:صفحههای دارای خطای سینتکسهایلایت افزوده خواهد شد و خروجی آن هیچ برجستگی در نحو (syntax) نخواهد داشت. در گذشته html4strict
و html5
مقادیر معتبری بودند، اما امروز از |زبان=html
استفاده کنید.
این الگو نیازی به جایگزینی ندارد.
نمونهها
[ویرایش]نشانهگذاری | نمایش |
---|---|
یک {{code|ویکی '''متن'''}} خالی |
یک |
یک {{code|ویکی '''متن'''|wikitext}} خالی |
یک |
اعلان {{code|زبان=cpp |int foo(const std::string& bar, const std::vector<long double*>& baz);}} نمونه اولیه برای یک تابع است که بعداً تعریف میشود. |
اعلان |
اگر کد دارای [[علامت مساوی]] باشد، مانند {{code |lang=javascript |code=var img = document.getElementsByTagName("img");}} باید پارامتر نخست را صراحتا با {{{1}}} یا {{{code}}} مشخص کنید؛ همچنین [[:bugzilla:5138]] را ببینید. |
اگر کد دارای علامت مساوی باشد، مانند var img = document.getElementsByTagName("img"); باید پارامتر نخست را صراحتا با {{{1}}} یا {{{code}}} مشخص کنید؛ همچنین bugzilla:5138 را ببینید. |
الگوهای جاسازی شده
[ویرایش]الگوهایی که در {{code}} جاسازی شده باشند؛ طبق انتظار کار نمیکنند. برای بلوکهای کد طولانیتر و با شکل آزاد که بتوانند الگوهایی مانند {{متغیر}} و {{samp}} را درون خود جای دهند؛ از <code>...</code>
به عنوان بستهبندی کننده بجای این الگو استفاده کنید.
الگوهایی که درون {{code}} قرار میگیرند؛ کد اجرایی HTML را نمایش میدهند که در برخی موارد میتواند مفید باشد. مانند این نمونه:
نشانهگذاری | نمایش |
---|---|
{{code| {{cite web |title=Title |url=http://example.org}} |lang=html }} |
|
نمونه بالا کد HTML را نشان میدهد که توسط {{cite web}} اجرا شده است که به همراه آن، فراداده پنهان آن نیز دیده میشود.
هشدار تابع تجزیهکننده پرخرج
[ویرایش]این الگو به صورت داخلی از mw:Extension:SyntaxHighlight استفاده میکند، که یک «تابع تجزیهکننده پرخرج» در نظر گرفته میشود (به en:WP:EXPENSIVE مراجعه کنید). اگر این الگو در صفحهای استفاده شود که بیش از ۵۰۰ تابع تجزیهکننده پرخرج در آن بکار رفته است، خروجی استفادههای بعدی از این الگو با استفاده از قالببندی <code>...</code>
(بدون هیچگونه برجستهسازی نحوی (syntaxhighlight)) جایگزین میشود.
دادههای الگو
[ویرایش]الگوداده Code
یک رشته کد منبع درونخطی.
پارامتر | توضیحات | نوع | وضعیت | |
---|---|---|---|---|
کد | 1 code | کدی که باید نمایش داده شود. | رشته | ضروری |
زبان | 2 lang | زبان برنامهنویسی کد منبع. فهرست مقادیر معتبر را در [[mw:Extension:SyntaxHighlight#Supported_languages]] ببینید
| رشته | پیشنهادشده |
کلاس | class | بدون توصیف | رشته | اختیاری |
سبک سیاساس | style | بدون توصیف | رشته | اختیاری |
جستارهای وابسته
[ویرایش]- {{Kbd}} برای ورودی صفحهکلید
- {{Mono}} تنها، قلم تکفاصله
- {{Codett}} بستهبندی کننده این الگو که پیشزمینه و امکان سبکبندی قاب را حذف میکند.
- {{PreCode}} بستهبندی کننده این الگو که پیشزمینه و امکان شکستگی خط را حذف میکند.
- {{Syntaxhighlight}} برجستهسازی نحو (syntax)
- {{مقدار پارامتر}} تکفاصلهای؛ handling مناسب برای فاصله خالی
- راهنما:ویکیمتن