Bunu Modül:diller/asıl adlar ve Modül:diller/koddan asıl ada sayfalarını güncellemek için kullan.
local cikart = {}
local function generate_table(name_to_code)
local result = {}
local iterate
if name_to_code then
function iterate(module)
for code, data in pairs(mw.loadData("Modül:diller/" .. module)) do
result or data)] = code
end
end
else
function iterate(module)
for code, data in pairs(mw.loadData("Modül:diller/" .. module)) do
result = (data or data)
end
end
end
iterate("veri2")
for letter in string.gmatch("abcdefghijklmnopqrstuvwxyz", ".") do
iterate("veri3/" .. letter)
end
iterate("verix")
return result
end
local function dump(data, name_to_code)
local output = { "return {" }
local i = 1
local sorted_pairs = require "Modül:table".sortedPairs
for k, v in sorted_pairs(data) do
i = i + 1
output = ('\t = %q,'):format(k, v)
end
table.insert(output, "}")
return table.concat(output, "\n")
end
local function print_data(name_to_code, args)
if args == "plain" then
return dump(generate_table(name_to_code), name_to_code)
else
return require "Modül:debug".highlight(dump(generate_table(name_to_code), name_to_code))
end
end
function cikart.code_to_name(frame)
return print_data(false, frame.args)
end
function cikart.name_to_code(frame)
return print_data(true, frame.args)
end
return cikart