<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://test.st34an.tech/index.php?action=history&amp;feed=atom&amp;title=Module%3AIPA%2Ftemplates</id>
	<title>Module:IPA/templates - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://test.st34an.tech/index.php?action=history&amp;feed=atom&amp;title=Module%3AIPA%2Ftemplates"/>
	<link rel="alternate" type="text/html" href="https://test.st34an.tech/index.php?title=Module:IPA/templates&amp;action=history"/>
	<updated>2026-04-10T22:41:38Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://test.st34an.tech/index.php?title=Module:IPA/templates&amp;diff=311&amp;oldid=prev</id>
		<title>Jsrs701: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://test.st34an.tech/index.php?title=Module:IPA/templates&amp;diff=311&amp;oldid=prev"/>
		<updated>2026-04-10T07:29:38Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 07:29, 10 April 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key mediawikidb:diff:1.41:old-310:rev-311 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jsrs701</name></author>
	</entry>
	<entry>
		<id>https://test.st34an.tech/index.php?title=Module:IPA/templates&amp;diff=310&amp;oldid=prev</id>
		<title>bob&gt;Djpwikiadmin: Created page with &quot;local export = {}  local m_IPA = require(&quot;Module:IPA&quot;)  local U = mw.ustring.char local syllabic = U(0x0329)  -- Used for Template:IPA. function export.IPA(frame) 	local p...&quot;</title>
		<link rel="alternate" type="text/html" href="https://test.st34an.tech/index.php?title=Module:IPA/templates&amp;diff=310&amp;oldid=prev"/>
		<updated>2019-04-01T05:54:22Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;local export = {}  local m_IPA = require(&amp;quot;Module:IPA&amp;quot;)  local U = mw.ustring.char local syllabic = U(0x0329)  -- Used for &lt;a href=&quot;/index.php?title=Template:IPA&quot; title=&quot;Template:IPA&quot;&gt;Template:IPA&lt;/a&gt;. function export.IPA(frame) 	local p...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local export = {}&lt;br /&gt;
