Content added Content deleted
(adapted from Module:Distinguish on Wikipedia, let's hope this works) Tag: Reverted |
(username removed) (Imported from enwiki) Tag: Manual revert |
||
Line 1: | Line 1: | ||
local mHatnote = require(' |
local mHatnote = require('Module:Hatnote') |
||
local |
local mHatlist = require('Module:Hatnote list') |
||
local mArguments --initialize lazily |
|||
⚫ | |||
local mTableTools --initialize lazily |
|||
local libraryUtil = require('libraryUtil') |
local libraryUtil = require('libraryUtil') |
||
local checkType = libraryUtil.checkType |
local checkType = libraryUtil.checkType |
||
Line 7: | Line 8: | ||
function p.distinguish(frame) |
function p.distinguish(frame) |
||
mArguments = require('Module:Arguments') |
|||
⚫ | |||
local args = mArguments.getArgs(frame) |
local args = mArguments.getArgs(frame) |
||
local selfref = args.selfref |
local selfref = args.selfref |
||
Line 15: | Line 18: | ||
function p._distinguish(args, text, selfref) |
function p._distinguish(args, text, selfref) |
||
checkType( |
checkType("_distinguish", 1, args, 'table') |
||
if #args == 0 and not text then return '' end |
if #args == 0 and not text then return '' end |
||
local text = string.format( |
local text = string.format( |
||
'Not to be confused with %s.', |
'Not to be confused with %s.', |
||
text or |
text or mHatlist.orList(args, true) |
||
) |
) |
||
hnOptions = {selfref = selfref} |
hnOptions = {selfref = selfref} |
Latest revision as of 03:42, 21 January 2022
This module is subject to page protection. It is a highly visible module in use by a very large number of pages, or is substituted very frequently. Because vandalism or mistakes would affect many pages, and even trivial editing might cause substantial load on the servers, it is protected from editing. |
Implements {{distinguish}}.
local mHatnote = require('Module:Hatnote')
local mHatlist = require('Module:Hatnote list')
local mArguments --initialize lazily
local mTableTools --initialize lazily
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local p = {}
function p.distinguish(frame)
mArguments = require('Module:Arguments')
mTableTools = require('Module:TableTools')
local args = mArguments.getArgs(frame)
local selfref = args.selfref
local text = args.text
args = mTableTools.compressSparseArray(args)
return p._distinguish(args, text, selfref)
end
function p._distinguish(args, text, selfref)
checkType("_distinguish", 1, args, 'table')
if #args == 0 and not text then return '' end
local text = string.format(
'Not to be confused with %s.',
text or mHatlist.orList(args, true)
)
hnOptions = {selfref = selfref}
return mHatnote._hatnote(text, hnOptions)
end
return p