<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://pool.calebcooper.ie/index.php?action=history&amp;feed=atom&amp;title=Module%3AIPAc-en%2Fdocumentation</id>
	<title>Module:IPAc-en/documentation - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://pool.calebcooper.ie/index.php?action=history&amp;feed=atom&amp;title=Module%3AIPAc-en%2Fdocumentation"/>
	<link rel="alternate" type="text/html" href="https://pool.calebcooper.ie/index.php?title=Module:IPAc-en/documentation&amp;action=history"/>
	<updated>2026-04-10T21:42:49Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://pool.calebcooper.ie/index.php?title=Module:IPAc-en/documentation&amp;diff=12489&amp;oldid=prev</id>
		<title>Caleb Cooper: Created page with &quot;-- This module generates automatic documentation for Template:IPAc-en.  local pronunciationData = mw.loadData(&#039;Module:IPAc-en/pronunciation&#039;) local phonemeData = mw.loadDa...&quot;</title>
		<link rel="alternate" type="text/html" href="https://pool.calebcooper.ie/index.php?title=Module:IPAc-en/documentation&amp;diff=12489&amp;oldid=prev"/>
		<updated>2020-10-19T11:49:46Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;-- This module generates automatic documentation for &lt;a href=&quot;/Template:IPAc-en&quot; title=&quot;Template:IPAc-en&quot;&gt;Template:IPAc-en&lt;/a&gt;.  local pronunciationData = mw.loadData(&amp;#039;Module:IPAc-en/pronunciation&amp;#039;) local phonemeData = mw.loadDa...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;-- This module generates automatic documentation for [[Template:IPAc-en]].&lt;br /&gt;
&lt;br /&gt;
local pronunciationData = mw.loadData(&amp;#039;Module:IPAc-en/pronunciation&amp;#039;)&lt;br /&gt;
local phonemeData = mw.loadData(&amp;#039;Module:IPAc-en/phonemes&amp;#039;)&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
local function makeCode(s)&lt;br /&gt;
	return string.format(&amp;#039;&amp;lt;code&amp;gt;%s&amp;lt;/code&amp;gt;&amp;#039;, mw.text.nowiki(s))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function buildTable(options)&lt;br /&gt;
	local ret = {}&lt;br /&gt;
	ret[#ret + 1] = &amp;#039;{| class=&amp;quot;wikitable&amp;quot;&amp;#039;&lt;br /&gt;
	if options.headerRow then&lt;br /&gt;
		for i, header in ipairs(options.headerRow) do&lt;br /&gt;
			ret[#ret + 1] = &amp;#039;! &amp;#039; .. header&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if options.rows then&lt;br /&gt;
		for i, t in ipairs(options.rows) do&lt;br /&gt;
			ret[#ret + 1] = &amp;#039;|-&amp;#039;&lt;br /&gt;
			for j, data in ipairs(t) do&lt;br /&gt;
				ret[#ret + 1] = &amp;#039;| &amp;#039; .. data&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	ret[#ret + 1] = &amp;#039;|}&amp;#039;&lt;br /&gt;
	return table.concat(ret, &amp;#039;\n&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function makeCodeTable(data, headers, callback)&lt;br /&gt;
	local headerRow = {&amp;#039;Code&amp;#039;, &amp;#039;Aliases&amp;#039;}&lt;br /&gt;
	for i, header in ipairs(headers) do&lt;br /&gt;
		headerRow[#headerRow + 1] = header&lt;br /&gt;
	end&lt;br /&gt;
	local rows = {}&lt;br /&gt;
	for i, t in ipairs(data) do&lt;br /&gt;
		local aliases = {}&lt;br /&gt;
		if t.aliases then&lt;br /&gt;
			for i, alias in ipairs(t.aliases) do&lt;br /&gt;
				aliases[#aliases + 1] = makeCode(alias)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		aliases = table.concat(aliases, &amp;#039;, &amp;#039;)&lt;br /&gt;
		rows[#rows + 1] = {makeCode(t.code), aliases, callback(t)}&lt;br /&gt;
	end&lt;br /&gt;
	return buildTable{&lt;br /&gt;
		headerRow = headerRow,&lt;br /&gt;
		rows = rows&lt;br /&gt;
	}&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.pronunciation()&lt;br /&gt;
	return makeCodeTable(pronunciationData, {&amp;#039;Output&amp;#039;}, function (t)&lt;br /&gt;
		return t.text&lt;br /&gt;
	end)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.phonemes()&lt;br /&gt;
	return makeCodeTable(&lt;br /&gt;
		phonemeData,&lt;br /&gt;
		{&amp;#039;Display text&amp;#039;, &amp;#039;Tooltip&amp;#039;, &amp;#039;Type&amp;#039;},&lt;br /&gt;
		function (t)&lt;br /&gt;
			return t.label, t.tooltip or &amp;#039;&amp;#039;, t.tooltip and &amp;#039;diaphoneme&amp;#039; or &amp;#039;separator&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
	)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Caleb Cooper</name></author>
	</entry>
</feed>