15.088
Bearbeitungen
HeikoK (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
(fix local htmlAndWikitextDump()) |
||
| (48 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
local p = {} --p stands for package | local p = {} --p stands for package | ||
function p. | function p.print_template_args() | ||
local args = "" | local args = "" | ||
for key, value in pairs(mw.getCurrentFrame():getParent().args) do | for key, value in pairs(mw.getCurrentFrame():getParent().args) do | ||
args = args .. "|" .. key .. "=" .. value | args = args .. "|" .. key .. "=" .. p.htmlAndWikitextDump(value) | ||
end | end | ||
return "<br> | return "<br><code><nowiki>{{" .. mw.getCurrentFrame():getParent():getTitle() .. args .. "}}</nowiki></code><br>" | ||
end | end | ||
function p.print_call_args( | function p.print_call_args(frame) | ||
local args = "" | |||
local first_arg = true | local first_arg = true | ||
for key, value in | for key, value in pairs(frame.args) do | ||
if not first_arg then | if not first_arg then | ||
args = args .. "|" | args = args .. "|" | ||
end | end | ||
args = key .. "=" .. tostring(value) | args = args .. key .. "=" .. tostring(value) | ||
first_arg = false | first_arg = false | ||
end | end | ||
return "<br> | return "<br><code><nowiki>(" .. args .. ")</nowiki></code><br>" | ||
end | |||
function p.GetFrameAndParentArgs(frame) | |||
-- mw.log("GetFrameAndParentArgs(frame)") | |||
-- mw.logObject(frame) | |||
-- Konsolenzeile zum Debuggen: | |||
-- p.GetParentArgs{pargs={test=14}} | |||
local pargs | |||
if frame.pargs ~= nil then | |||
pargs = frame.pargs -- for debugging purposes in console | |||
frame = mw.getCurrentFrame() | |||
else | |||
pargs = frame:getParent().args | |||
end | |||
-- mw.logObject(frame) | |||
-- mw.logObject(pargs) | |||
return frame, pargs | |||
end | |||
function p.htmlAndWikitextDump(t) | |||
local d = "" | |||
for i = 1, mw.ustring.len(t) do | |||
local c = mw.ustring.byte(t, i) | |||
if c == mw.ustring.byte("[") then | |||
d = d .. "[" | |||
elseif c == mw.ustring.byte("]") then | |||
d = d .. "]" | |||
elseif c == mw.ustring.byte("{") then | |||
d = d .. "{" | |||
elseif c == mw.ustring.byte("}") then | |||
d = d .. "}" | |||
elseif c == mw.ustring.byte("<") then | |||
d = d .. "<" | |||
elseif c == mw.ustring.byte(">") then | |||
d = d .. ">" | |||
else | |||
d = d .. mw.ustring.char(c) | |||
end | |||
end | |||
return d | |||
end | end | ||
return p | return p | ||