ผลต่างระหว่างรุ่นของ "มอดูล:Expand wikitext"
เนื้อหาที่ลบ เนื้อหาที่เพิ่ม
+parentPreprocessDecodeUnstrip |
. |
||
บรรทัด 21: | บรรทัด 21: | ||
function p.preprocessDecodeUnstrip(frame) |
function p.preprocessDecodeUnstrip(frame) |
||
return frame:preprocess(mw.text.decode(mw.text.unstripNoWiki(frame.args[1]))) |
return frame:preprocess(mw.text.decode(mw.text.unstripNoWiki(frame.args[1]))) |
||
-- From experiment in https://th.wikisource.org/wiki/มอดูล:User:Ans/PerformanceTest |
|||
-- by function preprocessNowiki2M() vs preprocessNowikiM(), |
|||
-- this make code run faster? |
|||
--local text = mw.text |
|||
--return frame:preprocess(text.decode(text.unstripNoWiki(frame.args[1]))) |
|||
end |
end |
||
-- To be invoked by Template |
-- To be invoked by Template |
รุ่นแก้ไขเมื่อ 19:17, 24 กันยายน 2564
มอดูลนี้ได้รับการจัดอันดับว่าพร้อมใช้งานทั่วไป มีความสมบูรณ์แล้วและคิดว่าจะปราศจากข้อผิดพลาดและพร้อมสำหรับการใช้งานตามความเหมาะสม พร้อมจะกล่าวถึงในหน้าช่วยเหลือและแหล่งข้อมูลวิกิพีเดียอื่น ๆ ว่าเป็นตัวเลือกสำหรับผู้ใช้ใหม่ในการเรียนรู้ เพื่อลดภาระของเซิร์ฟเวอร์และเอาต์พุตที่ไม่ดี ควรปรับปรุงโดยการทดสอบที่กระบะทราย แทนที่จะแก้ไขแบบลองผิดลองถูกซ้ำ ๆ |
การใช้งาน
{{#invoke:Expand wikitext|function_name}}
ตัวอย่าง
{{#invoke:expand wikitext|main|<nowiki>{{1x|x}}-</nowiki>}}
→ {{1x|x}}-{{#invoke:expand wikitext|main|<nowiki>{{1x|x}} -</nowiki>}}
→ x -{{#invoke:expand wikitext|main|<nowiki><u>u</u><ref>text</ref></nowiki>}}
→ <u>u</u><ref>text</ref>{{#invoke:Expand wikitext|preprocessDecodeUnstrip|<nowiki>{{1x|x}}-</nowiki>}}
→ x-{{#invoke:Expand wikitext|preprocessDecodeUnstrip|<nowiki>{{1x|x}} -</nowiki>}}
→ x -{{#invoke:Expand wikitext|preprocessDecodeUnstrip|<nowiki><u>underline</u><ref>text</ref></nowiki>}}
→ underline[1]
คู่มือการใช้งานที่ปรากฏด้านบนนี้ดึงมาจาก มอดูล:Expand wikitext/doc (แก้ | ประวัติ) ผู้เขียนสามารถทำการทดลองได้ที่กระบะทราย (สร้าง | คัดลอก) และชุดทดสอบ (สร้าง) ของมอดูลนี้ หน้าย่อยของมอดูลนี้ |
- ↑ text
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
-- just in case we need to use {{{unstrip}}} in wikitext
-- also this make the code simpler and faster
function p.preprocess(frame)
return frame:preprocess(frame.args[1])
end
function p.preprocessUnstrip(frame)
return frame:preprocess(mw.text.unstripNoWiki(frame.args[1]))
end
-- To be invoked directly
function p.preprocessDecodeUnstrip(frame)
return frame:preprocess(mw.text.decode(mw.text.unstripNoWiki(frame.args[1])))
-- From experiment in https://th.wikisource.org/wiki/มอดูล:User:Ans/PerformanceTest
-- by function preprocessNowiki2M() vs preprocessNowikiM(),
-- this make code run faster?
--local text = mw.text
--return frame:preprocess(text.decode(text.unstripNoWiki(frame.args[1])))
end
-- To be invoked by Template
function p.parentPreprocessDecodeUnstrip(frame)
return frame:getParent():preprocess(mw.text.decode(mw.text.unstripNoWiki(frame.args[1])))
end
return p