<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://pathfinderwiki.tommahs.nl/Module:Loop/history?feed=atom</id>
	<title>Module:Loop - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://pathfinderwiki.tommahs.nl/Module:Loop/history?feed=atom"/>
	<link rel="alternate" type="text/html" href="https://pathfinderwiki.tommahs.nl/Module:Loop/history"/>
	<updated>2026-07-22T09:52:38Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.6</generator>
	<entry>
		<id>https://pathfinderwiki.tommahs.nl/index.php?title=Module:Loop&amp;diff=1974&amp;oldid=prev</id>
		<title>Tommahs: Created page with &quot;local p = {} --p stands for package  function p.arguments( frame )     local argumentName = frame.args[1]     argumentName = mw.ustring.match(argumentName, &quot;^%s*(.-)%s*$&quot;) -- trim spaces     local text = frame.args[2]      -- collect keys and order them     local keys = {}     for k in pairs(frame:getParent().args) do         local from, to, match = string.find(k, &quot;^&quot;..argumentName..&quot;(%d+)$&quot;)         if from ~= nil then             table.insert(keys, tonumber(match))...&quot;</title>
		<link rel="alternate" type="text/html" href="https://pathfinderwiki.tommahs.nl/index.php?title=Module:Loop&amp;diff=1974&amp;oldid=prev"/>
		<updated>2024-07-09T21:06:15Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;local p = {} --p stands for package  function p.arguments( frame )     local argumentName = frame.args[1]     argumentName = mw.ustring.match(argumentName, &amp;quot;^%s*(.-)%s*$&amp;quot;) -- trim spaces     local text = frame.args[2]      -- collect keys and order them     local keys = {}     for k in pairs(frame:getParent().args) do         local from, to, match = string.find(k, &amp;quot;^&amp;quot;..argumentName..&amp;quot;(%d+)$&amp;quot;)         if from ~= nil then             table.insert(keys, tonumber(match))...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {} --p stands for package&lt;br /&gt;
&lt;br /&gt;
function p.arguments( frame )&lt;br /&gt;
    local argumentName = frame.args[1]&lt;br /&gt;
    argumentName = mw.ustring.match(argumentName, &amp;quot;^%s*(.-)%s*$&amp;quot;) -- trim spaces&lt;br /&gt;
    local text = frame.args[2]&lt;br /&gt;
&lt;br /&gt;
    -- collect keys and order them&lt;br /&gt;
    local keys = {}&lt;br /&gt;
    for k in pairs(frame:getParent().args) do&lt;br /&gt;
        local from, to, match = string.find(k, &amp;quot;^&amp;quot;..argumentName..&amp;quot;(%d+)$&amp;quot;)&lt;br /&gt;
        if from ~= nil then&lt;br /&gt;
            table.insert(keys, tonumber(match))&lt;br /&gt;
        end&lt;br /&gt;
        &lt;br /&gt;
    end&lt;br /&gt;
    table.sort(keys)&lt;br /&gt;
&lt;br /&gt;
    local result = &amp;quot;&amp;quot;;&lt;br /&gt;
    for i = 1, #keys do&lt;br /&gt;
        local name = argumentName..keys[i]&lt;br /&gt;
        local parsed = mw.ustring.gsub( text, &amp;quot;{{{ *&amp;quot;..argumentName..&amp;quot; *}}}&amp;quot;, &amp;quot;{{{&amp;quot;..name ..&amp;quot;}}}&amp;quot; )&lt;br /&gt;
        parsed = mw.ustring.gsub( parsed, &amp;quot;{{{ *&amp;quot;..argumentName..&amp;quot;%$n%$ *}}}&amp;quot;, &amp;quot;{{{&amp;quot;..name..&amp;quot;}}}&amp;quot; )&lt;br /&gt;
        result = result .. &amp;quot;{{#if: {{{&amp;quot;..name..&amp;quot;|}}}|&amp;quot;..parsed..&amp;quot;| }}&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
    return frame:getParent():preprocess(result)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.matches( frame )&lt;br /&gt;
    local input = frame.args[1]&lt;br /&gt;
    local pattern = frame.args[2]&lt;br /&gt;
    local replace = frame.args[3]&lt;br /&gt;
    &lt;br /&gt;
    local result = &amp;quot;&amp;quot;;&lt;br /&gt;
    for match in mw.ustring.gmatch(input, pattern) do&lt;br /&gt;
    	result = result .. mw.ustring.gsub(replace, &amp;quot;%%1&amp;quot;, match);&lt;br /&gt;
    end&lt;br /&gt;
    return frame:getParent():preprocess(result)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Tommahs</name></author>
	</entry>
</feed>