<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://linguifex.com/w/index.php?action=history&amp;feed=atom&amp;title=Module%3Alabels%2Ftemplates%2Fshow_from</id>
	<title>Module:labels/templates/show from - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://linguifex.com/w/index.php?action=history&amp;feed=atom&amp;title=Module%3Alabels%2Ftemplates%2Fshow_from"/>
	<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:labels/templates/show_from&amp;action=history"/>
	<updated>2026-04-03T18:49:37Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:labels/templates/show_from&amp;diff=424271&amp;oldid=prev</id>
		<title>Sware: Created page with &quot;local export = {}  local labels_module = &quot;Module:labels&quot;  --	this function is only to be used in 		{{alternative spelling of}}, 		{{eye dialect of}} 		and similar templates					 function export.show_from(frame) 	local froms = {} 	local categories = {}  	local iparams = { 		[&quot;lang&quot;] = {type = &quot;language&quot;}, 		[&quot;default&quot;] = {}, 	} 	 	local iargs = require(&quot;Module:parameters&quot;).process(frame.args, iparams) 	local parent_args = frame:getParent().args 	local compat = iargs[&quot;...&quot;</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:labels/templates/show_from&amp;diff=424271&amp;oldid=prev"/>
		<updated>2025-01-11T22:08:17Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;local export = {}  local labels_module = &amp;quot;Module:labels&amp;quot;  --[[	this function is only to be used in 		{{alternative spelling of}}, 		{{eye dialect of}} 		and similar templates					]] function export.show_from(frame) 	local froms = {} 	local categories = {}  	local iparams = { 		[&amp;quot;lang&amp;quot;] = {type = &amp;quot;language&amp;quot;}, 		[&amp;quot;default&amp;quot;] = {}, 	} 	 	local iargs = require(&amp;quot;Module:parameters&amp;quot;).process(frame.args, iparams) 	local parent_args = frame:getParent().args 	local compat = iargs[&amp;quot;...&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 labels_module = &amp;quot;Module:labels&amp;quot;&lt;br /&gt;
&lt;br /&gt;
--[[	this function is only to be used in&lt;br /&gt;
		{{alternative spelling of}},&lt;br /&gt;
		{{eye dialect of}}&lt;br /&gt;
		and similar templates					]]&lt;br /&gt;
function export.show_from(frame)&lt;br /&gt;
	local froms = {}&lt;br /&gt;
	local categories = {}&lt;br /&gt;
&lt;br /&gt;
	local iparams = {&lt;br /&gt;
		[&amp;quot;lang&amp;quot;] = {type = &amp;quot;language&amp;quot;},&lt;br /&gt;
		[&amp;quot;default&amp;quot;] = {},&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	local iargs = require(&amp;quot;Module:parameters&amp;quot;).process(frame.args, iparams)&lt;br /&gt;
	local parent_args = frame:getParent().args&lt;br /&gt;
	local compat = iargs[&amp;quot;lang&amp;quot;] or parent_args[&amp;quot;lang&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
	local params = {&lt;br /&gt;
		[compat and &amp;quot;lang&amp;quot; or 1] = {required = not iargs[&amp;quot;lang&amp;quot;], type = &amp;quot;language&amp;quot;},&lt;br /&gt;
		[&amp;quot;from&amp;quot;] = {list = true},&lt;br /&gt;
		[&amp;quot;nocat&amp;quot;] = {type = &amp;quot;boolean&amp;quot;},&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	-- This is called by various form-of templates. They accept several params,&lt;br /&gt;
	-- and some templates accept additional params. To avoid having to list all&lt;br /&gt;
	-- of them, we just ignore unrecognized params. The main processing for the&lt;br /&gt;
	-- form-of template will catch true unrecognized params.&lt;br /&gt;
	local args = require(&amp;quot;Module:parameters&amp;quot;).process(parent_args, params, &amp;quot;allow unrecognized params&amp;quot;)&lt;br /&gt;
	local lang = args[compat and &amp;quot;lang&amp;quot; or 1] or iargs[&amp;quot;lang&amp;quot;] or require(&amp;quot;Module:languages&amp;quot;).getByCode(&amp;quot;und&amp;quot;)&lt;br /&gt;
	local nocat = args[&amp;quot;nocat&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
	for _, k in ipairs(args[&amp;quot;from&amp;quot;]) do&lt;br /&gt;
		local ret = require(labels_module).get_label_info { label = k, lang = lang, mode = &amp;quot;form-of&amp;quot;, }&lt;br /&gt;
		if ret.label ~= &amp;quot;&amp;quot; then&lt;br /&gt;
			table.insert(froms, ret.label)&lt;br /&gt;
		end&lt;br /&gt;
		if not nocat and ret.formatted_categories and ret.formatted_categories ~= &amp;quot;&amp;quot; then&lt;br /&gt;
			table.insert(categories, ret.formatted_categories)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if #froms == 0 then&lt;br /&gt;
		return iargs.default&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return require(&amp;quot;Module:table&amp;quot;).serialCommaJoin(froms) .. table.concat(categories)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return export&lt;/div&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
</feed>