Модуль:Citation/CS1/Suggestions
Зовнішній вигляд
< Модуль:Citation | CS1
| Цей модуль Lua використовується на 2300+ сторінках і його зміни будуть дуже помітними. Будь ласка, перевіряйте будь-які зміни на підсторінках /пісочниці та /тестів цього модуля, або у вашій пісочниці модуля, та зважайте на обговорення змін на сторінці обговорення перед їхнім впровадженням. |
| Цей модуль позначений як К:реліз, готовий до загального вжитку (272). Він досягнув стадії готовності й вважається, що вільний від помилок і може використовуватись всюди, де знадобиться. Його можна згадувати на довідкових сторінках та інших сторінках Вікіпедії як можливість для навчання новачків. Аби зменшити навантаження на сервери та некоректний показ сторінок, його потрібно вдосконалювати через тестування у пісочниці[en], а не через застосування спроб і помилок. |
| Цей модуль позначено як К:такий, що потребує захищеного статусу (128). Завершені модулі використовуються в дуже великій кількості статей, або часто використовуються як підстановки. Позаяк акти вандалізму або помилки можуть вплинути на багато сторінок і навіть незначне редагування призведе до істотного навантаження на сервери, вони підлягають захисту від редагувань. |
Це список запропонованих альтернатив для використання, коли знайдено невідомий параметр в шаблоні посилань на джерела. Коли невідомий параметр знайдено всередині шаблону посилань на джерела, то виводиться повідомлення про помилку, і коли можливо, програмне забезпечення пропонує, що міг мати на увазі користувач, проконсультувавшись зі списком відомих помилок і описок.
Кожний запис має форму: ['погано введений параметр'] = 'запропонований параметр до використання'
Погано введений параметр буде перетворено до нижнього регістру перед тим, як звіряти зі списком, тому усі форми вхідних даних в цьому списку повинні записані в нижньому регістрі.
Наступні файли є частиною модуля, що забезпечує підтримку шаблонів посилань на джерела cs1|2:
Документація вище включена з Модуль:Citation/CS1/Suggestions/документація. (ред. | історія)
Дописувачі можуть експериментувати на підсторінках пісочниці (ред. | різн.) та тести (створити) цього модуля.
Будь ласка, додавайте категорії до підсторінки /CS1/Suggestions/документація. Підсторінки цієї сторінки.
Дописувачі можуть експериментувати на підсторінках пісочниці (ред. | різн.) та тести (створити) цього модуля.
Будь ласка, додавайте категорії до підсторінки /CS1/Suggestions/документація. Підсторінки цієї сторінки.
---Будь ласка, вставляйте нові підказки у алфавітному порядку
suggestions = {
['abruf'] = 'access-date', -- German
['abruf-verborgen'] = 'access-date', -- German
['accesdate'] = 'accessdate',
['accessed'] = 'accessdate',
['acessdate'] = 'accessdate',
['accessmonth'] = 'access-date',
['accesso'] = 'access-date', -- Italian
['accessyear'] = 'access-date',
['acessodata'] = 'access-date', -- Brazilian Portuguese
['ad'] = 'first', -- Turkish
['address'] = 'location',
['anno'] = 'date', -- Italian
['annoaccesso'] = 'access-date', -- Italian
['annodiaccesso'] = 'access-date', -- Italian
['annooriginale'] = 'orig-date', -- Italian
['année'] = 'date', -- French
['apellido'] = 'last', -- Spanish
['apellidos'] = 'last', -- Spanish
['archiv-datum'] = 'archive-date', -- German
['archiv-url'] = 'archive-url', -- German
['archive date'] = 'archive-date', -- misspelling
['archive url'] = 'archive-url', -- misspelling
['archive-link'] = 'archive-url', -- old parameter name
['archiv-url'] = 'archive-url', -- German
['arkivdatum'] = 'archive-date', -- Swedish, Norwegian
['arkivurl'] = 'archive-url', -- Swedish, Norwegian
['artist'] = 'others',
['arşiv-tarihi'] = 'archive-date', -- Turkish
['arşiv-url'] = 'archive-url', -- Turkish
['arşivtarihi'] = 'archive-date', -- Turkish
['arşivurl'] = 'archive-url', -- Turkish
['auflage'] = 'edition', -- German
['auteur'] = 'author', -- French
['auther'] = 'author', -- misspelling
['author link'] = 'author-link', -- Polish
['authorfirst'] = 'author-first', -- old parameter name
['authorgiven'] = 'given', -- old parameter name
['authorlast'] = 'author-last', -- old parameter name
['authorsurname'] = 'author-surname', -- old parameter name
['autor'] = 'author', -- Spanish, German (singular and plural)
['autore'] = 'author', -- Italian
['autthor'] = 'author',
['ay'] = 'month', -- Turkish
['año'] = 'date', -- Spanish
['año-original'] = 'orig-date', -- Spanish
['añoacceso'] = 'access-date', -- Spanish
['añooriginal'] = 'orig-date', -- Spanish
['band'] = 'volume', -- German
['bandreihe'] = 'volume', -- German
['baskı'] = 'edition', -- Turkish
['başlık'] = 'title', -- Turkish
['ch'] = 'language', -- German (as 'language=de-CH')
['chapter_title'] = 'chapter',
['chapterlink'] = 'chapter-url',
['cid'] = 'ref', -- Italian
['cilt'] = 'volume', -- Turkish
['cita'] = 'quote', -- Spanish
['citazione'] = 'quote', -- Italian
['città'] = 'location', -- Italian
['coautores'] = 'coauthors', -- Spanish
['coautori'] = 'coauthors', -- Italian
['cognome'] = 'last', -- Italian
['consulté le'] = 'access-date', -- French
['curatore'] = 'publisher', -- Italian
['czasopismo'] = 'journal', -- Polish
['data dostępu'] = 'access-date', -- Polish
['data'] = 'date', -- Polish, Italian
['dataaccesso'] = 'access-date', -- Italian
['dataarchivio'] = 'archive-date', -- Italian
['datepublished'] = 'publication-date',
['datum'] = 'date', -- German, Swedish
['dergi'] = 'work', -- Turkish
['dil'] = 'language', -- Turkish
['distributor'] = 'publisher',
['dnb'] = 'id', -- German (as 'id={{DNB-IDN|...}}')
['editoin'] = 'edition', -- misspelling
['editon'] = 'edition', -- misspelling
['editorfirst'] = 'editor-first', -- old parameter name
['editorgiven'] = 'editor-given', -- old parameter name
['editorlast'] = 'editor-last', -- old parameter name
['editorsurname'] = 'editor-surname', -- стара назва параметру
['edizione'] = 'edition', -- Italian
['en ligne le'] = 'archive-date', -- French
['encyclopædia'] = 'encyclopedia',
['enlaceautor'] = 'author-link', -- Spanish
['enlaceroto'] = 'url-status', -- Spanish
['erişimtarihi'] = 'access-date', -- Turkish
['eser'] = 'work', -- Turkish
['family'] = 'surname', -- misguess
['fecha'] = 'date', -- Spanish
['fechaacceso'] = 'access-date', -- Spanish
['fechaarchivo'] = 'archive-date', -- Spanish
['filetype'] = 'format',
['foramt'] = 'format', -- misspelling
['fore-name'] = 'given', -- misguess/misspelling
['forename'] = 'given', -- misguess
['författare'] = 'author', -- Swedish, Norwegian
['formato'] = 'format', -- Spanish, Italian, Polish
['frist'] = 'first', -- misspelling
['fundstelle'] = 'at', -- German
['gazete'] = 'work', -- Turkish
['giornale'] = 'journal', -- Italian
['hämtdatum'] = 'access-date', -- Swedish
['herausgeber'] = 'editor', -- German (singular and plural)
['hrsg'] = 'publisher', -- German
['hrsgreihe'] = 'editor', -- German
['idioma'] = 'language', -- Spanish
['imię'] = 'first', -- Polish
['in-set'] = 'inset', -- misspelling
['interviewerlink'] = 'interviewer-link', -- old parameter alias
['interviewermask'] = 'interviewer-mask', -- old parameter alias
['isbndefekt'] = 'isbn', -- German (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax))
['isbnformalfalsch'] = 'isbn', -- German (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax))
['isbnistformalfalsch'] = 'isbn', -- German (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax))
['isnb'] = 'isbn', -- misspelling
['issnformalfalsch'] = 'issn', -- German (can be fully emulated using ((syntax)))
['jahr'] = 'date', -- German
['jahrea'] = 'orig-date', -- German (not a direct replacement, but can be emulated)
['kapitel'] = 'chapter', -- German
['langauge'] = 'language', -- misspelling
['langue'] = 'language', -- French
['lieu'] = 'location', -- French
['lingua'] = 'language', -- Italian
['lire en ligne'] = 'url', -- French
['lizenznummer'] = 'id', -- German (as 'id=License No. ...')
['loaction'] = 'location',
['local'] = 'location', -- Brazilian Portuguese
['locatoin'] = 'location',
['lugar'] = 'location', -- Spanish
['mailinglist'] = 'mailing-list', -- old parameter name
['mapurl'] = 'map-url', -- old parameter name
['mes'] = 'month', -- Spanish (not a direct replacement)
['mese'] = 'month', -- Italian (not a direct replacement)
['miejsce'] = 'location', -- Polish
['miesiąc'] = 'month', -- Polish
['mois'] = 'month', -- French
['monat'] = 'month', -- German
--['name'] = 'author', -- 'name' is often erroneously used for 'title' and 'work' as well, so no suggestion is better than a wrong suggestion
['name-list-format'] = 'name-list-style', -- old parameter name (as |name-list-style=amp)
['nazwisko'] = 'last', -- Polish
['nespaper'] = 'newspaper', -- misspelling
['net-work'] = 'network', -- misspelling
['newpaper'] = 'newspaper',
['news'] = 'newspaper',
['news-group'] = 'newsgroup', -- misspelling
['news-paper'] = 'newspaper', -- misspelling
['no-cat'] = 'no-tracking', -- old parameter
['nom'] = 'last', -- French
['nombre'] = 'first', -- Spanish
['nome'] = 'first', -- Italian
['numero'] = 'number', -- Italian, Spanish
['nummer'] = 'number', -- German
['nummerreihe'] = 'number', -- German
['obra'] = 'work', -- Spanish
['odpowiedzialność'] = 'agency', -- Polish
['offline'] = 'url-status', -- German (as 'url-status=dead')
['online'] = 'url', -- German (not a direct replacement, but can be emulated)
['opera'] = 'work', -- Italian
['opublikowany'] = 'agency', -- Polish
['origdate'] = 'orig-date', -- misspelling
['originaljahr'] = 'orig-date', -- German
['originalort'] = 'publication-place', -- German
['originalsprache'] = 'language', -- German
['originaltitel'] = 'title', -- German (if 'originaltitel' is specified, any possible contents of 'title' should be put in 'trans-title')
['ort'] = 'publication-place', -- German
['ortea'] = 'publication-place', -- German (not a direct replacement, but can be emulated)
['other'] = 'others',
['oznaczenie'] = 'agency', -- Polish
['pagees'] = 'pages', -- misspelling
['pagina'] = 'page', -- Italian
['pagina'] = 'pages', -- Italian
['pagine'] = 'pages', -- Italian
['pagine'] = 'pages', -- Italian
['passage'] = 'pages', -- French
['periodico'] = 'magazine', -- Spanish
['plublisher'] = 'publisher', -- misspelling
['pmcid'] = 'pmc',
['post-script'] = 'postscript', -- misspelling
['praca'] = 'work', -- Polish
['primero'] = 'first', -- Spanish
['prénom'] = 'first', -- French
['prénom1'] = 'first1', -- French
['ps'] = 'postscript',
['pub'] = 'publisher',
-- ['pubblicazione'] = 'magazine', -- could be any kind of work
-- ['publicación'] = 'journal', -- could be any kind of work
-- ['published'] = 'publisher', -- could be date, location, or name of publisher
['pulbisher'] = 'publisher',
['pulbication-place'] = 'publication-place',
['página'] = 'page', -- Spanish
['páginas'] = 'pages', -- Spanish
['périodique'] = 'publisher', -- French
['registration'] = 'url-access', -- old parameter name
['reihe'] = 'series', -- German
['retrieved'] = 'accessdate',
['richiestasottoscrizione'] = 'url-access', -- Italian (as |url-access=subscription)
['rivista'] = 'magazine', -- Italian
['rok'] = 'year', -- Polish
['rubrik'] = 'title', -- Swedish
['sammelwerk'] = 'work', -- German
['sayfa'] = 'page', -- Turkish
['sayfalar'] = 'pages', -- Turkish
['sayı'] = 'issue', -- Turkish
['script-post'] = 'postscript', -- misspelling
['script-trans'] = 'transcript', -- misspelling
['sectionurl'] = 'section-url', -- old parameter name
['seiten'] = 'pages', -- German
['seria'] = 'series', -- Spanish, Polish
['serie'] = 'series', -- Italian
['série'] = 'series', -- French
['service'] = 'agency',
['sitioweb'] = 'website', -- Spanish
['sito'] = 'website', -- Italian
['soyadı'] = 'last', -- Turkish
['spalten'] = 'at', -- German (not a direct replacement, but can be emulated)
['sprache'] = 'language', -- German
['språk'] = 'language', -- Swedish, Norwegian
['stron'] = 'page', -- Polish
['strony'] = 'pages', -- Polish
['subjectlink'] = 'subject-link', -- old parameter name
['sur-name'] = 'surname', -- misspelling
['suscripción'] = 'url-access', -- Spanish, Polish (as |url-access=subscription)
['tag'] = 'day', -- German
['tarih'] = 'date', -- Turkish
['tidning'] = 'work', -- Swedish
['tile'] = 'title', -- misspelling
['tipo'] = 'type', -- Italian
['tite'] = 'title', -- misspelling
['titel'] = 'title', -- German
['titel-p'] = 'title', -- German ('postscript=none' should be added as well)
['titelerg'] = 'contribution', -- German (not a direct replacement, but can be emulated)
['titled'] = 'title', -- Brazilian Portuguese
['titolo'] = 'title', -- Italian
['titre'] = 'title', -- French
['trans-script'] = 'transcript', -- misspelling
['transscript'] = 'transcript', -- misspelling
['transscript-url'] = 'transcript-url', -- misspelling
['transscripturl'] = 'transcript-url', -- misspelling
['transtitle'] = 'trans-title',
['typ'] = 'author-mask', -- German (not a direct replacement, but the only valid argument 'typ=wl' can be emulated using 'author-mask')
['tytuł'] = 'title', -- Polish
['títle'] = 'title',
['título'] = 'title', -- Spanish
['ubicación'] = 'location', -- Spanish
['urlarchivio'] = 'archive-url', -- Italian
['urlarchivo'] = 'archive-url', -- Spanish
['urlmorto'] = 'url-status', -- Italian
['urn'] = 'id', -- German (as 'id={{URN|...}}')
['v-authors'] = 'vauthors', -- misspelling
['v-editors'] = 'veditors', -- misspelling
['verlag'] = 'publisher', -- German
['verlagea'] = 'publisher', -- German (not a direct replacement, but can be emulated)
['vol'] = 'volume',
['volumen'] = 'volume', -- Spanish
['werk'] = 'work', -- German
['werkerg'] = 'contribution', -- German (not a direct replacement, but can be emulated)
['wkautore'] = 'author-link', -- Italian
['wolumin'] = 'volume', -- Polish
['wydanie'] = 'number', -- Polish
['wydawca'] = 'publisher', -- French
['yardımcıyazarlar'] = 'author', -- Turkish
['yayımcı'] = 'publisher', -- Turkish
['yayıncı'] = 'publisher', -- Turkish
['yazar'] = 'author', -- Turkish
['yazarbağı'] = 'author-link', -- Turkish
['yer'] = 'location', -- Turkish
['yıl'] = 'date', -- Turkish
['zaprezentowany'] = 'publisher', -- French
['zdb'] = 'id', -- German (as 'id={{ZDB|...}}')
['zitat'] = 'quote', -- German
['zugriff'] = 'access-date', -- German
['éditeur'] = 'editor', -- French
['ölüurl'] = 'url-status', -- Turkish
['übersetzer'] = 'translator', -- German (singular and plural)
['авторлінк'] = 'автор-посилання',
['глава'] = 'розділ',
['главалінк'] = 'url-розділу',
['датадоступу'] = 'дата-доступу',
['лінк'] = 'url',
['розділ-посилання'] = 'url-розділу',
}
--[[--------------------------< P A T T E R N S >--------------------------------------------------------------
Here we use Lua patterns to make suggestions. The form is
['pattern'] = 'correct',
Lua patterns are not REGEX though they are similar. The escape character is '%', not '\'.
For more information about Lua patterns, see: Extension:Scribunto/Lua_reference_manual#Patterns
Patterns should probably always include the '^' and '$' anchor assertions to prevent a partial
match from incorrectly suggesting the wrong parameter name. For instance, the pattern 'a[utho]+r'
matches 'author' in the no-longer-supported parameter |author-separator= so the code suggests
'|author='; the same pattern also matches the no-longer-supported parameter |separator= (returning 'ator')
so again, the code suggests '|author='.
One capture is supported, typically the enumerator from an enumerated parameter (the '6' in |author6=, etc.)
The value from the capture replaces $1 in the 'correct' value.
]]
local patterns = {
['^apellido[s]?(%d+)$'] = 'last$1', -- Spanish, enumerated
['^authors(%d+)$'] = 'author$1', -- стара назва параметру
['^author link(%d+)$'] = 'author-link$1', -- Polish, enumerated
['^autor[e]?(%d+)$'] = 'author$1', -- Italian/Spanish/German,
['^cognome(%d+)$'] = 'last$1', -- Italian, enumerated
['^EditorGiven(%d+)$'] = 'editor-given$1', -- стара назва параметру
['^editors(%d+)$'] = 'editor$1', -- стара назва параметру
['^EditorSurname(%d+)$'] = 'editor-surname$1', -- стара назва параметру
['^enlaceautore(%d+)$'] = 'author-link$1', -- Spanish, enumerated
['^nom[e]?(%d+)$'] = 'last$1', -- Italian/French, enumerated
['^nombre(%d+)$'] = 'first$1', -- Spanish, enumerated
['^primero(%d+)$'] = 'first$1', -- Spanish, enumerated
['^wkautore(%d+)$'] = 'author-link$1', -- Italian, enumerated
['^автори(%d+)$'] = 'автор$1', -- стара назва параметру
['^редактори(%d+)$'] = 'редактор$1', -- стара назва параметру
}
return {suggestions = suggestions, patterns=patterns};