Module:Exports: Difference between revisions
Appearance
Content deleted Content added
BrandonXLF (talk | contribs) Generalize |
BrandonXLF (talk | contribs) Account for skipped outputs |
||
Line 14: | Line 14: | ||
local outputKeys = {} |
local outputKeys = {} |
||
for |
for _, v in ipairs(keys) do |
||
if not args.exclude or not v:match(args.exclude) then |
if not args.exclude or not v:match(args.exclude) then |
||
outputKeys |
table.insert(outputKeys, '<code><span style="white-space: pre;">' .. v .. '</span></code>') |
||
end |
end |
||
end |
end |
Latest revision as of 15:58, 26 August 2024
![]() | This module is rated as ready for general use. It has reached a mature form and is thought to be relatively bug-free and ready for use wherever appropriate. It is ready to mention on help pages and other Wikipedia resources as an option for new users to learn. To reduce server load and bad output, it should be improved by sandbox testing rather than repeated trial-and-error editing. |
![]() | This module depends on the following other modules: |
Exports the exports
function for use by Template:Module exports.
local p = {}
local TableTools = require('Module:TableTools')
local getArgs = require('Module:Arguments').getArgs
function p.exports(frame)
local args = getArgs(frame)
local title = args[1] or mw.title.getCurrentTitle().fullText
local moduleExports = require(title)
local keys = TableTools.keysToList(moduleExports, function (a, b)
return string.lower(a) < string.lower(b)
end)
local outputKeys = {}
for _, v in ipairs(keys) do
if not args.exclude or not v:match(args.exclude) then
table.insert(outputKeys, '<code><span style="white-space: pre;">' .. v .. '</span></code>')
end
end
return mw.text.listToText(outputKeys)
end
return p