Toggle menu
15
236
74
27.6K
Kenshi Wiki
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
Revision as of 01:02, 12 March 2025 by Prd (talk | contribs) (Created page with "local mFor = require('Module:For') local mArguments = require('Module:Arguments') local p = {} function p.forFoo (frame) local args = mArguments.getArgs(frame, {parentOnly = true} ) local forargs = {frame.args.what} if args[1] and (args[1] or '' ~= '') then for i, v in ipairs(args) do if (v or '' ~= '') then table.insert(forargs, args[i]) end end else local target local title = mw.title.getCurrentTitle().text local titles = { mw.ustring.lower(mw....")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)


Implements {{for outline}} and {{for timeline}}.



local mFor = require('Module:For')
local mArguments = require('Module:Arguments')
local p = {}

function p.forFoo (frame)
	local args = mArguments.getArgs(frame, 
		{parentOnly = true}
	)
	local forargs = {frame.args.what}
	if args[1] and (args[1] or '' ~= '') then
		for i, v in ipairs(args) do
			if (v or '' ~= '') then	table.insert(forargs, args[i]) end
		end
	else
		local target
		local title = mw.title.getCurrentTitle().text
		local titles = {
			mw.ustring.lower(mw.ustring.sub(title, 1, 1)) .. mw.ustring.sub(title, 2),
			title
		}
		local forms = frame.args
		for k, v in ipairs(forms) do
			for i, j in pairs(titles) do
				local lookup = string.format(v, j)
				if mw.title.new(lookup, 0).exists then
					target = lookup
					break
				end
			end
			if target then break end
		end
		table.insert(forargs, target or string.format(forms[1], title))
	end

	return mFor._For(forargs)
end
return p