<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://elite.mistflux.co.uk/w/index.php?action=history&amp;feed=atom&amp;title=Module%3APagelist</id>
	<title>Module:Pagelist - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://elite.mistflux.co.uk/w/index.php?action=history&amp;feed=atom&amp;title=Module%3APagelist"/>
	<link rel="alternate" type="text/html" href="https://elite.mistflux.co.uk/w/index.php?title=Module:Pagelist&amp;action=history"/>
	<updated>2026-10-31T14:24:22Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://elite.mistflux.co.uk/w/index.php?title=Module:Pagelist&amp;diff=112626&amp;oldid=prev</id>
		<title>Wikipedia&gt;Hilst: hotfix to account for Template:Pagelist&#039;s move to Template:Page list</title>
		<link rel="alternate" type="text/html" href="https://elite.mistflux.co.uk/w/index.php?title=Module:Pagelist&amp;diff=112626&amp;oldid=prev"/>
		<updated>2026-09-12T03:34:38Z</updated>

		<summary type="html">&lt;p&gt;hotfix to account for &lt;a href=&quot;/wiki/Template:Pagelist&quot; class=&quot;mw-redirect&quot; title=&quot;Template:Pagelist&quot;&gt;Template:Pagelist&lt;/a&gt;&amp;#039;s move to &lt;a href=&quot;/wiki/Template:Page_list&quot; title=&quot;Template:Page list&quot;&gt;Template:Page list&lt;/a&gt;&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 yesno = require(&amp;#039;Module:Yesno&amp;#039;)&lt;br /&gt;