&lt;br /&gt;
local m_IPA = require(&amp;quot;Module:IPA&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
local U = mw.ustring.char&lt;br /&gt;
local syllabic = U(0x0329)&lt;br /&gt;
&lt;br /&gt;
-- Used for [[Template:IPA]].&lt;br /&gt;
function export.IPA(frame)&lt;br /&gt;
	local parent_args = frame.getParent and frame:getParent().args or frame&lt;br /&gt;
	local compat = parent_args[&amp;quot;lang&amp;quot;]&lt;br /&gt;
	local offset = compat and 0 or 1&lt;br /&gt;
	local params = {&lt;br /&gt;
		[compat and &amp;quot;lang&amp;quot; or 1] = {required = true, default = &amp;quot;&amp;quot;},&lt;br /&gt;
		[1 + offset] = {list = true, allow_holes = true},&lt;br /&gt;
		[&amp;quot;n&amp;quot;] = {list = true, allow_holes = true},&lt;br /&gt;
		[&amp;quot;qual&amp;quot;] = {list = true, allow_holes = true},&lt;br /&gt;
		[&amp;quot;nocount&amp;quot;] = {type = &amp;quot;boolean&amp;quot;},&lt;br /&gt;
		[&amp;quot;sort&amp;quot;] = {},&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	local args = require(&amp;quot;Module:parameters&amp;quot;).process(parent_args, params)&lt;br /&gt;
	local langarg = args[compat and &amp;quot;lang&amp;quot; or 1]&lt;br /&gt;
	local lang = mw.title.getCurrentTitle().nsText == &amp;quot;Template&amp;quot; and &amp;quot;en&amp;quot; or langarg&lt;br /&gt;
	lang = require(&amp;quot;Module:languages&amp;quot;).getByCode(lang)&lt;br /&gt;
&lt;br /&gt;
	-- [[Special:WhatLinksHere/Template:tracking/IPA/grc]]&lt;br /&gt;
	if lang and lang:getCode() == &amp;quot;grc&amp;quot; then&lt;br /&gt;
		require(&amp;quot;Module:debug&amp;quot;).track(&amp;quot;IPA/grc&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local items = {}&lt;br /&gt;
	&lt;br /&gt;
	for i = 1, math.max(args[1 + offset].maxindex, args[&amp;quot;n&amp;quot;].maxindex) do&lt;br /&gt;
		local pron = args[1 + offset][i]&lt;br /&gt;
		local note = args[&amp;quot;n&amp;quot;][i]&lt;br /&gt;
		local qual = args[&amp;quot;qual&amp;quot;][i]&lt;br /&gt;
		&lt;br /&gt;
		if lang then&lt;br /&gt;
			require(&amp;quot;Module:IPA/tracking&amp;quot;).run_tracking(pron, lang)&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if pron or note or qual then&lt;br /&gt;
			table.insert(items, {pron = pron, note = note, qualifiers = {qual}})&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return m_IPA.format_IPA_full(lang, items, nil, nil, args.sort, args.nocount)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Used for [[Template:IPAchar]].&lt;br /&gt;
function export.IPAchar(frame)&lt;br /&gt;
	local params = {&lt;br /&gt;
		[1] = {list = true, allow_holes = true},&lt;br /&gt;
		[&amp;quot;n&amp;quot;] = {list = true, allow_holes = true},&lt;br /&gt;
		[&amp;quot;lang&amp;quot;] = {}, -- This parameter is not used and does nothing, but is allowed for futureproofing.&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	local args = require(&amp;quot;Module:parameters&amp;quot;).process(frame.getParent and frame:getParent().args or frame, params)&lt;br /&gt;
	&lt;br /&gt;
	local items = {}&lt;br /&gt;
	&lt;br /&gt;
	for i = 1, math.max(args[1].maxindex, args[&amp;quot;n&amp;quot;].maxindex) do&lt;br /&gt;
		local pron = args[1][i]&lt;br /&gt;
		local note = args[&amp;quot;n&amp;quot;][i]&lt;br /&gt;
		&lt;br /&gt;
		if pron or note then&lt;br /&gt;
			table.insert(items, {pron = pron, note = note})&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Format&lt;br /&gt;
	return m_IPA.format_IPA_multiple(nil, items)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function export.XSAMPA(frame)&lt;br /&gt;
	local params = {&lt;br /&gt;
		[1] = { required = true },&lt;br /&gt;
	}&lt;br /&gt;
	local args = require(&amp;quot;Module:parameters&amp;quot;).process(frame:getParent().args, params)&lt;br /&gt;
	&lt;br /&gt;
	return m_IPA.XSAMPA_to_IPA(args[1] or &amp;quot;[Eg&amp;#039;zA:mp5=]&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Used by [[Template:X2IPA]]&lt;br /&gt;
function export.X2IPAtemplate(frame)&lt;br /&gt;
	local parent_args = frame.getParent and frame:getParent().args or frame&lt;br /&gt;
	local compat = parent_args[&amp;quot;lang&amp;quot;]&lt;br /&gt;
	local offset = compat and 0 or 1&lt;br /&gt;
&lt;br /&gt;
	local params = {&lt;br /&gt;
		[compat and &amp;quot;lang&amp;quot; or 1] = {required = true, default = &amp;quot;und&amp;quot;},&lt;br /&gt;
		[1 + offset] = {list = true, allow_holes = true},&lt;br /&gt;
		[&amp;quot;n&amp;quot;] = { list = true, allow_holes = true },&lt;br /&gt;
		[&amp;quot;qual&amp;quot;] = { list = true, allow_holes = true },&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	local args = require(&amp;quot;Module:parameters&amp;quot;).process(parent_args, params)&lt;br /&gt;
	&lt;br /&gt;
	local m_XSAMPA = require(&amp;quot;Module:IPA/X-SAMPA&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	pronunciations, notes, qualifiers, lang = args[1 + offset], args[&amp;quot;n&amp;quot;], args[&amp;quot;qual&amp;quot;], args[compat and &amp;quot;lang&amp;quot; or 1]&lt;br /&gt;
	&lt;br /&gt;
	local output = {}&lt;br /&gt;
	table.insert(output, &amp;quot;{{IPA&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	table.insert(output, &amp;quot;|&amp;quot; .. lang)&lt;br /&gt;
&lt;br /&gt;
	for i = 1, math.max(pronunciations.maxindex, notes.maxindex, qualifiers.maxindex) do&lt;br /&gt;
		if pronunciations[i] then&lt;br /&gt;
			table.insert(output, &amp;quot;|&amp;quot;..m_XSAMPA.XSAMPA_to_IPA(pronunciations[i]))&lt;br /&gt;
		end&lt;br /&gt;
		if notes[i] then&lt;br /&gt;
			table.insert(output, &amp;quot;|n&amp;quot;..i..&amp;quot;=&amp;quot;..notes[i])&lt;br /&gt;
		end&lt;br /&gt;
		if qualifiers[i] then&lt;br /&gt;
			table.insert(output, &amp;quot;|qual&amp;quot;..i..&amp;quot;=&amp;quot;..qualifiers[i])&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	table.insert(output, &amp;quot;}}&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	return table.concat(output)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Used by [[Template:X2IPAchar]]&lt;br /&gt;
function export.X2IPAchar(frame)&lt;br /&gt;
	local params = {&lt;br /&gt;
		[1] = { list = true, allow_holes = true },&lt;br /&gt;
		[&amp;quot;n&amp;quot;] = { list = true, allow_holes = true },&lt;br /&gt;
		[&amp;quot;lang&amp;quot;] = { },&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	local args = require(&amp;quot;Module:parameters&amp;quot;).process(frame:getParent().args, params)&lt;br /&gt;
	&lt;br /&gt;
	local m_XSAMPA = require(&amp;quot;Module:IPA/X-SAMPA&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	pronunciations, notes, lang = args[1], args[&amp;quot;n&amp;quot;], args[&amp;quot;lang&amp;quot;]&lt;br /&gt;
	&lt;br /&gt;
	local output = {}&lt;br /&gt;
	table.insert(output, &amp;quot;{{IPAchar&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	for i = 1, math.max(pronunciations.maxindex, notes.maxindex) do&lt;br /&gt;
		if pronunciations[i] then&lt;br /&gt;
			table.insert(output, &amp;quot;|&amp;quot;..m_XSAMPA.XSAMPA_to_IPA(pronunciations[i]))&lt;br /&gt;
		end&lt;br /&gt;
		if notes[i] then&lt;br /&gt;
			table.insert(output, &amp;quot;|n&amp;quot;..i..&amp;quot;=&amp;quot;..notes[i])&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if lang then&lt;br /&gt;
		table.insert(output, &amp;quot;|lang=&amp;quot;..lang)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	table.insert(output, &amp;quot;}}&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	return table.concat(output)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Used by [[Template:x2rhymes]]&lt;br /&gt;
function export.X2rhymes(frame)&lt;br /&gt;
	local parent_args = frame.getParent and frame:getParent().args or frame&lt;br /&gt;
	local compat = parent_args[&amp;quot;lang&amp;quot;]&lt;br /&gt;
	local offset = compat and 0 or 1&lt;br /&gt;
&lt;br /&gt;
	local params = {&lt;br /&gt;
		[compat and &amp;quot;lang&amp;quot; or 1] = {required = true, default = &amp;quot;und&amp;quot;},&lt;br /&gt;
		[1 + offset] = {required = true, list = true, allow_holes = true},&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	local args = require(&amp;quot;Module:parameters&amp;quot;).process(parent_args, params)&lt;br /&gt;
	&lt;br /&gt;
	local m_XSAMPA = require(&amp;quot;Module:IPA/X-SAMPA&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	pronunciations, lang = args[1 + offset], args[compat and &amp;quot;lang&amp;quot; or 1]&lt;br /&gt;
	&lt;br /&gt;
	local output =  {}&lt;br /&gt;
	table.insert(output, &amp;quot;{{rhymes&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	table.insert(output, &amp;quot;|&amp;quot; .. lang)&lt;br /&gt;
&lt;br /&gt;
	for i = 1, pronunciations.maxindex do&lt;br /&gt;
		if pronunciations[i] then&lt;br /&gt;
			table.insert(output, &amp;quot;|&amp;quot;..m_XSAMPA.XSAMPA_to_IPA(pronunciations[i]))&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	table.insert(output, &amp;quot;}}&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	return table.concat(output)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return export&lt;/div&gt;</summary>
		<author><name>bob&gt;Djpwikiadmin</name></author>
	</entry>
</feed>