Module:Citation/CS1/Suggestions: Difference between revisions

From WikiMSK
msk>Wikiworks753
m (1 revision imported from wikipedia:Module:Citation/CS1/Suggestions)
 
(Created page with "-- Please insert new suggestions in alphabetical order -- The form is ['incorrect'] = 'correct', suggestions = { ['abruf'] = 'access-date', -- German ['abruf-ve...")
Line 1: Line 1:
--Please insert new suggestions in alphabetical order
-- Please insert new suggestions in alphabetical order
--The form is ['incorrect'] = 'correct',
-- The form is ['incorrect'] = 'correct',


suggestions = {
suggestions = {
['accessmonth'] = 'access-date', -- no longer supported by us, but still by citation templates mirrored in foreign WPs; can be emulated using 'access-date'
['abruf'] = 'access-date', -- German
['abruf-verborgen'] = 'access-date', -- German
['accessmonth'] = 'access-date',
['accesso'] = 'access-date', -- Italian
['accesso'] = 'access-date', -- Italian
['accessyear'] = 'access-date', -- no longer supported by us, but still by citation templates mirrored in foreign WPs; can be emulated using 'access-date'
['accessyear'] = 'access-date',
['address'] = 'location',
['address'] = 'location',
['année'] = 'year', -- French
['année'] = 'date', -- French
['año'] = 'year',
['año'] = 'date',
['año-original'] = 'orig-year',
['año-original'] = 'orig-year',
['añoacceso'] = 'access-date', -- Spanish
['añoacceso'] = 'access-date', -- Spanish
Line 18: Line 20:
['archiv-url'] = 'archive-url', -- German
['archiv-url'] = 'archive-url', -- German
['archive url'] = 'archive-url', -- Spanish
['archive url'] = 'archive-url', -- Spanish
['artikelnr'] = 'id', -- German (as 'id=Article No. ...')
['artist'] = 'others',
['artist'] = 'others',
['auflage'] = 'edition', -- German
['auflage'] = 'edition', -- German
Line 24: Line 27:
['author link'] = 'author-link', -- Polish
['author link'] = 'author-link', -- Polish
['author link2'] = 'author2-link', -- Polish
['author link2'] = 'author2-link', -- Polish
['autor'] = 'authors', -- German (singular and plural)
['autor'] = 'author', -- German (singular and plural)
['autore'] = 'author', -- Italian
['autore'] = 'author', -- Italian
['autthor'] = 'author',
['autthor'] = 'author',
['band'] = 'volume', -- German
['band'] = 'volume', -- German
['bandreihe'] = 'volume', -- German
['ch'] = 'language', -- German (as 'language=de-CH')
['chapter_title'] = 'chapter',
['chapter_title'] = 'chapter',
['cita'] = 'quote', -- Spanish
['cita'] = 'quote', -- Spanish
Line 43: Line 48:
['datum'] = 'date', -- German
['datum'] = 'date', -- German
['deadlink'] = 'url-status',
['deadlink'] = 'url-status',
['deadurl'] = 'url-status',
['dead-url'] = 'url-status',
['distributor'] = 'publisher',
['distributor'] = 'publisher',
['dnb'] = 'id', -- German (as 'id={{DNB-IDN|...}}') (not yet supported by us directly)
['dnb'] = 'id', -- German (as 'id={{DNB-IDN|...}}')
['doi_brokendate'] = 'doi-broken-date',
['doi_inactivedate'] = 'doi-inactive-date',
['éditeur'] = 'editor', -- French
['éditeur'] = 'editor', -- French
['editon'] = 'edition',
['editon'] = 'edition',
Line 61: Line 70:
['formato'] = 'format', -- Spanish, Italian, Polish
['formato'] = 'format', -- Spanish, Italian, Polish
['frist'] = 'first',
['frist'] = 'first',
['herausgeber'] = 'editors', -- German (singular and plural)
['fundstelle'] = 'at', -- German
['herausgeber'] = 'editor', -- German (singular and plural)
['hrsg'] = 'publisher', -- German
['hrsgreihe'] = 'editor', -- German
['idioma'] = 'language', -- Spanish, Italian
['idioma'] = 'language', -- Spanish, Italian
['imię'] = 'first', -- Polish
['imię'] = 'first', -- Polish
['isbndefekt'] = 'ignore-isbn-error', -- German
['isbnformalfalsch'] = 'ignore-isbn-error', -- German
['isbnistformalfalsch'] = 'ignore-isbn-error', -- German
['isbnistformalfalsch'] = 'ignore-isbn-error', -- German
['isnb'] = 'isbn',
['isnb'] = 'isbn',
['jahr'] = 'year', -- German
['issnformalfalsch'] = 'ignore-issn-error', -- German
['jahr'] = 'date', -- German
['jahrea'] = 'orig-year', -- German (not a direct replacement, but can be emulated)
['kapitel'] = 'chapter', -- German
['kapitel'] = 'chapter', -- German
-- ['kommentar'] = 'comment', -- German (not yet supported by us)
['lang'] = 'language',
['langauge'] = 'language',
['langauge'] = 'language',
['langue'] = 'language', -- French
['langue'] = 'language', -- French
Line 76: Line 90:
['lingua'] = 'language', -- Italian
['lingua'] = 'language', -- Italian
['lire en ligne'] = 'url', -- French
['lire en ligne'] = 'url', -- French
['lizenznummer'] = 'id', -- German (as 'id=License ...')
['loaction'] = 'location',
['loaction'] = 'location',
['locatoin'] = 'location',
['locatoin'] = 'location',
Line 94: Line 107:
['nome'] = 'first', -- Italian
['nome'] = 'first', -- Italian
['nummer'] = 'number', -- German
['nummer'] = 'number', -- German
['nummerreihe'] = 'number', -- German
['obra'] = 'work', -- Spanish
['obra'] = 'work', -- Spanish
['odpowiedzialność'] = 'agency', -- Polish
['odpowiedzialność'] = 'agency', -- Polish
['offline'] = 'url-status', -- German
['offline'] = 'url-status', -- German (as 'url-status=dead')
['online'] = 'url', -- German (not a direct replacement, but can be emulated)
['online'] = 'url', -- German (not a direct replacement, but can be emulated)
['opublikowany'] = 'agency', -- Polish
['opublikowany'] = 'agency', -- Polish
Line 102: Line 116:
['origdate'] = 'orig-year',
['origdate'] = 'orig-year',
['originaljahr'] = 'orig-year', -- German
['originaljahr'] = 'orig-year', -- German
['originalort'] = 'location', -- German (if 'ort' is specified at the same time, the latter should be put in 'publication-place')
['originalort'] = 'publication-place', -- German
['originalsprache'] = 'language', -- German
['originalsprache'] = 'language', -- German
['originaltitel'] = 'title', -- German (if 'originaltitel' is specified, any possible contents of 'title' should be put in 'trans-title')
['originaltitel'] = 'title', -- German (if 'originaltitel' is specified, any possible contents of 'title' should be put in 'trans-title')
['ort'] = 'location', -- German
['ort'] = 'publication-place', -- German
['ortea'] = 'publication-place', -- German (not a direct replacement, but can be emulated)
['other'] = 'others',
['other'] = 'others',
['oznaczenie'] = 'agency', -- Polish
['oznaczenie'] = 'agency', -- Polish
Line 127: Line 142:
['rok'] = 'date', -- Polish
['rok'] = 'date', -- Polish
['sammelwerk'] = 'work', -- German
['sammelwerk'] = 'work', -- German
['seiten'] = 'pages', -- German
['seria'] = 'series', -- Polish
['seria'] = 'series', -- Polish
['série'] = 'work', -- French *RECHECK*
['série'] = 'series', -- French
['service'] = 'agency',
['service'] = 'agency',
['sitioweb'] = 'website', --Spanish
['sitioweb'] = 'website', -- Spanish
['sito'] = 'website', --Italian
['sito'] = 'website', -- Italian
['stron'] = 'page', -- Polish
['stron'] = 'page', -- Polish
['strony'] = 'pages', -- Polish
['strony'] = 'pages', -- Polish
['spalten'] = 'at', -- German (not a direct replacement, but can be emulated)
['spalten'] = 'at', -- German (not a direct replacement, but can be emulated)
['sprache'] = 'language', -- German
['sprache'] = 'language', -- German
['suscripción'] = 'subscription', -- Spanish, Polish
['suscripción'] = 'url-access', -- Spanish, Polish (as |url-access=subscription)
['tag'] = 'date', -- German
['tag'] = 'date', -- German
['template doc demo'] = 'template-doc-demo',
['tile'] = 'title',
['tile'] = 'title',
['tite'] = 'title',
['tite'] = 'title',
Line 149: Line 164:
['título'] = 'title', -- Spanish
['título'] = 'title', -- Spanish
['transchapter'] = 'trans-chapter',
['transchapter'] = 'trans-chapter',
['translator'] = 'others',
['trans_chapter'] = 'trans-chapter',
['trans_title'] = 'trans-title',
['transtitle'] = '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')
['typ'] = 'author-mask', -- German (not a direct replacement, but the only valid argument 'typ=wl' can be emulated using 'author-mask')
Line 156: Line 172:
['urlarchivo'] = 'archive-url', -- Spanish
['urlarchivo'] = 'archive-url', -- Spanish
['urlarchivio'] = 'archive-url', -- Italian
['urlarchivio'] = 'archive-url', -- Italian
['urn'] = 'id', -- German (as 'id={{URN|...}}') (not yet supported by us directly)
['urn'] = 'id', -- German (as 'id={{URN|...}}')
['übersetzer'] = 'translator', -- German (singular and plural)
['übersetzer'] = 'translator', -- German (singular and plural)
['verlag'] = 'publisher', -- German
['verlag'] = 'publisher', -- German
['verlagea'] = 'publisher', -- German (not a direct replacement, but can be emulated)
['vol'] = 'volume',  
['vol'] = 'volume',  
['volumen'] = 'volume', -- Spanish
['volumen'] = 'volume', -- Spanish
Line 168: Line 185:
['wydawca'] = 'publisher', -- French
['wydawca'] = 'publisher', -- French
['zaprezentowany'] = 'publisher', -- French
['zaprezentowany'] = 'publisher', -- French
['zdb'] = 'id', -- German (as 'id={{ZDB|...}}') (not yet supported by us directly)
['zdb'] = 'id', -- German (as 'id={{ZDB|...}}')
['zitat'] = 'quote', -- German
['zitat'] = 'quote', -- German
['zugriff'] = 'access-date', -- German
['zugriff'] = 'access-date', -- German
}
}




