Difference between revisions of Module:Shortcut/policy
Jump to navigation
Jump to search
en>MusikAnimal m (Protected "Module:Shortcut/policy": High-risk template or module; match protection with associated template ([Edit=Require autoconfirmed or confirmed access] (indefinite))) |
m (1 revision imported) |
(No difference)
|
Latest revision as of 20:16, 23 May 2020
Implements {{policy shortcut}}
-- This module implements {{policy shortcut}}. -- Set constants local cfg = require('Module:Shortcut/config') cfg['shortcut-heading'] = '[[Wikipedia:Shortcut|Policy {{PLURAL:$1|shortcut|shortcuts}}]]' -- Load required modules local mShortcut = require('Module:Shortcut') local p = {} function p.main(frame) local args = require('Module:Arguments').getArgs(frame, { wrappers = 'Template:Policy shortcut' }) -- Separate shortcuts from options local shortcuts, options = {}, {} for k, v in pairs(args) do if type(k) == 'number' then shortcuts[k] = v else options[k] = v end end -- Compress the shortcut array, which may contain nils. local function compressArray(t) local nums, ret = {}, {} for k in pairs(t) do nums[#nums + 1] = k end table.sort(nums) for i, num in ipairs(nums) do ret[i] = t[num] end return ret end shortcuts = compressArray(shortcuts) return mShortcut._main(shortcuts, options, frame, cfg) end return p