Module:Sandbox/Erutuon/random

local p = {}

local Out_mt = {} Out_mt.__index = Out_mt

function Out_mt:add(...) for i = 1, select('#', ...) do		self.i = self.i + 1 self[self.i] = select(i, ...) end end

function Out_mt:__tostring return table.concat(self) end

function Out local o = setmetatable({}, Out_mt) o.i = 0 return o end

function p.show(frame) local out = Out local language_data = require 'Module:Language/data' local Wiktionary = { name_to_code = require 'Module:Language/Wiktionary name to code', code_to_name = require 'Module:Language/Wiktionary code to name', }	for code, data in require 'Module:TableTools'.sortedPairs(language_data.languages) do		if not Wiktionary.code_to_name[code] then out:add(code) local Wiktionary_code = data.name and Wiktionary.name_to_code[data.name] if Wiktionary_code then out:add(' &rarr; ', Wiktionary_code) local MediaWiki_name = mw.language.fetchLanguageName(Wiktionary_code, 'en') if MediaWiki_name ~= data.name then out:add(' (MediaWiki: ', MediaWiki_name ~= '' and MediaWiki_name or ' ', ', Wiktionary: ', data.name, ')') end end out:add('\n* ') elseif data.name and data.name == mw.language.fetchLanguageName(code, 'en') then out:add(code, ' (', data.name, ')') out:add('\n* ') end end return out end

return p