<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://stockhub.co/index.php?action=history&amp;feed=atom&amp;title=Module%3ASandbox%2FNardog%2F6d</id>
	<title>Module:Sandbox/Nardog/6d - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://stockhub.co/index.php?action=history&amp;feed=atom&amp;title=Module%3ASandbox%2FNardog%2F6d"/>
	<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:Sandbox/Nardog/6d&amp;action=history"/>
	<updated>2026-04-21T07:47:47Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://stockhub.co/index.php?title=Module:Sandbox/Nardog/6d&amp;diff=145881&amp;oldid=prev</id>
		<title>imported&gt;Nardog at 16:27, 11 July 2020</title>
		<link rel="alternate" type="text/html" href="https://stockhub.co/index.php?title=Module:Sandbox/Nardog/6d&amp;diff=145881&amp;oldid=prev"/>
		<updated>2020-07-11T16:27:50Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
	local data = mw.loadData(&amp;#039;Module:Sandbox/Nardog/5d&amp;#039;)&lt;br /&gt;
	-- local segments = mw.loadData(&amp;#039;Module:IPAc/&amp;#039; .. frame.args.lang).rawSegments&lt;br /&gt;
	local segments = mw.loadData(&amp;#039;Module:Sandbox/Nardog/6&amp;#039;).rawSegments&lt;br /&gt;
	local ret = {}&lt;br /&gt;
	&lt;br /&gt;
	-- Error detection&lt;br /&gt;
	do&lt;br /&gt;
		local labels = {}&lt;br /&gt;
		for k, _ in pairs(data.defLabels) do&lt;br /&gt;
			labels[k] = true&lt;br /&gt;
		end&lt;br /&gt;
		if data.langs[frame.args.lang].labels then&lt;br /&gt;
			for k, _ in pairs(data.langs[frame.args.lang].labels) do&lt;br /&gt;
				labels[k] = true&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		local dialects = data.langs[frame.args.lang].dialects&lt;br /&gt;
		if dialects then&lt;br /&gt;
			for codePat, _ in pairs(data.defDiaCodes) do&lt;br /&gt;
				for diaCode, _ in pairs(dialects) do&lt;br /&gt;
					labels[codePat:format(diaCode)] = true&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		local codes, dupes, labelDupes = {}, {}, {}&lt;br /&gt;
		local function check(s)&lt;br /&gt;
			if codes[s] then&lt;br /&gt;
				table.insert(dupes, s)&lt;br /&gt;
			else&lt;br /&gt;
				codes[s] = true&lt;br /&gt;
			end&lt;br /&gt;
			s = s:lower()&lt;br /&gt;
			if labels[s] then&lt;br /&gt;
				table.insert(labelDupes, s)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		for _, v in ipairs(segments) do&lt;br /&gt;
			check(v.code)&lt;br /&gt;
			if v.aliases then&lt;br /&gt;
				for _, alias in ipairs(v.aliases) do&lt;br /&gt;
					check(alias)&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		if dupes[1] or labelDupes[1] then&lt;br /&gt;
			for _, v in ipairs(dupes) do&lt;br /&gt;
				table.insert(ret, string.format(&lt;br /&gt;
					&amp;#039;*Error: &amp;quot;%s&amp;quot; is defined more than once.\n&amp;#039;, mw.text.nowiki(v)))&lt;br /&gt;
			end&lt;br /&gt;
			for _, v in ipairs(labelDupes) do&lt;br /&gt;
				table.insert(ret, string.format(&lt;br /&gt;
					&amp;#039;*Error: &amp;quot;%s&amp;quot; is already defined as a label code.\n&amp;#039;,&lt;br /&gt;
					mw.text.nowiki(v)))&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			table.insert(ret, &amp;#039;No errors were found.\n&amp;#039;)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Table of segments&lt;br /&gt;
	table.insert(ret,&lt;br /&gt;
		&amp;#039;{| class=&amp;quot;wikitable sortable&amp;quot;\n!Code!!Aliases!!Output!!Tooltip\n&amp;#039;)&lt;br /&gt;
	for _, v in ipairs(segments) do&lt;br /&gt;
		local aliases = &amp;#039;&amp;#039;&lt;br /&gt;
		if v.aliases then&lt;br /&gt;
			aliases = {}&lt;br /&gt;
			for i, alias in ipairs(v.aliases) do&lt;br /&gt;
				aliases[i] = &amp;#039;&amp;lt;code&amp;gt;&amp;#039; .. mw.text.nowiki(alias) .. &amp;#039;&amp;lt;/code&amp;gt;&amp;#039;&lt;br /&gt;
			end&lt;br /&gt;
			aliases = table.concat(aliases, &amp;#039;, &amp;#039;)&lt;br /&gt;
		end&lt;br /&gt;
		table.insert(ret, string.format(&lt;br /&gt;
			&amp;#039;|-\n|&amp;lt;code&amp;gt;%s&amp;lt;/code&amp;gt;||%s||class=&amp;quot;IPA&amp;quot;|%s||%s\n&amp;#039;,&lt;br /&gt;
			mw.text.nowiki(v.code), aliases, v.text,&lt;br /&gt;
			v.tooltip and mw.text.nowiki(v.tooltip) or &amp;#039;&amp;#039;))&lt;br /&gt;
	end&lt;br /&gt;
	table.insert(ret, &amp;#039;|}&amp;#039;)&lt;br /&gt;
	&lt;br /&gt;
	return table.concat(ret)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>imported&gt;Nardog</name></author>
	</entry>
</feed>