<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://pdkb.chivanet.org/wiki/index.php?action=history&amp;feed=atom&amp;title=Module%3ATNTTools</id>
		<title>Module:TNTTools - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://pdkb.chivanet.org/wiki/index.php?action=history&amp;feed=atom&amp;title=Module%3ATNTTools"/>
		<link rel="alternate" type="text/html" href="https://pdkb.chivanet.org/wiki/index.php?title=Module:TNTTools&amp;action=history"/>
		<updated>2026-06-17T14:53:23Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.29.1</generator>

	<entry>
		<id>https://pdkb.chivanet.org/wiki/index.php?title=Module:TNTTools&amp;diff=1952&amp;oldid=prev</id>
		<title>DavidWhitten at 16:27, 23 June 2021</title>
		<link rel="alternate" type="text/html" href="https://pdkb.chivanet.org/wiki/index.php?title=Module:TNTTools&amp;diff=1952&amp;oldid=prev"/>
				<updated>2021-06-23T16:27:44Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&#039;diff-marker&#039; /&gt;
				&lt;col class=&#039;diff-content&#039; /&gt;
				&lt;col class=&#039;diff-marker&#039; /&gt;
				&lt;col class=&#039;diff-content&#039; /&gt;
				&lt;tr style=&#039;vertical-align: top;&#039; lang=&#039;en&#039;&gt;
				&lt;td colspan=&#039;2&#039; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&#039;2&#039; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 16:27, 23 June 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l2&quot; &gt;Line 2:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 2:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;local TNT = require(&amp;#039;Module:TNT&amp;#039;)&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;local TNT = require(&amp;#039;Module:TNT&amp;#039;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;--&lt;/del&gt;local SD = require(&amp;#039;Module:SimpleDebug&amp;#039;)&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;local SD = require(&amp;#039;Module:SimpleDebug&amp;#039;) &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; -- uncommented DJW 20210623&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;function p.TNTTabFull (TNTTab)&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;function p.TNTTabFull (TNTTab)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>DavidWhitten</name></author>	</entry>

	<entry>
		<id>https://pdkb.chivanet.org/wiki/index.php?title=Module:TNTTools&amp;diff=1735&amp;oldid=prev</id>
		<title>DavidWhitten: Created page with &quot;local p = {}  local TNT = require(&#039;Module:TNT&#039;) --local SD = require(&#039;Module:SimpleDebug&#039;)  function p.TNTTabFull (TNTTab) 	if (string.sub(TNTTab, 1, 5)) ~= &#039;I18n/&#039; then 		TNT...&quot;</title>
		<link rel="alternate" type="text/html" href="https://pdkb.chivanet.org/wiki/index.php?title=Module:TNTTools&amp;diff=1735&amp;oldid=prev"/>
				<updated>2021-03-13T05:39:59Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;local p = {}  local TNT = require(&amp;#039;Module:TNT&amp;#039;) --local SD = require(&amp;#039;Module:SimpleDebug&amp;#039;)  function p.TNTTabFull (TNTTab) 	if (string.sub(TNTTab, 1, 5)) ~= &amp;#039;I18n/&amp;#039; then 		TNT...&amp;quot;&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;
local TNT = require(&amp;#039;Module:TNT&amp;#039;)&lt;br /&gt;
--local SD = require(&amp;#039;Module:SimpleDebug&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
function p.TNTTabFull (TNTTab)&lt;br /&gt;
	if (string.sub(TNTTab, 1, 5)) ~= &amp;#039;I18n/&amp;#039; then&lt;br /&gt;
		TNTTab = &amp;#039;I18n/&amp;#039;..TNTTab&lt;br /&gt;
	end	&lt;br /&gt;
	if (string.sub(TNTTab, string.len(TNTTab)-3)) ~= &amp;#039;.tab&amp;#039; then&lt;br /&gt;
		TNTTab = TNTTab..&amp;#039;.tab&amp;#039;&lt;br /&gt;
	end	&lt;br /&gt;
	return TNTTab&lt;br /&gt;
end --TNTTabFull&lt;br /&gt;
&lt;br /&gt;
function p.TNTTabCommons (TNTTab)&lt;br /&gt;
	return &amp;#039;Commons:Data:&amp;#039;..p.TNTTabFull(TNTTab)&lt;br /&gt;
end	&lt;br /&gt;
&lt;br /&gt;
function p.LnkTNTTab (TNTTab)&lt;br /&gt;
	return &amp;#039;[[&amp;#039;..p.TNTTabCommons(TNTTab)..&amp;#039;]]&amp;#039;&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function I18nStr (TNTTab, S, IsMsg, params)&lt;br /&gt;
	TNTTab = p.TNTTabFull (TNTTab)&lt;br /&gt;
	local SEnd = TNT.format(TNTTab, S, unpack(params)) or &amp;#039;&amp;#039;&lt;br /&gt;
	if SEnd == &amp;#039;&amp;#039; then&lt;br /&gt;
		SEnd = TNT.formatInLanguage(&amp;#039;en&amp;#039;,TNTTab, S, unpack(params))&lt;br /&gt;
		if IsMsg then&lt;br /&gt;
			local icon = &amp;#039;[[File:Arbcom ru editing.svg|12px|Not found &amp;quot;&amp;#039;..S..&amp;#039;&amp;quot; in current language. Click here for to edit it.|link=&amp;#039;..p.TNTTabCommons(TNTTab)..&amp;#039;]]&amp;#039;&lt;br /&gt;
			SEnd = SEnd..icon	&lt;br /&gt;
		end	&lt;br /&gt;
	end	&lt;br /&gt;
	return SEnd&lt;br /&gt;
end --I18nStr&lt;br /&gt;
&lt;br /&gt;
function p.GetMsgP (TNTTab, S, ...)&lt;br /&gt;
	return I18nStr (TNTTab, S, true, {...})&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.GetStrP (TNTTab, S, ...)&lt;br /&gt;
	return I18nStr (TNTTab, S, false, {...})&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.TabTransCS (TNTTab, S, CaseSensitive)&lt;br /&gt;
	CaseSensitive = ((CaseSensitive ~= nil) and (CaseSensitive == true)) or true&lt;br /&gt;
	local Wds = TNT.format (p.TNTTabFull(TNTTab), S)&lt;br /&gt;
	if not CaseSensitive then&lt;br /&gt;
		Wds = string.lower (Wds)&lt;br /&gt;
	end	&lt;br /&gt;
    return mw.text.split (Wds, &amp;#039;|&amp;#039;)&lt;br /&gt;
end --TabTransCS&lt;br /&gt;
&lt;br /&gt;
function p.TabTransMT (TNTTab, S, MaxTrans)&lt;br /&gt;
	local FN = p.TNTTabFull(TNTTab)&lt;br /&gt;
	local tab = mw.text.split (TNT.format (FN, S), &amp;#039;|&amp;#039;)&lt;br /&gt;
	if #tab &amp;gt; MaxTrans then&lt;br /&gt;
		error (string.format(&amp;#039;Found %s translations for &amp;quot;%s&amp;quot;. Search in [[:commons:data:%s]]&amp;#039;,#tab,S,FN)) &lt;br /&gt;
							-- Translation not required&lt;br /&gt;
	end&lt;br /&gt;
	return tab&lt;br /&gt;
end --TabTransMT&lt;br /&gt;
&lt;br /&gt;
function p.SFoundInTNTArr (TNTTab, val, CaseSensitive, S)&lt;br /&gt;
	if (S == nil) or (S == &amp;#039;&amp;#039;) then&lt;br /&gt;
		error(&amp;#039;Not arguments trying to find &amp;quot;&amp;#039;..val..&amp;#039;&amp;quot;&amp;#039;) --It doesn&amp;#039;t require translation, only for degug&lt;br /&gt;
	end	&lt;br /&gt;
	local Arr = p.TabTransCS (TNTTab, S, CaseSensitive)&lt;br /&gt;
	if not CaseSensitive then&lt;br /&gt;
		val = string.lower (val)&lt;br /&gt;
	end	&lt;br /&gt;
	for I, W in ipairs(Arr) do&lt;br /&gt;
		if W == val then&lt;br /&gt;
			return true&lt;br /&gt;
		end	&lt;br /&gt;
	end	&lt;br /&gt;
	return false&lt;br /&gt;
end --SFoundInTNTArr&lt;br /&gt;
&lt;br /&gt;
function p.IdxFromTabTrans (TNTTab, val, CaseSensitive, ...)&lt;br /&gt;
	local Arr = unpack(arg)&lt;br /&gt;
	if Arr == nil then&lt;br /&gt;
		error(&amp;#039;Not arguments trying to find &amp;quot;&amp;#039;..val..&amp;#039;&amp;quot;&amp;#039;) --It doesn&amp;#039;t require translation, only for degug&lt;br /&gt;
	end	&lt;br /&gt;
	local Idx = 0&lt;br /&gt;
	for I, W in ipairs(Arr) do&lt;br /&gt;
		if p.SFoundInTNTArr (TNTTab, val, CaseSensitive, W) then&lt;br /&gt;
			Idx = I&lt;br /&gt;
			break&lt;br /&gt;
		end	&lt;br /&gt;
	end	&lt;br /&gt;
	return Idx&lt;br /&gt;
end	--IdxFromTabTrans&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>DavidWhitten</name></author>	</entry>

	</feed>