Modul:Link utilities: Unterschied zwischen den Versionen

K
19 Versionen von wikivoyage:Modul:Link_utilities importiert
K (RolandUnger verschob die Seite Modul:LinkBase nach Modul:Link utilities, ohne dabei eine Weiterleitung anzulegen: Umbenennung)
K (19 Versionen von wikivoyage:Modul:Link_utilities importiert)
 
(7 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
-- documentation
-- module variable and administration
local LinkUtilities = {
local lu = {
suite  = 'Link utilities',
moduleInterface = {
serial = '2020-10-24',
suite  = 'Link utilities',
item  = 65228027
serial = '2022-10-22',
item  = 65228027
}
}
}
-- module variable
local lu = {}


-- module import
-- module import
require( 'Module:No globals' )
-- require( 'strict' )
local fs = require( 'Module:Failsafe' )


-- split separate items like numbers
-- split separate items like numbers
Zeile 18: Zeile 16:


-- wrap delimiters with zero marks
-- wrap delimiters with zero marks
s = mw.ustring.gsub( s, defaultDelimiter, '\0' .. defaultDelimiter .. '\0' );
s = mw.ustring.gsub( s, defaultDelimiter, '\0%1\0' );


-- substitude delimiters
-- substitude delimiters
for _, delimiter in ipairs( delimiters ) do
for i, delimiter in ipairs( delimiters ) do
s = mw.ustring.gsub( s, delimiter, '\0' .. delimiter .. '\0' );
s = mw.ustring.gsub( s, delimiter, '\0%1\0' );
-- remove zero marks from inside parentheses ()
-- remove zero marks from inside parentheses ()
s = s:gsub( '%b()', function( t ) return t:gsub( '%z', '' ) end )
s = s:gsub( '%b()', function( t ) return t:gsub( '%z', '' ) end )
Zeile 52: Zeile 50:
end
end
return s, comment
return s, comment
end
-- add error category and hint
-- catPrefix contains opening squared brackets
function lu.errorInfo( catPrefix, aCat, aClass, styles )
aClass = aClass or 'error'
styles = styles or ''
return catPrefix .. aCat .. ']]'
.. '<span class="' .. aClass .. '" title="' .. aCat .. '"'
.. ( styles ~= '' and ( ' style="' .. styles .. '"' ) or '' )
.. '>' .. aCat .. '</span>'
end
-- module administration
function lu.getModuleInterface()
return LinkUtilities
end
function lu.failsafe( version )
return fs._failsafe( version, LinkUtilities ) or ''
end
end


return lu
return lu