Модуль:Кнопка: различия между версиями
Материал из Celadon | Wiki Sierra
Дополнительные действия
[[commons:MediaWiki]]>Gevron мНет описания правки |
[[commons:MediaWiki]]>Gevron мНет описания правки |
||
| Строка 29: | Строка 29: | ||
local symbols = mw.loadData( 'Модуль:Кнопка/Символы' ) | local symbols = mw.loadData( 'Модуль:Кнопка/Символы' ) | ||
return '<kbd class="key nowrap">' .. ( symbols[key:lower()] or key ) .. '</kbd>' | return '<kbd class="keyboard-key nowrap">' .. ( symbols[key:lower()] or key ) .. '</kbd>' | ||
end | end | ||
return p | return p | ||
Версия от 21:06, 18 мая 2023
Для документации этого модуля может быть создана страница Модуль:Кнопка/doc
local p = {}
p.keys = function( f )
local args = f
if f == mw.getCurrentFrame() then
args = f:getParent().args
end
local keys = {}
for _, key in ipairs( args ) do
key = mw.text.trim( key )
if key ~= '+' and key:find( '%+' ) then
local comboKeys = {}
for comboKey in mw.text.gsplit( key, '%s*%+%s*' ) do
table.insert( comboKeys, p.key( comboKey ) )
end
table.insert( keys, table.concat( comboKeys, ' + ' ) )
else
table.insert( keys, p.key( key ) )
end
end
return table.concat( keys )
end
p.key = function( key )
if key == '' then
return ''
end
local symbols = mw.loadData( 'Модуль:Кнопка/Символы' )
return '<kbd class="keyboard-key nowrap">' .. ( symbols[key:lower()] or key ) .. '</kbd>'
end
return p