--[[--------------------------< P A T T E R N S >--------------------------------------------------------------
--[[--------------------------< P A T T E R N S >--------------------------------------------------------------


Here we use Lua patterns to make suggestions.  The form is ['pattern'] = 'correct',
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 are not REGEX though they are similar.  The escape character is '%', not '\'.
lua patterns, see: Extension:Scribunto/Lua_reference_manual#Patterns
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
Patterns should probably always include the '^' and '$' anchor assertions to prevent a partial
suggesting the wrong parameter name.  For instance, the pattern 'a[utho]+r' matches 'author' in the no-longer-supported
match from incorrectly suggesting the wrong parameter name.  For instance, the pattern 'a[utho]+r'
parameter |author-separator= so the code suggests '|author='; the same pattern also matches the no-longer-supported
matches 'author' in the no-longer-supported parameter |author-separator= so the code suggests
parameter |separator= (returning 'ator') so again, the code suggests '|author='.
'|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
One capture is supported, typically the enumerator from an enumerated parameter (the '6' in |author6=, etc.)
capture replaces $1 in the 'correct' value.
The value from the capture replaces $1 in the 'correct' value.


]]
]]

Revision as of 15:05, 22 August 2020

{{#lst:Module:Citation/CS1/doc|header}}

This is a list of suggested alternatives to use when an unknown parameter is encountered by a citation template. When an unknown parameter is found within a citation template an error message is generated, and when possible the software makes a suggestion for what the user may have meant by consulting this list of common mistakes and typos.

Each entry takes the form: ['bad input parameter'] = 'suggested parameter to use'

The bad input parameter will have been transformed to lower case before checking this list, so all input forms on this list should be written in lowercase.

{{#lst:Module:Citation/CS1/doc|module_components_table}}


-- 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',
	['año-original'] = 'orig-year',
	['añoacceso'] = 'access-date',												-- Spanish
	['annoaccesso'] = 'access-date',											-- Italian
	['annodiaccesso'] = 'access-date',											-- Italian
	['apellido'] = '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',
	['author link'] = 'author-link',											-- Polish
	['author link2'] = 'author2-link',											-- Polish
	['autor'] = 'author',														-- 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',
	['cita'] = 'quote',															-- Spanish
	['citazione'] = 'quote',													-- Italian
	['coauthor'] = 'author',
	['coauthors'] = 'author',
	['coautores'] = 'author',													-- Spanish
	['coautori'] = 'author',													-- Italian
	['cognome'] = 'last',														-- Italian
	['consulté le'] = 'access-date',											-- French
	['czasopismo'] = 'journal',													-- Polish
	['data'] = 'date',															-- Polish, Italian
	['dataarchivio'] = 'archive-date',											-- Italian
	['data dostępu'] = 'access-date',											-- Polish
	['datum'] = 'date',															-- German
	['deadlink'] = 'url-status',
	['deadurl'] = 'url-status',
	['dead-url'] = 'url-status',
	['distributor'] = 'publisher',
	['dnb'] = 'id',																-- German (as 'id={{DNB-IDN|...}}')
	['doi_brokendate'] = 'doi-broken-date',
	['doi_inactivedate'] = 'doi-inactive-date',
	['éditeur'] = 'editor',														-- French
	['editon'] = 'edition',
	['editoin'] = 'edition',
	['editora'] = 'publisher',													-- Portuguese
	['editorial'] = 'publisher',
	['en ligne le'] = 'archive-date',											-- French
	['encyclopædia'] = 'encyclopedia',
	['enlaceautor'] = 'author-link',											-- Spanish
	['fecha'] = 'date',															-- Spanish
	['fechaacceso'] = 'access-date',											-- Spanish
	['fechaarchivo'] = 'archive-date',											-- Spanish
	['filetype'] = 'format',
	['first 1'] = 'first1',
	['foramt'] = 'format',
	['formato'] = 'format',														-- Spanish, Italian, Polish
	['frist'] = 'first',
	['fundstelle'] = 'at',														-- German
	['herausgeber'] = 'editor',													-- German (singular and plural)
	['hrsg'] = 'publisher',														-- German
	['hrsgreihe'] = 'editor',													-- German
	['idioma'] = 'language',													-- Spanish, Italian
	['imię'] = 'first',															-- Polish
	['isbndefekt'] = 'ignore-isbn-error',										-- German
	['isbnformalfalsch'] = 'ignore-isbn-error',									-- German
	['isbnistformalfalsch'] = 'ignore-isbn-error',								-- German
	['isnb'] = 'isbn',
	['issnformalfalsch'] = 'ignore-issn-error',									-- German
	['jahr'] = 'date',															-- German
	['jahrea'] = 'orig-year',													-- German (not a direct replacement, but can be emulated)
	['kapitel'] = 'chapter',													-- German
	['langauge'] = 'language',
	['langue'] = 'language',													-- French
	['last 1'] = 'last1',
	['lieu'] = 'location',														-- French
	['lingua'] = 'language',													-- Italian
	['lire en ligne'] = 'url',													-- French
	['loaction'] = 'location',
	['locatoin'] = 'location',
	['lugar'] = 'location',														-- Spanish
	['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',
	['newpaper'] = 'newspaper',
	['news'] = 'newspaper',
	['nom'] = 'last',															-- French
	['nom1'] = 'last1',															-- French
	['nombre'] = 'first',														-- Spanish
	['nome'] = 'first',															-- Italian
	['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)
	['opublikowany'] = 'agency',												-- Polish
	['opera'] = 'work',															-- Italian
	['origdate'] = 'orig-year',
	['originaljahr'] = 'orig-year',												-- 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',
	['página'] = 'page',														-- Spanish, Italian
	['páginas'] = 'pages',														-- Spanish, Italian
	['passage'] = 'pages',														-- French
	['pagina'] = 'pages',														-- Italian
	['pagine'] = 'pages',														-- Italian
	['périodique'] = 'publisher',												-- French
	['plublisher'] = 'publisher',
	['pmcid'] = 'pmc',
	['praca'] = 'work',															-- Polish
	['prénom'] = 'first',														-- French
	['prénom1'] = 'first1',														-- French
	['ps'] = 'postscript',
	['pub'] = 'publisher',
	['pulbication-place'] = 'publication-place',
	['reihe'] = 'series',														-- German
	['retrieved'] = 'access-date',
	['rok'] = 'date',															-- Polish
	['sammelwerk'] = 'work',													-- German
	['seria'] = 'series',														-- Polish
	['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
	['suscripción'] = 'url-access',												-- Spanish, Polish (as |url-access=subscription)
	['tag'] = 'date',															-- German
	['template doc demo'] = 'template-doc-demo',
	['tile'] = 'title',
	['tite'] = 'title',
	['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',														-- Spanish, Italian
	['titre'] = 'title',														-- French
	['títle'] = 'title',
	['título'] = 'title',														-- Spanish
	['transchapter'] = 'trans-chapter',
	['trans_chapter'] = 'trans-chapter',
	['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
	['urn'] = 'id',																-- German (as 'id={{URN|...}}')
	['übersetzer'] = 'translator',												-- German (singular and plural)
	['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',
	['^a[utho]+r$'] = 'author',
	['^a[utho]+r(%d+)$'] = 'author$1',											-- enumerated
	['^pu[blish]+ers?$'] = 'publisher',
	}

return {suggestions = suggestions, patterns=patterns};