پودمان:Expand wikitext

از ویکی‌پدیا، دانشنامهٔ آزاد
توضیحات پودمان[نمایش] [ویرایش] [تاریخچه] [پاکسازی]


این پودمان، با استفاده از تابع frame:preprocess ورودی خود را در قالب ویکی‌متن تفسیر می‌کند. اگر کل ورودی در برچسب nowiki قرار گرفته‌باشد، یا در صورتی که پارامتر اختیاری |unstrip=yes وارد شده‌باشد، قبل از پیش‌پردازش، ابتدا محتوای موجود در میان برچسب‌های nowiki را استخراج می‌کند. هر آرگومانی که به {{Expand wikitext}} فرستاده شود، در کدهای پیش‌پردازش‌شده در دسترس است و امکان استفاده از این پودمان به‌عنوان روشی ابتدایی برای استفاده از متغیرها را فراهم می‌کند.

نمونه[ویرایش]

  • {{#invoke:expand wikitext|main|{{ساخت کد|<<تا تاریخ!۲۰۲۱!۰۸>>}}}} ← تا تاریخ اوت ۲۰۲۱
  • {{#invoke:expand wikitext|main|<nowiki>{{Episode list/sublist | 1 = وان پیس (فصل ۱۵) | EpisodeNumber = {{{ep}}} | Title = یک موقعیت انفجاری! لافی در برابر لافی قلابی! | OriginalAirDate = {{تاریخ|۲۰۱۱-۱۰-۰۲ +{{#حساب:({{{ep}}})-517}} هفته }} }} </nowiki>|ep=518}} ← 518«یک موقعیت انفجاری! لافی در برابر لافی قلابی!»۲۰۱۱-۱۰-۰۲ +۱ هفته
  • {{#invoke:expand wikitext|main|<nowiki>{{2x|x}} -</nowiki>}} → xx -

local p = {}
local yesno = require("Module:Yesno")
function p.main(frame)
	local pframe = frame:getParent()
	local code = frame.args[1]
	if mw.text.trim(mw.text.killMarkers(code)) == "" or yesno(frame.args.unstrip) then
		code = mw.text.unstripNoWiki(code);
	end
	return pframe:preprocess(code)
end

return p