Модуль:Не перекладено

![]() | Цей модуль Lua використовується на 117 000+ сторінках. Для уникнення великомасштабних збоїв та непотрібного навантаження на сервер, будь-які зміни спочатку потрібно перевірити на підсторінках /пісочниці та /тестів цього модуля, або у вашій пісочниці модуля. Потім перевірені зміни можуть бути впроваджені на цій сторінці єдиним редагуванням. Будь ласка, обговорюйте будь-які зміни на сторінці обговорення перед їхнім впровадженням. |
![]() | У документації цього модуля не вистачає або відсутній опис його функціоналу, або параметрів у його коді. Будь ласка, допоможіть покращити її. |
Модуль шаблону {{Не перекладено}}
Документація нижче включена зі сторінки спільної документації «Шаблон:Не перекладено/документація»:
![]() | Цей модуль Lua використовується на близько 117 000 сторінках. Для уникнення великомасштабних збоїв та непотрібного навантаження на сервер, будь-які зміни спочатку потрібно перевірити на підсторінках /пісочниці та /тестів цього модуля, або у вашій пісочниці модуля. Потім перевірені зміни можуть бути впроваджені на цій сторінці єдиним редагуванням. Будь ласка, обговорюйте будь-які зміни на сторінці обговорення перед їхнім впровадженням. |
Мовні шаблони |
---|
Мовні шаблони (ISO 639) |
|
Міжвікі посилання |
|
Текст іноземною мовою |
|
Інше |
Шаблон використовується в ситуації, коли є сторінка в іншому проєкті Вікімедіа і вважається за необхідне створення відповідної сторінки в українській Вікіпедії[1] Якщо переклад ще ніхто не зробив, шаблон ставить поряд з червоним посиланням посилання на іншомовну сторінку, що пропонується для перекладу. Як тільки переклад буде зроблено, цей текст автоматично повинен стати посиланням на сторінку в українському розділі.
Якщо в іншомовному розділі сторінки ще немає, а є лише червоне посилання, за яким вона, можливо, з'явиться, то замість цього шаблону слід використовувати звичайне червоне посилання, або шаблон {{нпні}}.
Код для вставки та опис параметрів
{{не перекладено|треба=Назва майбутньої сторінки в українській Вікіпедії|текст=Вигляд у тексті|мова=Код мови ex Вікіпедії|є=Назва ex сторінки}}
або просто
{{не перекладено|Назва майбутньої сторінки в українській Вікіпедії|Вигляд у тексті|Код мови ex Вікіпедії|Назва ex сторінки}}
Опис параметрів:
|треба=
(|1=
) — назва майбутньої сторінки в українській Вікіпедії. Обов'язковий параметр.|текст=
(|2=
) — текст посилання на українську сторінку. За відсутністю вставляється значення параметру|треба=
.|мова=
(|3=
) — код мови, з якої пропонується зробити переклад сторінки (абоd
для посилання на елемент Вікіданих). За відсутністю параметра використовуєтьсяen
.|є=
(|4=
) — посилання на сторінку в іншомовному розділі (або ідентифікатор елемента Вікіданих). За відсутністю параметра вставляється значення параметру|треба=
.
Приклади та результати використання шаблону
Лише один параметр обов'язковий, тому інші можна опускати у випадку, коли сторінка в українській Вікіпедії має називатися так само, як сторінка в англійській Вікіпедії. Наприклад:
{{не перекладено|noMicrosoft}}
Частіше можна зустріти використання двох параметрів:
{{не перекладено|Дональд Бредман|||Donald Bradman}}
{{не перекладено|треба=Дональд Бредман|є=Donald Bradman}}
або трьох параметрів:
{{не перекладено|Дональд Бредман||ru|Дональд Бредман}}
{{не перекладено|треба=Дональд Бредман|мова=ru|є=Дональд Бредман}}
чи
{{не перекладено|Дональд Бредман|Бредман||Donald Bradman}}
{{не перекладено|треба=Дональд Бредман|текст=Бредман|є=Donald Bradman}}
Якщо сторінка існує та дії після перекладу
{{не перекладено|треба=Кім Кардашян|текст=Кім|мова=ru|є=Кардашян, Ким}}
Або
{{не перекладено|Кім Кардашян|Кім|ru|Кардашян, Ким}}
Коли в українській Вікіпедії з'являється переклад іншомовної сторінки, шаблон автоматично підміняє посилання і надалі його можна прибрати.
Для того, щоб прибрати шаблон, треба на його місці поставити звичайне внутрішнє посилання на сторінку вигляду [[посилання|якийсь текст]].
Ви можете також почекати і бот зробить цю заміну за Вас, якщо на сторінці не буде виявлено проблем). Ви можете спостерігати за сторінками з неактуальним шаблоном у Категорія:Вікіпедія:Статті з неактуальним шаблоном Не перекладено (641). Щоби вони туди не потрапляли, використовуйте додатковий параметр nocat (не рекомендується): {{не перекладено|Кім Кардашян|Кім|ru|Кардашян, Ким|nocat=1}}
Якщо сторінки не існує
{{не перекладено|треба=Козлодерищенськ|є=Kozloderischensk}}
Якщо українського перекладу іншомовної сторінки не існує, завдяки шаблону посилання на статтю буде червоним, що дозволяє, перейшовши за цим посиланням, почати роботу над статтею, якої бракує. Бот автоматично генерує детальні списки найбільш необхідних неперекладених сторінок та сторінок з невірно використаним шаблоном «Не перекладено».
Список усіх підтримуваних мов
- Код d — дозволяє послатися на Вікідані, вказавши номер елементу Q..[номер]...
Якщо бот робить зауваження
Бот який прибирає цей шаблон зі сторінок, може зробити коментар, якщо з шаблона не зовсім очевидно чи його потрібно забрати чи залишити. Список таких питань до розгляду редакторами також збирається на сторінці Користувач:SashkoR0B0T/Сторінки з неправильно використаним шаблоном "Не перекладено" і пов'язаних.
Щодо способів виправлення див. Обговорення користувача:PavloChemBot/Сторінки з невірно використаним шаблоном "Не перекладено", але варто б написати загальнішу інструкцію за категоріями помилок і типових виправлень.
Не знайдено сторінки X
Причин може бути кілька:
- Одруківка. Наприклад "Не знайдено сторінки en:Brighton Pavilion (UK Parliament constituency )" має зайвий пробіл.
- Пропущений параметр "є". Наприклад "Не знайдено сторінки en:Франкфуртський трамвай". Тут треба вгадати (а краще знайти) як воно буде іншою мовою.
- Неправильний параметр мови. Наприклад "Не знайдено сторінки :en:Scuola di applicazione". Тут мова статті італійська, треба замінити код на "it". Якщо мова пропущена - автоматично вважається що мова англійська.
- Вилучено. Наприклад "Не знайдено сторінки en:Mike Diver". Див. en:Wikipedia:Redirects_for_discussion/Log/2019_September_15#Mike_Diver. Шаблон і червоне посилання краще прибрати, вони, як то кажуть стимулють редакторів створювати сторінки, а створення сторінок на незначимі теми лише створює проблеми, бо веде до довгих дискусій про вилучення, втрати часу багатьох користувачів і поганого настрою.
Сторінка X перекладена як А, хоча хотіли Б
- Перенаправити Б на А. Наприклад хтось може називати статтю Теорія зв'язку в секретних системах, а хтось Теорія зв'язку в системах з секретністю, відповідно шукати їх будуть і так і так, тому перенаправлення допоможе всім.
- Уточнити X. Наприклад на сторінці про авіакомпанію, з'являється помилка "Сторінка en:Sabre перекладена як Шабля, хоча хотіли Sabre". Скоріше за все мається на увазі комп'ютерна система резервування квитків, а не зброя, треба замінити параметр "є" на "Sabre (travel reservation system)", якщо відповідна сторінка знайдеться.
Сторінки C та Ц пов'язані з різними елементами вікіданих
- Найпростіший випадок - Ц створена, але інтервікі не додані. Відкрити сторінку Ц, зліва внизу в розділі "Іншими мовами" натиснути "Редагувати посилання" і додати C.
- Якщо ж вони обоє мають елемент вікіданих, але описують одне і те ж, можливо елементи вікіданих потрібно об'єднати. Див. d:Довідка:Об'єднання.
- Сторінки про різні речі.
- Наприклад "en:Saints Row та Saints Row пов'язані з різними елементами вікіданих". В українській вікіпедії Saints Row - перенаправлення на Saints Row (відеогра, 2006), в англійській - стаття про всю серію. І в нас існує "Saints Row (серія відеоігор)". Треба визначитись на що все таки було посилання, на гру чи серію, і замінити на посилання.
- "Сторінки en:neural network та Нейромережа пов'язані з різними елементами вікіданих". В нас це було перенаправлення на штучна нейронна мережа, в англійській вікіпедії йдеться про штучну або біологічну. Перенаправлення перетворено на дисамбіг і приєднано до англійської версії.
Див. також
- {{НП}} — не слід плутати з {{нп}}
- {{нпні}}
- {{Link-interwiki}}
- {{Interlanguage link multi}}
- {{Перекладена стаття}}
- {{Частково перекладена стаття}}
- {{Запозичений код}}
- Категорія:Шаблони:Переклад (23)
- Категорія:Шаблони:Інтервікі-посилання (68)
Шаблон для додання посилань на сторінки в інших розділах Вікіпедії (поруч із червоними посиланнями в українській).
Параметр | Опис | Тип | Статус | |
---|---|---|---|---|
Треба | 1 | Назва бажаної (але відсутньої) в українській Вікіпедії сторінки | Рядок | обов'язковий |
Текст | 2 | Відображуваний текст, для випадків коли відрізняється від потрібної назви сторінки, наприклад, відмінком чи множиною/одниною | Рядок | пропонований |
Мова | 3 | Код мовного розділу, де відповідна сторінка є. Якщо не зазначено — буде код англійської
| Рядок | пропонований |
є | 4 | Назва в іншому проєкті Вікімедіа. Можна не заповнювати, якщо назви в українській та іншому проєкті збігаються | Рядок | пропонований |
не категоризувати? | nocat | Будь-яке значення, якщо автоматична категоризація не потрібна | Рядок | необов'язковий |
Примітки
- ↑ Для посилання в інші вікі використовуйте вікіпосилання з префіксом відповідного проєкту, хоча це необхідно рідко коли, зазвичай на сторінках обговорення чи в джерелах. При цьому, вікі не може бути джерелом сама для себе, окрім вікіджерел.
Документація вище включена з Модуль:Не перекладено/документація. (ред. | історія) Дописувачі можуть експериментувати на підсторінках пісочниці (ред. | різн.) та тести (створити) цього модуля. Будь ласка, додавайте категорії до підсторінки /документація. Підсторінки цієї сторінки. |
-- Модуль покликаний замінити, а згодом розширити новим функціоналом вікікод
-- однойменного шаблону.
-- TODO Докоментувати код
-- TODO Створити документацію до модуля
-- TODO Імплементувати фічі роботи з ВД запропоновані Атою на СО шаблону
local p = {}
-- Щоб порожні використання параметрів вважались нілевими. Нілеві значення, на
-- відміну від порожніх рядків, дають булеву хибу для умовних операторів.
-- Кращий спосіб робити цю валідацію вітається.
local function init(vari)
if vari == "" then
return nil
else
return vari;
end
end
-- має замінити [[Шаблон:Не перекладено/lang]]
local function conjugatedLanguagePhrase(language, nocat, currentTitleText)
-- TODO відсортувати за абеткою (будь-якою)
-- TODO замінити на якусь дуже розумну функцію з витягуванням назв мов з
-- рушія, або ж на використання функції з іншого модуля
local phrase = "";
local cat = "";
-- TODO зробити кращий вивід категорій-індикаторів помилок
local languagePairs = {
["d"] = "Вікіданих",
["simple"] = "англійською",
["en"] = "англійською",
["et"] = "естонською",
["ru"] = "російською",
["de"] = "німецькою",
["fr"] = "французькою",
["la"] = "латиною",
["es"] = "іспанською",
["uk"] = "українською",
["it"] = "італійською",
["pt"] = "португальською",
["pl"] = "польською",
["ba"] = "башкирською",
["el"] = "грецькою",
["bg"] = "болгарською",
["ja"] = "японською",
["nl"] = "нідерландською",
["he"] = "на івриті",
["be"] = "білоруською",
["be-tarask"] = "білоруською",
["be-x-old"] = "білоруською",
["sv"] = "шведською",
["fi"] = "фінською",
["am"] = "вірменською",
["lv"] = "латиською",
["ar"] = "арабською",
["zh"] = "китайською",
["az"] = "азербайджанською",
["tr"] = "турецькою",
["lt"] = "литовською",
["hu"] = "угорською",
["no"] = "норвезькою (букмол)",
["nn"] = "норвезькою (нюношк)",
["sr"] = "сербською",
["cs"] = "чеською",
["cz"] = "чеською",
["ga"] = "ірландською",
["ro"] = "румунською",
["crh"] = "кримськотатарською",
["da"] = "данською",
["ca"] = "каталонською",
["hr"] = "хорватською",
["fa"] = "на фарсі",
["sa"] = "санскриті",
["sk"] = "словацькою",
["id"] = "індонезійською",
["ko"] = "корейською",
["os"] = "осетинською",
["is"] = "ісландською",
["mn"] = "монгольською",
["hi"] = "на хінді",
["tt"] = "татарською",
["eu"] = "баскською",
["cy"] = "валлійською",
["mk"] = "македонською",
["uz"] = "узбецькою",
["sl"] = "словенською",
["kk"] = "казахською",
["sq"] = "албанською",
["gd"] = "гаельською",
["eo"] = "есперанто",
["fy"] = "західнофризькою",
["hy"] = "вірменською",
["ka"] = "грузинською",
["mdf"] = "мокшанською",
["nb"] = "норвезькою (букмол)",
["rue"] = "русинською",
["sah"] = "якутською",
["sh"] = "сербохорватською",
["tl"] = "тагальською",
["vi"] = "в'єтнамською",
["yi"] = "на їдиші",
["ms"] = "малайською",
["tg"] = "таджицькою",
["bs"] = "боснійською",
["si"] = "сингальською",
["ur"] = "мовою урду",
["ps"] = "мовою пушту",
["km"] = "кхмерською",
["th"] = "тайською",
["to"] = "тонганською",
["lo"] = "лаоською",
["dv"] = "мальдівською",
["br"] = "бретонською",
["aa"] = "афарською",
["ab"] = "абхазькою",
["af"] = "мовою африкаанс",
["ak"] = "мовою акан",
["am"] = "амхарською",
["an"] = "арагонською",
["as"] = "ассамською",
["av"] = "аварською",
["ay"] = "мовою аймара",
["pap"] = "мовою пап’яменто",
["lb"] = "люксембурзькою",
["ku"] = "курдською",
["so"] = "сомалійською",
["mt"] = "мальтійською",
["na"] = "науруанською",
["ne"] = "непальською",
["gl"] = "галісійською",
["sc"] = "сардинською",
["scn"] = "сицилійською",
["ky"] = "киргизькою",
["wa"] = "валлонською",
["kl"] = "ґренландською",
["fo"] = "фарерською",
["ast"] = "астурійською",
["kv"] = "мовою комі",
["tyv"] = "тувинською",
["ce"] = "чеченською",
["cv"] = "чуваською",
["rw"] = "руандійською",
["haw"] = "гавайською",
["ch"] = "мовою чаморро",
["co"] = "корсиканською",
["als"] = "алеманським діалектом німецької мови",
["ceb"] = "себуанською",
["frp"] = "франко-провансальською",
["bn"] = "бенгальською",
["myv"] = "ерзянською",
["sw"] = "мовою суахілі",
["oc"] = "окситанською",
["arz"] = "єгипетською арабською",
["avk"] = "мовою котава",
["kw"] = "корнською",
["vec"] = "венеційською",
["ta"] = "тамільською",
["szl"] = "сілезькою",
["sco"] = "шотландською рівниною",
["rup"] = "арумунською",
["mr"] = "мовою маратхі",
["ht"] = "гаїтянською креольською",
["hsb"] = "верхньолужицькою"
}
conjugatedLanguageName = languagePairs[language];
if conjugatedLanguageName then
phrase = phrase .. conjugatedLanguageName;
else
phrase = phrase .. "(помилка: непідтримувана мова)";
if not nocat then
cat = cat .. "[[Категорія:Вікіпедія:Статті з непідтримуваною мовою в шаблоні Не перекладено|" .. language .. "]]";
end
end
local unconjugatable = {
["d"] = true,
["eo"] = true,
["he"] = true,
["sa"] = true,
["hi"] = true,
["fa"] = true,
["la"] = true,
["yi"] = true,
["ur"] = true,
["ps"] = true,
["af"] = true,
["ak"] = true,
["ay"] = true,
["pap"] = true,
["kv"] = true,
["ch"] = true,
["als"] = true,
["sw"] = true,
["avk"] = true,
["mr"] = true
}
if not unconjugatable[language] then
phrase = phrase .. " мовою";
end
return {phrase, cat};
end
-- Головна функція
function p.main(frame)
-- Витягуємо параметри батьківського шаблону
local parent = frame:getParent();
local args = parent.args;
-- Перетягування батьківських параметрів у змінні
local needed = init(args["треба"]) or init(args[1]);
local text = init(args["текст"]) or init(args[2]);
local language = init(args["мова"]) or init(args[3]) or "en";
local exist = init(args["є"]) or init(args[4]) or init(args[1]);
-- відрізати прогалини
language = string.gsub(language, "(%s+)", "");
-- Створюємо таблицю поточної сторінки щоб перевірити її пн, щоб разом з
-- параметром nocat вирішити чи треба її категоризувати
local currentTitle = mw.title.getCurrentTitle();
-- Назва поточної сторінки. Використовуватиметься для ключів сортування
local currentTitleText = currentTitle.text;
-- Витягуємо параметр nocat
local nocat = init(args["nocat"]);
-- та перевіряємо простір назв поточної сторінки
-- не порожнє значення nocat та нульовий простір назв означають що сторінку
-- можна категоризувати.
-- інші простори ще й як треба категоризувати, особливо категорією "неактуальний шаблон".
-- інакше обхід категорії Вікіпедія:Статті з неактуальним шаблоном Не перекладено
-- не виправляє наприклад включення в шаблонах, а це потрібно, бо інакше статті з цим шаблоном
-- в цю категорію потрапляють, але шаблону не містять, його треба прибрати з якогось включення
local ns = currentTitle.namespace;
if ns == 1 or ns == 2 or ns == 3 then nocat = 1; end
-- Головна змінна побудови рядка виводу
local wrt = "";
-- Таблиця назви яка "треба"
if needed == nil then
error("Параметр з назвою сторінки яку треба створити обов'язковий (перший параметр, або параметр треба)")
end
local neededTitle = mw.title.new(needed, "");
-- Булева змінна, яка показує чи існує стаття, яка "треба"
local neededExists = neededTitle.exists;
-- Створюмо внутрішнє посилання на статтю, що "треба"
local linkToNeeded = "";
linkToNeeded = linkToNeeded .. "[[";
linkToNeeded = linkToNeeded .. needed;
if text then
linkToNeeded = linkToNeeded .. "|" .. text;
end
linkToNeeded = linkToNeeded .. "]]";
-- Не залежно від того чи стаття, що "треба" існує ми робимо на неї
-- посилання. Що змінюється — лише колір — і це за нас обробляє рушій
wrt = wrt .. linkToNeeded;
if neededExists then
-- Дії, що здійснюється якщо стаття, яка "треба" існує
local alert = mw.html.create("span");
alert:addClass("noprint user-show");
alert:attr("title","Шаблон «не перекладено» не замінено");
alert:css({["color"]="red"});
alert:wikitext("●");
wrt = wrt .. tostring(alert);
if not nocat then
-- Дії, які здійснюються якщо цю сторінку можна категоризувати
wrt = wrt .. "[[Категорія:Вікіпедія:Статті з неактуальним шаблоном Не перекладено|" .. currentTitleText .. "]]"
end
else
-- Дії, які здійснюються якщо стаття, яка "треба" не існує
-- Створюємо HTML-елемент тексту у верхньому індексі
local sup = mw.html.create("sup");
-- Додаємо до нього клас "noprint"
sup:addClass("noprint");
local linkToExist = "";
linkToExist = linkToExist .. "[[";
linkToExist = linkToExist .. ":" .. language .. ":" .. exist;
if language == "d" then
linkToExist = linkToExist .. "#sitelinks-wikipedia";
end
linkToExist = linkToExist .. "|";
local span = mw.html.create("span");
local spanCSS = {
["font-size"] = "normal",
["font-style"] = "normal",
["font-weight"] = "normal"
}
span:css(spanCSS);
spanTitle = "";
-- містить текст, що буде додано до тегів <span></span>
-- цей текст спливає при наведені курсура на значок «[en]»
-- я (Base) не маю жодного уявлення що б це мало бути, але це порівняння
-- з "d" походить з оригінального коду. Потребує дослідження, оскільки
-- фічу не документовано.
-- Це ж значною мірою стосується й решти умовних операторів, що
-- стосуються атрибуту title
-- "d" - робить посилання на Вікідані
-- Я (Repakr) трохи доповним документацію
--Перевіряємо чи вказано посилання на вікіданих чи ні
--Для цього перевіряється чи змінна language містить значення d
--Якщо так, то в змінну spanTitle додаємо текст "Сторінка статті (назва_потрібної_статті) на"
if language == "d" then
spanTitle = spanTitle .. "Сторінка статті ".. needed .. " на";
else
--Якщо ні, то тоді перевіряється чи містить змінна exist значення
--Якщо так, в змінну spanTitle додаємо текст "(наявна_назва_статті_іншою_мовою) — в"
if exist then
spanTitle = spanTitle .. exist .. " — в";
else
--Якщо ні, в змінну spanTitle додаємо текст «В»
spanTitle = spanTitle .. "В";
end
--Тепер об'єднуємо значення змінної spanTitle з текстом "ерсія статті «(назва_потрібної_статті)»"
spanTitle = spanTitle .. "ерсія статті «".. needed .."»";
end
conjugatedLanguagePhraseAndCat = conjugatedLanguagePhrase(language, nocat, currentTitleText);
spanTitle = spanTitle .. " " .. conjugatedLanguagePhraseAndCat[1];
span:attr("title", spanTitle);
span:wikitext("[" .. language .. "]");
linkToExist = linkToExist .. tostring(span);
linkToExist = linkToExist .. "]]";
linkToExist = linkToExist .. conjugatedLanguagePhraseAndCat[2];
sup:wikitext(linkToExist);
wrt = wrt .. tostring(sup);
end
return wrt;
end
return p;