local mRedirect = require(&amp;#039;Module:Redirect&amp;#039;)&lt;br /&gt;
&lt;br /&gt;
local separators = {&lt;br /&gt;
	dot = true,&lt;br /&gt;
	pipe = true,&lt;br /&gt;
	comma = true,&lt;br /&gt;
	[&amp;#039;tpt-languages&amp;#039;] = true&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local function getSeparator(sep)&lt;br /&gt;
	if type(sep) ~= &amp;#039;string&amp;#039; then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
	if separators[sep] then&lt;br /&gt;
		return mw.message.new(sep .. &amp;#039;-separator&amp;#039;):plain()&lt;br /&gt;
	else&lt;br /&gt;
		return sep&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function generateLink(page, nspace, delim, endDelim, noredir)&lt;br /&gt;
	if not page then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
	delim = delim or &amp;#039;&amp;#039;&lt;br /&gt;
	endDelim = endDelim or delim&lt;br /&gt;
	nspace = nspace or &amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	local fullPage = nspace ~= &amp;#039;&amp;#039; and (nspace .. &amp;#039;:&amp;#039; .. page) or page&lt;br /&gt;
	local outStr&lt;br /&gt;
&lt;br /&gt;
    if yesno(noredir) and mRedirect.luaIsRedirect(fullPage) then&lt;br /&gt;
		local url = tostring(mw.uri.fullUrl(fullPage, {&lt;br /&gt;
			redirect = &amp;#039;no&amp;#039;&lt;br /&gt;
		}))&lt;br /&gt;
		outStr = mw.ustring.gsub( &lt;br /&gt;
			string.format( &lt;br /&gt;
            	&amp;#039;%s&amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt;[%s %s]&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;display: none&amp;quot;&amp;gt;[[:%s]]&amp;lt;/span&amp;gt;%s&amp;#039;,&lt;br /&gt;
				delim, url, page, fullPage, endDelim&lt;br /&gt;
			),&lt;br /&gt;
			&amp;#039;:+&amp;#039;,&lt;br /&gt;
			&amp;#039;:&amp;#039; &lt;br /&gt;
		)&lt;br /&gt;
	else&lt;br /&gt;
		outStr = mw.ustring.gsub( &lt;br /&gt;
			string.format( &lt;br /&gt;
				&amp;#039;%s[[:%s|%s]]%s&amp;#039;,&lt;br /&gt;
				delim, fullPage, page, endDelim&lt;br /&gt;
			),&lt;br /&gt;
			&amp;#039;:+&amp;#039;,&lt;br /&gt;
			&amp;#039;:&amp;#039; &lt;br /&gt;
		)&lt;br /&gt;
	end&lt;br /&gt;
	return outStr&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p._main(args)&lt;br /&gt;
	local t = {}&lt;br /&gt;
	local separator = getSeparator(args.separator)&lt;br /&gt;
	local conjunction = getSeparator(args.conjunction)&lt;br /&gt;
	for i, v in ipairs(args) do&lt;br /&gt;
		table.insert(t, generateLink(&lt;br /&gt;
			v, args.nspace, args.delim, args.edelim, args.noredir&lt;br /&gt;
		))&lt;br /&gt;
	end&lt;br /&gt;
	return mw.text.listToText(t, separator, conjunction)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
	local origArgs = require(&amp;#039;Module:Arguments&amp;#039;).getArgs(frame, {&lt;br /&gt;
		trim = false,&lt;br /&gt;
		removeBlanks = false,&lt;br /&gt;
		wrappers = {&lt;br /&gt;
			&amp;#039;Template:Pagelist&amp;#039;,&lt;br /&gt;
			&amp;#039;Template:Page list&amp;#039;,&lt;br /&gt;
			&amp;#039;Template:Pagelist/sandbox&amp;#039;,&lt;br /&gt;
			&amp;#039;Template:Page list/sandbox&amp;#039;&lt;br /&gt;
		}&lt;br /&gt;
	})&lt;br /&gt;
&lt;br /&gt;
	-- Process integer args. Allow for explicit positional arguments that are&lt;br /&gt;
	-- specified out of order, e.g. {{br separated entries|3=entry3}}.&lt;br /&gt;
	-- After processing, the args can be accessed accurately from ipairs.&lt;br /&gt;
	local args = {}&lt;br /&gt;
	for k, v in pairs(origArgs) do&lt;br /&gt;
		if type(k) == &amp;#039;number&amp;#039; and &lt;br /&gt;
			k &amp;gt;= 1 and&lt;br /&gt;
			math.floor(k) == k and&lt;br /&gt;
			string.match(v, &amp;#039;%S&amp;#039;) then -- Remove blank or whitespace values.&lt;br /&gt;
			table.insert(args, k)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	table.sort(args)&lt;br /&gt;
	for i, v in ipairs(args) do&lt;br /&gt;
		args[i] = origArgs[v]&lt;br /&gt;
		-- Trim whitespace.&lt;br /&gt;
		if type(args[i]) == &amp;#039;string&amp;#039; then&lt;br /&gt;
			args[i] = mw.text.trim(args[i])&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Get old named args. We don&amp;#039;t need to remove blank values&lt;br /&gt;
	-- as for the nspace and edelim parameters the behaviour is different&lt;br /&gt;
	-- depending on whether the parameters are blank or absent, and for&lt;br /&gt;
	-- the delim parameter the default should be the blank string anyway.&lt;br /&gt;
	args.delim = origArgs.delim&lt;br /&gt;
	args.edelim = origArgs.edelim&lt;br /&gt;
	args.nspace = origArgs.nspace&lt;br /&gt;
	args.noredir = origArgs.noredir&lt;br /&gt;
&lt;br /&gt;
	-- Get new named args, &amp;quot;separator&amp;quot; and &amp;quot;conjunction&amp;quot;, and strip blank values.&lt;br /&gt;
	if origArgs.separator and origArgs.separator ~= &amp;#039;&amp;#039; then&lt;br /&gt;
		args.separator = origArgs.separator&lt;br /&gt;
	end&lt;br /&gt;
	if origArgs.conjunction and origArgs.conjunction ~= &amp;#039;&amp;#039; then&lt;br /&gt;
		args.conjunction = origArgs.conjunction&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return p._main(args)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Wikipedia&gt;Hilst</name></author>
	</entry>
</feed>