Модуль:improve
Зовнішній вигляд
Документацію для цього модуля можна створити у Модуль:improve/документація
-- Модуль:improve v0.5
-- 2017-07-24
local export = {}
local u = require("Module:utils")
local d = {}
-- TODO: морфо/додати → "Додати шаблон {{морфо}} …", морфо/заполнить → "Заполнить шаблон {{морфо}}"
d['морфологія?'] = {
desc = 'Додати секцію «Морфосинтаксичні ознаки»',
category = 'Потрібна морфологія'
}
d['морфологія/порожньо'] = {
desc = 'Додати відомості про [[морфологія|морфологію]] у «Морфосинтаксичні ознаки»',
category = 'Потрібна морфологія'
}
d['морфологія/шаблон'] = {
desc = 'Використати потрібний [[:Категорія:Шаблони словозміни|шаблон словозніми]] у «Морфосинтаксичні ознаки»',
category = 'Потрібна морфологія'
}
d['морфологія/мова'] = {
desc = 'Використати потрібний [[:Категорія:Шаблони словозміни|шаблон словозніми]] (відповідної мови)',
category = 'Потрібна морфологія'
}
d['морфологія/рід'] = {
desc = 'Додати інформацію про рід та істотність у «Морфосинтаксичні ознаки»',
category = 'Потрібна морфологія'
}
d['морфологія/парадигма'] = {
desc = 'Уточнити парадигму словозміни, використовуючи конкретніший [[:Категорія:Шаблони словозміни|шаблон словозніми]]',
category = 'Потрібна морфологія'
}
d['морфо'] = {
desc = 'Додати опис морфемної будови за допомогою {{шаблон|морфо}}',
category = 'Потрібна морфологія'
}
d['вимова?'] = {
desc = 'Додати секцію «Вимова»',
category = 'Потрібна вимова'
}
d['транскрипція'] = {
desc = 'Додати транскрипцію у секцію «Вимова» за допомогою {{шаблон|transcription}}',
category = 'Потрібна вимова'
}
d['транскрипція/мн'] = {
desc = 'Додати транскрипцію у секцію «Вимова» за допомогою {{шаблон|transcriptions}}',
category = 'Потрібна вимова'
}
d['вимова'] = d['транскрипція']
d['вимови'] = d['транскрипція/мн']
d['значення?'] = {
desc = 'Додати секцію «Значення» до секції «Семантичні властивості»',
category = 'Потрібна семантика'
}
d['значення#'] = {
desc = 'Додати перед кожним значенням на початку рядка символ "<code>#</code>"',
category = 'Потрібна семантика'
}
d['значення'] = {
desc = "'''Додати |значення-переклад у секцію «Семантичні властивості»'''",
categories = {'Потрібна семантика', 'Болванки'}
}
d['приклад'] = {
desc = 'Додати приклад слововжитку для значення за допомогою {{шаблон|приклад}}',
category = 'Потрібна семантика'
}
d['приклади'] = {
desc = 'Додати приклади слововжитку для всіх значень за допомогою {{шаблон|приклад}}',
category = 'Потрібна семантика'
}
d['семантика?'] = {
desc = 'Додати необхідні розділи у «Семантичні властивості» (Синоніми, Антоніми, Гіпероніми, Гіпоніми)',
category = 'Потрібна семантика'
}
d['синоніми'] = {
desc = 'Додати [[синонім]]и у секцію «Семантичні властивості»',
category = 'Потрібна семантика'
}
d['гіпероніми'] = {
desc = 'Додати гипероніми у секцію «Семантичні властивості»',
categories = {'Потрібна семантика', 'Потрібно вказати гіпероніми'}
}
d['семантика'] = {
desc = 'Додати усі семантичні зв’язки (отсутствие можно указать прочерком, а неизвестность — символом вопроса)',
category = 'Потрібна семантика'
}
d['споріднені слова?'] = {
desc = 'Додати секцію «Споріднені слова»',
category = 'Потрібні споріднені слова'
}
d['спорідн'] = {
desc = 'Додати вміст у секцію «Споріднені слова» за допомогою {{шаблон|спорідн}}',
category = 'Потрібні споріднені слова'
}
d['повн'] = {
desc = 'Додати усі спільнокореневі слова у секцію «Споріднені слова» за допомогою запису <nowiki>{{спорідн|повн=}}</nowiki>',
category = 'Потрібні споріднені слова'
}
d['етимологія?'] = {
desc = 'Додати секцію «Етимологія»',
category = 'Потрібна етимологія'
}
d['етимологія'] = {
desc = 'Додати етимологічні відомості до секції «Етимологія»',
category = 'Потрібна етимологія'
}
d['переклад?'] = {
desc = 'Додати секцію «Переклад»',
category = 'Потрібен переклад'
}
d['переклад'] = {
desc = 'Додати принаймні один переклад до секції «Переклад»',
category = 'Потрібен переклад'
}
d['переклади'] = {
desc = 'Додати хоча б один переклад для кожного значення у секцію «Переклад»',
category = 'Потрібен переклад'
}
d['джерела?'] = {
desc = 'Додати секцію «Джерела»',
category = 'Потрібні джерела'
}
d['джерело'] = {
desc = 'Додати принайні одне джерело у секцію «Джерела»',
category = 'Потрібні джерела'
}
d['ulif'] = {
desc = 'Додати посилання на словник [https://lcorp.ulif.org.ua/dictua/dictua.aspx?uid= УЛІФ] у секцію «Джерела» за допомогою {{шаблон|ulif}}',
category = 'Потрібні джерела'
}
d['goroh'] = {
desc = 'Додати посилання на словник [https://goroh.pp.ua/ Горох] у секцію «Джерела» за допомогою {{шаблон|goroh}}',
category = 'Потрібні джерела'
}
d['СУМ'] = {
desc = 'Додати посилання на [http://www.inmo.org.ua/sum.html?wrd= СУМ-11] у секцію «Джерела» за допомогою {{шаблон|СУМ-11}}',
category = 'Потрібні джерела'
}
d['СУМ-11'] = d['СУМ']
local override = {}
override['uk'] = {}
override['uk']['морфо'] = {
desc = 'Додати опис морфемної будови за допомогою {{шаблон|морфо-uk}}',
category = 'Потрібна морфологія'
}
override['uk']['транскрипція'] = {
desc = 'Додати транскрипцію у секцію «Вимова» за допомогою {{шаблон|transcription-uk}}',
category = 'Потрібна вимова'
}
override['uk']['транскрипція/мн'] = {
desc = 'Додати транскрипцію у секцію «Вимова» за допомогою {{шаблон|transcriptions-uk}}',
category = 'Потрібна вимова'
}
override['uk']['вимова'] = override['uk']['транскрипція']
override['uk']['вимови'] = override['uk']['транскрипція/мн']
override['ru'] = {}
override['ru']['морфо'] = {
desc = 'Додати опис морфемної будови за допомогою {{шаблон|морфо-ru}}',
category = 'Потрібна морфологія'
}
override['ru']['транскрипція'] = {
desc = 'Додати транскрипцію у секцію «Вимова» за допомогою {{шаблон|transcription-ru}}',
category = 'Потрібна вимова'
}
override['ru']['транскрипція/мн'] = {
desc = 'Додати транскрипцію у секцію «Вимова» за допомогою {{шаблон|transcriptions-ru}}',
category = 'Потрібна вимова'
}
override['ru']['вимова'] = override['ru']['транскрипція']
override['ru']['вимови'] = override['ru']['транскрипція/мн']
override['be'] = {}
override['be']['морфо'] = {
desc = 'Додати опис морфемної будови за допомогою {{шаблон|морфо-be}}',
category = 'Потрібна морфологія'
}
function export.details(frame)
local args = u.clone(frame:getParent().args)
count_args = 0
for key, value in pairs(args) do
if type(key) == 'number' and value ~= '??' then
count_args = count_args + 1
end
end
lang = mw.text.trim(args[1])
text = '{{in article|[[Категория:Статі до доробки/' .. lang .. '|{{PAGENAME}}]]}}'
if count_args < 2 then
return text
end
for i = 2, count_args do
key = mw.text.trim(args[i])
if d[key] or override[lang] and override[lang][key] then
data = d[key]
if override[lang] and override[lang][key] then
data = override[lang][key]
end
categories = {}
if data['category'] then
categories = {data['category']}
elseif data['categories'] then
categories = data['categories']
end
text = text .. '\n* '
for i, category in pairs(categories) do
if category == 'Потрібен переклад' then
-- Суффикс языка не нужен для переводов, т.к. переводы бывают только у русских слов
text = text .. '{{in article|[[Категорія:' .. category .. ']]}}'
else
text = text .. '{{in article|[[Категорія:' .. category .. '/' .. lang .. ']]}}'
end
end
text = text .. data['desc']
elseif key ~= '' and key ~= '??' then
text = text .. '\n* ' .. key .. " ''(неизвестный параметр шаблона)''"
end
end
text = text .. '<br/>'
return frame:preprocess(text)
end
return export