Module:he-links: difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
No edit summary |
Wikitiki89 (talk | contribs) m count empty strings as omitted arguments |
||
Line 6: | Line 6: | ||
function export.term(frame) |
function export.term(frame) |
||
local args = {} |
local args = {} |
||
for key, val in pairs(frame:getParent().args) do |
for key, val in pairs(frame:getParent().args) do |
||
args[key] = val |
args[key] = val |
||
end |
end |
||
if args["wv"] == "" then args["wv"] = nil end |
|||
if args["dwv"] == "" then args["dwv"] = nil end |
|||
if args[2] == nil or args[2] == "" then |
if args[2] == nil or args[2] == "" then |
||
local form, formwv, formdwv = com.process_wv_triad(args[1] or "", args["wv"], args["dwv"]) |
local form, formwv, formdwv = com.process_wv_triad(args[1] or "", args["wv"], args["dwv"]) |
||
Line 20: | Line 23: | ||
end |
end |
||
end |
end |
||
args["wv"] = nil |
args["wv"] = nil |
||
args["dwv"] = nil |
args["dwv"] = nil |
||
-- table.insert(args, 1, "he") |
-- table.insert(args, 1, "he") |
||
-- shift manually to avoid strange bugs: |
-- shift manually to avoid strange bugs: |
||
Line 30: | Line 33: | ||
args[2] = args[1] |
args[2] = args[1] |
||
args[1] = "he" |
args[1] = "he" |
||
-- Passthrough arguments after modification |
-- Passthrough arguments after modification |
||
local frame2 = frame:newChild{title = frame:getParent():getTitle(), args = args}:newChild{title = frame:getTitle(), args = frame.args} |
local frame2 = frame:newChild{title = frame:getParent():getTitle(), args = args}:newChild{title = frame:getTitle(), args = frame.args} |
||
return m_links_templates.l_term_t(frame2) |
return m_links_templates.l_term_t(frame2) |
||
end |
end |
Revision as of 12:24, 20 August 2015
- The following documentation is located at Module:he-links/documentation. [edit]
- Useful links: subpage list • links • transclusions • testcases • sandbox
local m_links_templates = require("Module:links/templates")
local com = require("Module:he-common")
local export = {}
function export.term(frame)
local args = {}
for key, val in pairs(frame:getParent().args) do
args[key] = val
end
if args["wv"] == "" then args["wv"] = nil end
if args["dwv"] == "" then args["dwv"] = nil end
if args[2] == nil or args[2] == "" then
local form, formwv, formdwv = com.process_wv_triad(args[1] or "", args["wv"], args["dwv"])
args[1] = form or ""
if formdwv then
args[2] = (formwv or form) .. " \\ " .. formdwv
else
args[2] = (formwv or form)
end
end
args["wv"] = nil
args["dwv"] = nil
-- table.insert(args, 1, "he")
-- shift manually to avoid strange bugs:
args[4] = args[3]
args[3] = args[2]
args[2] = args[1]
args[1] = "he"
-- Passthrough arguments after modification
local frame2 = frame:newChild{title = frame:getParent():getTitle(), args = args}:newChild{title = frame:getTitle(), args = frame.args}
return m_links_templates.l_term_t(frame2)
end
return export