Moduł:Liteman/Beau.bot-indeksy
Dokumentacja dla tego modułu może zostać utworzona pod nazwą Moduł:Liteman/Beau.bot-indeksy/opis
local p = {
main = function(frame)
local content = mw.title.new('Wikisłownikarz:Beau.bot/indeksy/lista'):getContent()
local lang = mw.language.new('pl')
local indexes = {}
for section in string.gfind(content, '{{Wikisłownikarz:Beau%.bot/indeksy/szablon.-}}') do
local index_name = string.match(section, 'nazwa indeksu%s?=%s?([^\n]+)')
local templates_list = string.match(section, 'szablony tematyczne%s?=%s?([^\n]+)')
local templates = mw.ustring.gsub(templates_list, '%s?([^,]+)', ' '..frame:expandTemplate{title = 's', args = {'%1'}})
local languages_list = string.match(section, 'szablony języków%s?=%s?([^\n]+)')
local languages = {}
for language in string.gfind(languages_list, '%s?([^,]+)') do
local short_lang = lang:ucfirst(mw.ustring.gsub(language, 'język ', ''))
languages[#languages+1] = '[[Indeks:'..short_lang..' - '..lang:ucfirst(index_name)..'|'..language..']]'
end
local categories_list = string.match(section, 'kategorie%s?=%s?([^\n]+)')
local categories = {}
if (categories_list) then
for category in string.gfind(categories_list, '%s?([^,]+)') do
categories[#categories+1] = '[[:Kategoria:'..category..'|'..category..']]'
end
end
indexes[#indexes+1] = '* '..index_name..
'\n** Szablony tematyczne: '..templates..
'\n** Szablony języków: '..table.concat(languages, ', ')..
(categories_list and '\n** Kategorie: '..table.concat(categories, ', ') or '')
end
return table.concat(indexes, '\n')
end
}
return p