Mô đun:Citation/Suggestions/sandbox
Có thể viết tài liệu về mô đun này tại Mô đun:Citation/Suggestions/sandbox/tài liệu.
--[[ History of changes since last sync: 2020-07-11 2020-09-02: suggest |orig-date= instead of |orig-year= parameter; see Help_talk:Citation_Style_1#cite_news_should_have_two_dates 2020-09-10: add hints for removed parameter names |ignoreisbnerror=, |doi-broken=, |doi-inactive-date= and |embargo=; see Help_talk:Citation_Style_1#Deprecating_some_unused_parameter_aliases and Help_talk:Citation_Style_1#Replacing_ignore-isbn-error=_and_doi-broken=_by_isbn/doi=((invalid-value))_syntax 2020-09-10: add hints for removed parameter names |interviewerlink= and |interviewermask=; see Help_talk:Citation_Style_1#name-given= and -surname parameter variants 2020-09-10: add hints for some likely misspellings of parameter names which do not have hyphenated forms (|eprint=, |inset=, |network=, |newsgroup=, |newspaper=, |postscript=, |surname=, |transcript=, |vauthors=, |veditors=) 2020-09-14: add hints for parameters from citation templates in Italian and Spanish Wikipedia 2020-09-16: add hints for removed parameter names |authorfirst=, |authorlast=, |authorgiven= |authorsurname=, |displayeditors=, |editorfirst=, |editorlast=, |editorgiven=, |editorsurname=, |editormask= and enumerated variants; see Help_talk:Citation_Style_1#name-given= and -surname parameter variants and Help_talk:Citation_Style_1#Should_removed_parameters_be_in_the_list_of_suggestions? 2020-09-16: add hint for old parameters |laysummary= and |lay-summary=. 2020-09-17: add hints for two likely misguesses |forename= and |family= due to our support for given/surname instead of given/family and forename/surname 2020-09-22: added hints for removed aliases |notracking= and |no-cat=; see Help_talk:Citation_Style_1#no-cat_parameter_cleanup ]] -- Please insert new suggestions in alphabetical order -- The form is ['incorrect'] = 'correct', suggestions = { ['abruf'] = 'access-date', -- German ['abruf-verborgen'] = 'access-date', -- German ['accessmonth'] = 'access-date', ['accesso'] = 'access-date', -- Italian ['accessyear'] = 'access-date', ['address'] = 'location', ['année'] = 'date', -- French ['año'] = 'date', -- Spanish ['añooriginal'] = 'orig-date', -- Spanish ['año-original'] = 'orig-date', -- Spanish ['añoacceso'] = 'access-date', -- Spanish ['anno'] = 'date', -- Italian ['annoaccesso'] = 'access-date', -- Italian ['annodiaccesso'] = 'access-date', -- Italian ['annooriginale'] = 'orig-date', -- Italian ['apellido'] = 'last', -- Spanish ['apellidos'] = 'last', -- Spanish ['archiv-datum'] = 'archive-date', -- German ['archive date'] = 'archive-date', ['archiv-url'] = 'archive-url', -- German ['archive url'] = 'archive-url', -- Spanish ['artikelnr'] = 'id', -- German (as 'id=Article No. ...') ['artist'] = 'others', ['auflage'] = 'edition', -- German ['auteur'] = 'author', -- French ['auther'] = 'author', ['authorfirst'] = 'author-first', -- old parameter name ['authorgiven'] = 'author-given', -- old parameter name ['authorlast'] = 'author-last', -- old parameter name ['author link'] = 'author-link', -- Polish ['authorsurname'] = 'author-surname', -- old parameter name ['autor'] = 'author', -- Spanish, German (singular and plural) ['autore'] = 'author', -- Italian ['autthor'] = 'author', ['band'] = 'volume', -- German ['bandreihe'] = 'volume', -- German ['ch'] = 'language', -- German (as 'language=de-CH') ['chapter_title'] = 'chapter', ['cid'] = 'ref', -- Italian ['cita'] = 'quote', -- Spanish ['citazione'] = 'quote', -- Italian ['città'] = 'location', -- Italian ['coauthor'] = 'author', ['coauthors'] = 'author', ['coautores'] = 'author', -- Spanish ['coautori'] = 'author', -- Italian ['cognome'] = 'last', -- Italian ['consulté le'] = 'access-date', -- French ['curatore'] = 'publisher', -- Italian ['czasopismo'] = 'journal', -- Polish ['data'] = 'date', -- Polish, Italian ['dataaccesso'] = 'access-date', -- Italian ['dataarchivio'] = 'archive-date', -- Italian ['data dostępu'] = 'access-date', -- Polish ['datum'] = 'date', -- German ['deadlink'] = 'url-status', ['deadurl'] = 'url-status', -- old parameter name ['dead-url'] = 'url-status', -- old parameter name ['distributor'] = 'publisher', ['displayeditors'] = 'display-editors', -- old parameter name ['dnb'] = 'id', -- German (as 'id={{DNB-IDN|...}}') ['doibroken'] = 'doi-broken-date', -- invalid name found in mainspace ['doi-broken'] = 'doi-broken-date', -- former parameter alias ['doi_brokendate'] = 'doi-broken-date', ['doiinactive'] = 'doi-broken-date', -- invalid name found in mainspace ['doi-inactive'] = 'doi-broken-date', -- invalid name found in mainspace ['doi-inactive-date'] = 'doi-broken-date', -- former parameter alias ['doi_inactivedate'] = 'doi-inactive-date', --['ed'] = 'edition', avoid suggestion as in English this could be short for editor or edition ['éditeur'] = 'editor', -- French ['editon'] = 'edition', -- misspelling ['editoin'] = 'edition', -- misspelling -- ['editora'] = 'publisher', -- can be either editor or publisher -- ['editore'] = 'agency', -- can be either publisher or agency -- ['editori'] = 'editor', -- can be either editor or publisher -- ['editorial'] = 'publisher', -- can be either publisher or work ['editorfirst'] = 'editor-first', -- old parameter name ['editorgiven'] = 'editor-given', -- old parameter name ['editorlast'] = 'editor-last', -- old parameter name ['editormask'] = 'editor-mask', -- old parameter name ['editorsurname'] = 'editor-surname', -- old parameter name ['edizione'] = 'edition', -- Italian ['en ligne le'] = 'archive-date', -- French ['encyclopædia'] = 'encyclopedia', ['enlaceautor'] = 'author-link', -- Spanish ['enlaceroto'] = 'url-status', -- Spanish ['embargo'] = 'pmc-embargo-date', -- former parameter name ['e-print'] = 'eprint', -- misspelling ['family'] = 'surname', -- misguess ['fecha'] = 'date', -- Spanish ['fechaacceso'] = 'access-date', -- Spanish ['fechaarchivo'] = 'archive-date', -- Spanish ['filetype'] = 'format', ['foramt'] = 'format', -- misspelling ['formato'] = 'format', -- Spanish, Italian, Polish ['forename'] = 'given', -- misguess ['fore-name'] = 'given', -- misguess/misspelling ['frist'] = 'first', -- misspelling ['fundstelle'] = 'at', -- German ['giornale'] = 'journal', -- Italian ['herausgeber'] = 'editor', -- German (singular and plural) ['hrsg'] = 'publisher', -- German ['hrsgreihe'] = 'editor', -- German ['idioma'] = 'language', -- Spanish ['ignoreisbnerror'] = 'isbn', -- former parameter alias (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax)) ['imię'] = 'first', -- Polish ['in-set'] = 'inset', -- misspelling ['interviewerlink'] = 'interviewer-link', -- former parameter alias ['interviewermask'] = 'interviewer-mask', -- former parameter alias ['isbndefekt'] = 'ignore-isbn-error', -- German ['isbnformalfalsch'] = 'ignore-isbn-error', -- German ['isbnistformalfalsch'] = 'ignore-isbn-error', -- German ['isnb'] = 'isbn', -- misspelling ['issnformalfalsch'] = 'ignore-issn-error', -- German ['jahr'] = 'date', -- German ['jahrea'] = 'orig-date', -- German (not a direct replacement, but can be emulated) ['kapitel'] = 'chapter', -- German ['langauge'] = 'language', -- misspelling ['langue'] = 'language', -- French ['laysummary'] = 'lay-url', -- old parameter ['lay-summary'] = 'lay-url', -- old parameter ['lieu'] = 'location', -- French ['lingua'] = 'language', -- Italian ['lire en ligne'] = 'url', -- French ['loaction'] = 'location', -- misspelling ['locatoin'] = 'location', -- misspelling ['lugar'] = 'location', -- Spanish ['mes'] = 'date', -- Spanish (not a direct replacement) ['mese'] = 'date', -- Italian (not a direct replacement) ['miejsce'] = 'location', -- Polish ['miesiąc'] = 'date', -- Polish ['mois'] = 'date', -- French ['monat'] = 'date', -- German -- ['name'] = 'author', -- 'name' is often erroneously used for 'title' and 'work' as well, so no suggestion is better than a wrong suggestion ['nazwisko'] = 'last', -- Polish ['nespaper'] = 'newspaper', -- misspelling ['net-work'] = 'network', -- misspelling ['newpaper'] = 'newspaper', -- misspelling ['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 ['notracking'] = 'no-tracking', -- old parameter ['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 ['página'] = 'page', -- Spanish ['páginas'] = 'pages', -- Spanish ['pagine'] = 'pages', -- Italian ['passage'] = 'pages', -- French ['pagina'] = 'pages', -- Italian ['pagine'] = 'pages', -- Italian ['periodico'] = 'magazine', -- Spanish ['périodique'] = 'publisher', -- French ['plublisher'] = 'publisher', -- misspelling ['pmcid'] = 'pmc', ['post-script'] = 'postscript', -- misspelling ['praca'] = 'work', -- Polish ['prénom'] = 'first', -- French ['prénom1'] = 'first1', -- French ['primero'] = 'first', -- Spanish ['ps'] = 'postscript', ['pub'] = 'publisher', -- ['pubblicazione'] = 'magazine', -- could be any kind of work -- ['publicación'] = 'journal', -- could be any kind of work ['pulbication-place'] = 'publication-place', -- misspelling ['reihe'] = 'series', -- German ['retrieved'] = 'access-date', ['richiestasottoscrizione'] = 'url-access', -- Italian (as |url-access=subscription) ['rok'] = 'date', -- Polish ['sammelwerk'] = 'work', -- German ['script-post'] = 'postscript', -- misspelling ['script-trans'] = 'transcript', -- misspelling ['seria'] = 'series', -- Spanish, Polish ['serie'] = 'series', -- Italian ['série'] = 'series', -- French ['service'] = 'agency', ['sitioweb'] = 'website', -- Spanish ['sito'] = 'website', -- Italian ['stron'] = 'page', -- Polish ['strony'] = 'pages', -- Polish ['spalten'] = 'at', -- German (not a direct replacement, but can be emulated) ['sprache'] = 'language', -- German ['sur-name'] = 'surname', -- misspelling ['suscripción'] = 'url-access', -- Spanish, Polish (as |url-access=subscription) ['tag'] = 'date', -- German ['template doc demo'] = 'no-tracking', -- old parameter ['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) ['titolo'] = 'title', -- Italian ['titre'] = 'title', -- French ['títle'] = 'title', ['título'] = 'title', -- Spanish ['transchapter'] = 'trans-chapter', ['trans_chapter'] = 'trans-chapter', ['transscript'] = 'transcript', -- misspelling ['trans-script'] = 'transcript', -- misspelling ['transscript-format'] = 'transcript-format', -- misspelling ['transscripturl'] = 'transcript-url', -- misspelling ['transscript-url'] = 'transcript-url', -- misspelling ['trans_title'] = 'trans-title', ['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 ['ubicación'] = 'location', -- Spanish ['urlarchivo'] = 'archive-url', -- Spanish ['urlarchivio'] = 'archive-url', -- Italian ['urlmorto'] = 'url-status', -- Italian ['urn'] = 'id', -- German (as 'id={{URN|...}}') ['übersetzer'] = 'translator', -- German (singular and plural) ['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 ['zaprezentowany'] = 'publisher', -- French ['zdb'] = 'id', -- German (as 'id={{ZDB|...}}') ['zitat'] = 'quote', -- German ['zugriff'] = 'access-date', -- German } --[[--------------------------< 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 = { ['^ac+es+ ?d?a?t?e?$'] = 'access-date', -- misspelling ['^apellido[s]?(%d+)$'] = 'last$1', -- Spanish, enumerated ['^a[utho]+r$'] = 'author', -- misspelling ['^a[utho]+r(%d+)$'] = 'author$1', -- misspelling, enumerated ['^author link(%d+)$'] = 'author-link$1', -- Polish, enumerated ['^autor[e]?(%d+)$'] = 'author$1', -- Italian/Spanish/German, enumerated ['^authorfirst(%d+)$'] = 'author-first$1', -- old parameter name, enumerated ['^author(%d+)first$'] = 'author-first$1', -- old parameter name, enumerated ['^authorgiven(%d+)$'] = 'author-given$1', -- old parameter name, enumerated ['^author(%d+)given$'] = 'author-given$1', -- old parameter name, enumerated ['^authorlast(%d+)$'] = 'author-last$1', -- old parameter name, enumerated ['^author(%d+)last$'] = 'author-last$1', -- old parameter name, enumerated ['^authorsurname(%d+)$'] = 'author-surname$1', -- old parameter name, enumerated ['^author(%d+)surname$'] = 'author-surname$1', -- old parameter name, enumerated ['^cognome(%d+)$'] = 'last$1', -- Italian, enumerated ['^editorfirst(%d+)$'] = 'editor-first$1', -- old parameter name, enumerated ['^editor(%d+)first$'] = 'editor-first$1', -- old parameter name, enumerated ['^editorgiven(%d+)$'] = 'editor-given$1', -- old parameter name, enumerated ['^editor(%d+)given$'] = 'editor-given$1', -- old parameter name, enumerated ['^editorlast(%d+)$'] = 'editor-last$1', -- old parameter name, enumerated ['^editor(%d+)last$'] = 'editor-last$1', -- old parameter name, enumerated ['^editormask(%d+)$'] = 'editor-mask$1', -- old parameter name, enumerated ['^editor(%d+)mask$'] = 'editor-mask$1', -- old parameter name, enumerated ['^editorsurname(%d+)$'] = 'editor-surname$1', -- old parameter name, enumerated ['^editor(%d+)surname$'] = 'editor-surname$1', -- old parameter name, enumerated ['^enlaceautore(%d+)$'] = 'author-link$1', -- Spanish, enumerated ['^first (%d+)$'] = 'first$1', -- enumerated ['^last (%d+)$'] = 'last$1', -- enumerated ['^nom[e]?(%d+)$'] = 'last$1', -- Italian/French, enumerated ['^nombre(%d+)$'] = 'first$1', -- Spanish, enumerated ['^primero(%d+)$'] = 'first$1', -- Spanish, enumerated ['^pu[blish]+ers?$'] = 'publisher', -- misspelling ['^wkautore(%d+)$'] = 'author-link$1', -- Italian, enumerated } return {suggestions = suggestions, patterns=patterns};