<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.digitalcellulose.com/wiki/index.php?action=history&amp;feed=atom&amp;title=Module%3ALanguages%2Ftemplates</id>
	<title>Module:Languages/templates - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.digitalcellulose.com/wiki/index.php?action=history&amp;feed=atom&amp;title=Module%3ALanguages%2Ftemplates"/>
	<link rel="alternate" type="text/html" href="https://www.digitalcellulose.com/wiki/index.php?title=Module:Languages/templates&amp;action=history"/>
	<updated>2026-06-04T17:10:51Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.2</generator>
	<entry>
		<id>https://www.digitalcellulose.com/wiki/index.php?title=Module:Languages/templates&amp;diff=98270&amp;oldid=prev</id>
		<title>Adminsuzy: Created page with &quot;local export = {}  function export.exists(frame) 	local args = frame.args 	local lang = args[1] or error(&quot;Language code has not been specified. Please pass parameter 1 to the...&quot;</title>
		<link rel="alternate" type="text/html" href="https://www.digitalcellulose.com/wiki/index.php?title=Module:Languages/templates&amp;diff=98270&amp;oldid=prev"/>
		<updated>2018-08-27T21:04:36Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;local export = {}  function export.exists(frame) 	local args = frame.args 	local lang = args[1] or error(&amp;quot;Language code has not been specified. Please pass parameter 1 to the...&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;
function export.exists(frame)&lt;br /&gt;
	local args = frame.args&lt;br /&gt;
	local lang = args[1] or error(&amp;quot;Language code has not been specified. Please pass parameter 1 to the module invocation.&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	lang = require(&amp;quot;Module:languages&amp;quot;).getByCode(lang)&lt;br /&gt;
	&lt;br /&gt;
	if lang then&lt;br /&gt;
		return &amp;quot;1&amp;quot;&lt;br /&gt;
	else&lt;br /&gt;
		return &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- Used by the following JS:&lt;br /&gt;
-- * [[WT:ACCEL]]&lt;br /&gt;
-- * [[WT:EDIT]]&lt;br /&gt;
-- * [[WT:NEC]]&lt;br /&gt;
function export.getByCode(frame)&lt;br /&gt;
	local args = frame.args&lt;br /&gt;
	local langcode = args[1] or error(&amp;quot;Language code has not been specified. Please pass parameter 1 to the module invocation.&amp;quot;)&lt;br /&gt;
	local itemname = args[2] or error(&amp;quot;Type of information to look up has not been specified. Please pass parameter 2 to the module invocation.&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	local lang = require(&amp;quot;Module:languages&amp;quot;).getByCode(langcode)&lt;br /&gt;
	&lt;br /&gt;
	if not lang then&lt;br /&gt;
		error(&amp;quot;The language code '&amp;quot; .. langcode .. &amp;quot;' is not valid.&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
	-- The item that the caller wanted to look up&lt;br /&gt;
	&lt;br /&gt;
	if itemname == &amp;quot;getOtherNames&amp;quot; then&lt;br /&gt;
		local index = args[3]; if index == &amp;quot;&amp;quot; then index = nil end&lt;br /&gt;
		index = tonumber(index) or error(&amp;quot;Please specify the numeric index of the desired name.&amp;quot;)&lt;br /&gt;
		return lang:getOtherNames()[index] or &amp;quot;&amp;quot;&lt;br /&gt;
	elseif itemname == &amp;quot;getFamily&amp;quot; then&lt;br /&gt;
		return lang:getFamily():getCode()&lt;br /&gt;
	elseif itemname == &amp;quot;getWikimediaLanguages&amp;quot; then&lt;br /&gt;
		local index = args[3]; if index == &amp;quot;&amp;quot; then index = nil end&lt;br /&gt;
		index = tonumber(index) or error(&amp;quot;Please specify the numeric index of the desired language.&amp;quot;)&lt;br /&gt;
		local langs = lang:getWikimediaLanguages()&lt;br /&gt;
		&lt;br /&gt;
		if langs[index] then&lt;br /&gt;
			return langs[index]:getCode()&lt;br /&gt;
		else&lt;br /&gt;
			return &amp;quot;&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
	elseif itemname == &amp;quot;getScripts&amp;quot; then&lt;br /&gt;
		local index = args[3]; if index == &amp;quot;&amp;quot; then index = nil end&lt;br /&gt;
		index = tonumber(index) or error(&amp;quot;Please specify the numeric index of the desired script.&amp;quot;)&lt;br /&gt;
		local scripts = lang:getScriptCodes()&lt;br /&gt;
		&lt;br /&gt;
		if scripts[index] then&lt;br /&gt;
			return scripts[index]&lt;br /&gt;
		else&lt;br /&gt;
			return &amp;quot;&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
	elseif itemname == &amp;quot;getAncestors&amp;quot; then&lt;br /&gt;
		local index = args[3]; if index == &amp;quot;&amp;quot; then index = nil end&lt;br /&gt;
		index = tonumber(index) or error(&amp;quot;Please specify the numeric index of the desired ancestor.&amp;quot;)&lt;br /&gt;
		local ancestors = lang:getAncestors()&lt;br /&gt;
		&lt;br /&gt;
		if ancestors[index] then&lt;br /&gt;
			return ancestors[index]:getCode()&lt;br /&gt;
		else&lt;br /&gt;
			return &amp;quot;&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
	elseif itemname == &amp;quot;transliterate&amp;quot; then&lt;br /&gt;
		local text = args[3]; if text == &amp;quot;&amp;quot; then text = nil end&lt;br /&gt;
		local sc = args[4]; if sc == &amp;quot;&amp;quot; then sc = nil end&lt;br /&gt;
		local module_override = args[5]; if module_override == &amp;quot;&amp;quot; then module_override = nil end&lt;br /&gt;
		sc = (sc and (require(&amp;quot;Module:scripts&amp;quot;).getByCode(sc) or error(&amp;quot;The script code \&amp;quot;&amp;quot; .. sc .. &amp;quot;\&amp;quot; is not valid.&amp;quot;)) or nil)&lt;br /&gt;
		return lang:transliterate(text, sc, module_override) or &amp;quot;&amp;quot;&lt;br /&gt;
	elseif itemname == &amp;quot;makeEntryName&amp;quot; then&lt;br /&gt;
		local text = args[3]; if text == &amp;quot;&amp;quot; then text = nil end&lt;br /&gt;
		return lang:makeEntryName(text) or &amp;quot;&amp;quot;&lt;br /&gt;
	elseif itemname == &amp;quot;makeSortKey&amp;quot; then&lt;br /&gt;
		local text = args[3]; if text == &amp;quot;&amp;quot; then text = nil end&lt;br /&gt;
		return lang:makeSortKey(text) or &amp;quot;&amp;quot;&lt;br /&gt;
	elseif lang[itemname] then&lt;br /&gt;
		local ret = lang[itemname](lang)&lt;br /&gt;
		&lt;br /&gt;
		if type(ret) == &amp;quot;string&amp;quot; then&lt;br /&gt;
			return ret&lt;br /&gt;
		else&lt;br /&gt;
			error(&amp;quot;The function \&amp;quot;&amp;quot; .. itemname .. &amp;quot;\&amp;quot; did not return a string value.&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		error(&amp;quot;Requested invalid item name \&amp;quot;&amp;quot; .. itemname .. &amp;quot;\&amp;quot;.&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function export.getByCanonicalName(frame)&lt;br /&gt;
	local args = frame.args&lt;br /&gt;
	local langname = args[1] or error(&amp;quot;Language name has not been specified. Please pass parameter 1 to the module invocation.&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	local lang = require(&amp;quot;Module:languages&amp;quot;).getByCanonicalName(langname)&lt;br /&gt;
	&lt;br /&gt;
	if lang then&lt;br /&gt;
		return lang:getCode()&lt;br /&gt;
	else&lt;br /&gt;
		return &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function export.getByName(frame)&lt;br /&gt;
	local args = frame.args&lt;br /&gt;
	local langname = args[1] or error(&amp;quot;Language name has not been specified. Please pass parameter 1 to the module invocation.&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	local lang = require(&amp;quot;Module:languages&amp;quot;).getByName(langname)&lt;br /&gt;
	&lt;br /&gt;
	if lang then&lt;br /&gt;
		return lang:getCode()&lt;br /&gt;
	else&lt;br /&gt;
		return &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function export.makeEntryName(frame)&lt;br /&gt;
	local args = frame.args&lt;br /&gt;
	local langname = args[1] or error(&amp;quot;Language name has not been specified. Please pass parameter 1 to the module invocation.&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	local lang = require(&amp;quot;Module:languages&amp;quot;).getByCode(langname)&lt;br /&gt;
	&lt;br /&gt;
	if lang then&lt;br /&gt;
		return lang:makeEntryName(args[2])&lt;br /&gt;
	else&lt;br /&gt;
		return &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function export.getCanonicalName(frame)&lt;br /&gt;
	local langCode&lt;br /&gt;
	if require(&amp;quot;Module:yesno&amp;quot;)(frame.args.parent) then&lt;br /&gt;
		langCode = frame:getParent().args[1]&lt;br /&gt;
	else&lt;br /&gt;
		langCode = frame.args[1]&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if not langCode or langCode == &amp;quot;&amp;quot; then&lt;br /&gt;
		error(&amp;quot;Supply a language code in parameter 1.&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return mw.loadData(&amp;quot;Module:languages/code to canonical_name&amp;quot;)[langCode] or &amp;quot;&amp;quot;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return export&lt;/div&gt;</summary>
		<author><name>Adminsuzy</name></author>
		
	</entry>
</feed>