Modul:Citation/CS1/Configuration og Modul:Citation/CS1/Configuration/sandkasse: Forskjell mellom sider
Utseende
(Forskjell mellom sider)
Slettet innhold Innhold lagt til
m Lenkefiks |
mer oversetting |
||
Linje 1: | Linje 1: | ||
local lang_obj = mw.language.getContentLanguage(); -- make a language object for the local language; used here for languages and dates |
|||
local citation_config = {}; |
|||
-- override <code>...</code> styling to remove color, border, and padding. <code> css is specified here: |
|||
-- https://git.wikimedia.org/blob/mediawiki%2Fcore.git/69cd73811f7aadd093050dbf20ed70ef0b42a713/skins%2Fcommon%2FcommonElements.css#L199 |
|||
local code_style="color:inherit; border:inherit; padding:inherit;"; |
|||
--[[--------------------------< U N C A T E G O R I Z E D _ N A M E S P A C E S >------------------------------ |
--[[--------------------------< U N C A T E G O R I Z E D _ N A M E S P A C E S >------------------------------ |
||
List of namespaces that should not be included in citation error categories. |
List of namespaces that should not be included in citation error categories. |
||
Same as setting notracking = true by default. |
|||
Note: Namespace names should use underscores instead of spaces. |
Note: Namespace names should use underscores instead of spaces. |
||
]] |
]] |
||
local uncategorized_namespaces = { 'Diskusjon', 'Bruker', 'Brukerdiskusjon', 'Wikipedia-diskusjon', 'Fildiskusjon', |
|||
'Maldiskusjon', 'Hjelpdiskusjon', 'Kategoridiskusjon', 'Portaldiskusjon', 'Moduldiskusjon', 'MediaWiki-diskusjon' }; |
|||
local uncategorized_namespaces = { 'User', 'Talk', 'User_talk', 'Wikipedia_talk', |
|||
local uncategorized_subpages = {'/[Ss]andkasse', '/[Tt]esttilfeller'}; -- list of Lua patterns found in page names of pages we should not categorize |
|||
'File_talk', 'Template_talk', 'Help_talk', 'Category_talk', 'Portal_talk', |
|||
'Book_talk', 'Draft_talk', 'Education_Program_talk', 'Module_talk', 'MediaWiki_talk' }; |
|||
local uncategorized_subpages = {'/[Ss]andbox', '/[Tt]estcases', '/[^/]*[Ll]og', '/[Aa]rchive'}; -- list of Lua patterns found in page names of pages we should not categorize |
|||
--[[--------------------------< M E S S A G E S >-------------------------------------------------------------- |
--[[--------------------------< M E S S A G E S >-------------------------------------------------------------- |
||
Linje 29: | Linje 27: | ||
local messages = { |
local messages = { |
||
['agency'] = '$1 $2', -- $1 is sepc, $2 is agency |
|||
['archived-dead'] = 'Arkivert fra $1 $2', |
['archived-dead'] = 'Arkivert fra $1 $2', |
||
['archived- |
['archived-live'] = '$1 fra originalen $2', |
||
['archived-missing'] = 'Arkivert fra originalen$1 $2', |
['archived-missing'] = 'Arkivert fra originalen$1 $2', |
||
['archived-unfit'] = 'Arkivert fra originalen ', |
|||
['archived'] = 'Arkivert', |
['archived'] = 'Arkivert', |
||
['by'] = ' |
['by'] = 'AV', -- contributions to authored works: introduction, foreword, afterword |
||
['cartography'] = 'Kartografi av $1', |
['cartography'] = 'Kartografi av $1', |
||
['editor'] = 'red.', |
['editor'] = 'red.', |
||
Linje 45: | Linje 45: | ||
['interview'] = 'Intervju med $1', |
['interview'] = 'Intervju med $1', |
||
['lay summary'] = 'Sammendrag', |
['lay summary'] = 'Sammendrag', |
||
['mismatch'] = '<code class="cs1-code">|$1=</code> / <code class="cs1-code">|$2=</code> mismatch', -- $1 is year param name; $2 is date param name |
|||
['newsgroup'] = '[[Diskusjonsgruppe]]: $1', |
['newsgroup'] = '[[Diskusjonsgruppe]]: $1', |
||
['notitle'] = 'Ingen tittel', -- for |title=(()) and (in the future) |title=none |
|||
['original'] = 'originalen', |
['original'] = 'originalen', |
||
['origdate'] = ' [$1]', |
|||
['published'] = ' (utgitt $1)', |
['published'] = ' (utgitt $1)', |
||
['retrieved'] = 'Besøkt $1', |
['retrieved'] = 'Besøkt $1', |
||
['season'] = 'sesong $1', |
['season'] = 'sesong $1', |
||
['section'] = '§ |
['section'] = '§ $1', |
||
['sections'] = '§§ |
['sections'] = '§§ $1', |
||
['series'] = ' |
['series'] = '$1 $2', -- $1 is sepc, $2 is series |
||
['seriesnum'] = 'Serie $1', |
|||
['translated'] = 'Oversatt av $1', |
['translated'] = 'Oversatt av $1', |
||
['type'] = ' ($1)', -- for titletype |
['type'] = ' ($1)', -- for titletype |
||
['written'] = 'Skrevet i/på $1', |
['written'] = 'Skrevet i/på $1', -- Viser til sted. Litt vrient på norsk siden både 'Skrevet i' og 'Skrevt på' brukes |
||
['vol'] = '$1 bind $2', -- $1 is sepc; bold journal style volume is in presentation{} |
['vol'] = '$1 bind $2', -- $1 is sepc; bold journal style volume is in presentation{} |
||
['vol-no'] = '$1 bind $2 no. $3', -- sepc, volume, issue |
['vol-no'] = '$1 bind $2 no. $3', -- sepc, volume, issue (alternatively insert $1 after $2, but then we'd also have to change capitalization) |
||
['issue'] = '$1 |
['issue'] = '$1 Nr. $2', -- $1 is sepc |
||
['j-vol'] = '$1 $2', -- sepc, volume; bold journal volume is in presentation{} |
['j-vol'] = '$1 $2', -- sepc, volume; bold journal volume is in presentation{} |
||
Linje 75: | Linje 79: | ||
['j-sheets'] = ': Sheets $1', |
['j-sheets'] = ': Sheets $1', |
||
['language'] = '(på $1)', |
|||
['subscription'] = '<span style="font-size:0.95em; font-size:90%; color:#555">(<span title="Det er ikke påkrevd at kilder skal være tilgjengelig på nett. Kilder på nett må ikke være fritt tilgjengelig. Det kan være at nettstedet krever betalt abonnement." style="border-bottom:1px dotted;cursor:help">abonnement kreves</span>)</span>' .. |
|||
'[[Kategori:Sider som inneholder lenker som krever abonnement]]', |
|||
['registration'] = '<span style="font-size:0.95em; font-size:90%; color:#555">(<span title="Det er ikke påkrevd at kilder skal være tilgjengelig på nett. Kilder på nett må ikke være fritt tilgjengelig. Det kan være at nettstedet krever registrering." style="border-bottom:1px dotted;cursor:help">registrering kreves</span>))</span>' .. |
|||
'[[Kategori:Sider som inneholder lenker som krever registrering]]', |
|||
['language'] = '<small class="tekst-graa"><b>($1)</b></small>', |
|||
['via'] = " – via $1", |
['via'] = " – via $1", |
||
['event'] = 'Hendelsen inntreffer', |
['event'] = 'Hendelsen inntreffer', |
||
['minutes'] = 'minutter fra start', |
['minutes'] = 'minutter fra start', |
||
['parameter-separator'] = ', ', |
|||
['parameter-final-separator'] = ', og ', |
|||
['parameter-pair-separator'] = ' og ', |
|||
-- Determines the location of the help page |
-- Determines the location of the help page |
||
Linje 94: | Linje 88: | ||
['help page label'] = 'hjelp', |
['help page label'] = 'hjelp', |
||
-- categories |
|||
['cat wikilink'] = '[[Kategori:$1]]', -- $1 is the category name |
|||
[':cat wikilink'] = '[[:Kategori:$1|lenke]]', -- category name as maintenance message wikilink; $1 is the category name |
|||
-- Internal errors (should only occur if configuration is bad) |
-- Internal errors (should only occur if configuration is bad) |
||
['undefined_error'] = ' |
['undefined_error'] = 'Udefinert feil - sjekk parametre', |
||
['unknown_ID_key'] = 'Unrecognized ID key: ', -- an ID key in id_handlers not found in ~/Identifiers func_map{} |
|||
['unknown_manual_ID'] = 'Ukjent manuell ID-modus', |
|||
['unknown_ID_access'] = 'Unrecognized ID access keyword: ', -- an ID access keyword in id_handlers not found in keywords_lists['id-access']{} |
|||
['unknown_ID_mode'] = 'Ukjent ID-modus', |
|||
['unknown_argument_map'] = 'Argumentkartet er ikke definert for denne variabelen', |
['unknown_argument_map'] = 'Argumentkartet er ikke definert for denne variabelen', |
||
['bare_url_no_origin'] = 'Naken url funnet, men |
['bare_url_no_origin'] = 'Naken url funnet, men opprinnelsesindikatoren er null eller tom', |
||
} |
|||
['warning_msg_e'] = '<span style="color:#d33">En eller flere <code style="color: inherit; background: inherit; border: none; padding: inherit;">{{$1}}</code> maler har feil</span>; feilmeldingen kan være skjult ([[Hjelp:CS1-feil#Visning_av_feilmeldinger|hjelp]]).'; -- $1 is template link |
|||
['warning_msg_m'] = '<span style="color:#3a3">En eller flere <code style="color: inherit; background: inherit; border: none; padding: inherit;">{{$1}}</code> maler har vedlikeholdsmeldinger</span>; meldingen kan være skjult ([[Hjelp:CS1-feil#Visning_av_feilmeldinger|hjelp]]).'; -- $1 is template link |
|||
} |
|||
--[[--------------------------< P R E S E N T A T I O N >------------------------------------------------------ |
|||
--[[--------------------------< C I T A T I O N _ C L A S S _ M A P >------------------------------------------ |
|||
Fixed presentation markup. Originally part of citation_config.messages it has been moved into its own, more semantically |
|||
correct place. |
|||
this table maps the value assigned to |CitationClass= in the cs1|2 templates to the canonical template name when |
|||
the value assigned to |CitationClass= is different from the canonical template name. |CitationClass= values are |
|||
used as class attributes in the <cite> tag that encloses the citation so these names may not contain spaces while |
|||
the canonical template name may. These names are used in warning_msg_e and warning_msg_m to create links to the |
|||
template's documentation when an article is displayed in preivew mode. |
|||
Most cs1|2 template |CitationClass= values at en.wiki match their canonical template names so are not listed here. |
|||
]] |
]] |
||
local citation_class_map_t = { -- TODO: if kept, these and all other config.CitationClass 'names' require some sort of i18n |
|||
['audio-visual'] = 'AV media', -- TODO: move to ~/Configuration |
|||
['AV-media-notes'] = 'AV media notes', |
|||
['encyclopaedia'] = 'encyclopedia', |
|||
['mailinglist'] = 'mailing list', |
|||
['pressrelease'] = 'press release' |
|||
} |
|||
--[=[-------------------------< E T _ A L _ P A T T E R N S >-------------------------------------------------- |
|||
This table provides Lua patterns for the phrase "et al" and variants in name text |
|||
(author, editor, etc.). The main module uses these to identify and emit the 'etal' message. |
|||
]=] |
|||
local et_al_patterns = { |
|||
"[;,]? *[\"']*%f[%a][Ee][Tt]%.? *[Aa][Ll][%.;,\"']*$", -- variations on the 'et al' theme |
|||
"[;,]? *[\"']*%f[%a][Ee][Tt]%.? *[Aa][Ll][Ii][AaIi][Ee]?[%.;,\"']*$", -- variations on the 'et alia', 'et alii' and 'et aliae' themes (false positive 'et aliie' unlikely to match) |
|||
"[;,]? *%f[%a]and [Oo]thers", -- an alternative to et al. |
|||
"%[%[ *[Ee][Tt]%.? *[Aa][Ll]%.? *%]%]", -- a wikilinked form |
|||
"%(%( *[Ee][Tt]%.? *[Aa][Ll]%.? *%)%)", -- a double-bracketed form (to counter partial removal of ((...)) syntax) |
|||
"[%(%[] *[Ee][Tt]%.? *[Aa][Ll]%.? *[%)%]]", -- a bracketed form |
|||
} |
|||
--[[--------------------------< P R E S E N T A T I O N >------------------------ |
|||
Fixed presentation markup. Originally part of citation_config.messages it has |
|||
been moved into its own, more semantically correct place. |
|||
]] |
|||
local presentation = |
local presentation = |
||
{ |
{ |
||
-- Error output |
|||
-- .error class is specified at https://git.wikimedia.org/blob/mediawiki%2Fcore.git/9553bd02a5595da05c184f7521721fb1b79b3935/skins%2Fcommon%2Fshared.css#L538 |
|||
-- .citation-comment class is specified at Help:CS1_errors#Controlling_error_message_display |
-- .citation-comment class is specified at Help:CS1_errors#Controlling_error_message_display |
||
['hidden-error'] = '<span |
['hidden-error'] = '<span class="cs1-hidden-error citation-comment">$1</span>', |
||
['visible-error'] = '<span |
['visible-error'] = '<span class="cs1-visible-error citation-comment">$1</span>', |
||
['hidden-maint'] = '<span class="cs1-maint citation-comment">$1</span>', |
|||
['accessdate'] = '<span class="reference-accessdate">$1$2</span>', -- to allow editors to hide accessdate using personal css |
|||
['accessdate'] = '<span class="reference-accessdate">$1$2</span>', -- to allow editors to hide accessdate using personal CSS |
|||
['bdi'] = '<bdi$1>$2</bdi>', -- bidirectional isolation used with |script-title= and the like |
['bdi'] = '<bdi$1>$2</bdi>', -- bidirectional isolation used with |script-title= and the like |
||
['cite'] = '<cite class="$1">$2</cite>'; -- |ref= not set so no id="..." attribute |
['cite'] = '<cite class="$1">$2</cite>'; -- for use when citation does not have a namelist and |ref= not set so no id="..." attribute |
||
['cite-id'] = '<cite id="$1" class="$2">$3</cite>'; -- for use when |ref= is set |
['cite-id'] = '<cite id="$1" class="$2">$3</cite>'; -- for use when when |ref= is set or when citation has a namelist |
||
['format'] = ' <span |
['format'] = ' <span class="cs1-format">($1)</span>', -- for |format=, |chapter-format=, etc. |
||
-- various access levels, for |access=, |doi-access=, |arxiv=, ... |
|||
-- narrow no-break space   may work better than nowrap CSS. Or not? Browser support? |
|||
['ext-link-access-signal'] = '<span class="$1" title="$2">$3</span>', -- external link with appropriate lock icon |
|||
['free'] = {class='cs1-lock-free', title='Åpent tilgjengelig'}, -- classes defined in Module:Citation/CS1/styles.css |
|||
['registration'] = {class='cs1-lock-registration', title='Gratis registrering kreves'}, |
|||
['limited'] = {class='cs1-lock-limited', title='Gratis tilgang begrenset til utprøving, abonnement kreves vanligvis'}, |
|||
['subscription'] = {class='cs1-lock-subscription', title='Betalt abonnement kreves'}, |
|||
[' |
['interwiki-icon'] = '<span class="$1" title="$2">$3</span>', |
||
['class-wikisource'] = 'cs1-ws-icon', |
|||
['free'] = '[[File:Lock-green.svg|9px|link=|alt=Åpent tilgjengelig|Åpent tilgjengelig]]', |
|||
['registration'] = '[[File:Lock-blue-alt-2.svg|9px|link=|alt=Gratis registrering kreves|Gratis registrering kreves]]', |
|||
['limited'] = '[[File:Lock-blue-alt-2.svg|9px|link=|alt=Gratis tilgang begrenset til utprøving, abonnement kreves vanligvis|Gratis tilgang begrenset til utprøving, abonnement kreves vanligvis]]', |
|||
['subscription'] = '[[File:Lock-red-alt.svg|9px|link=|alt=Betalt abonnement kreves|Betalt abonnement kreves]]', |
|||
['åpen'] = '[[File:Lock-green.svg|9px|link=|alt=Åpent tilgjengelig|Åpent tilgjengelig]]', |
|||
['registrering'] = '[[File:Lock-blue-alt-2.svg|9px|link=|alt=Gratis registrering kreves|Gratis registrering kreves]]', |
|||
['begrenset'] = '[[File:Lock-blue-alt-2.svg|9px|link=|alt=Gratis tilgang begrenset til utprøving, abonnement kreves vanligvis|Gratis tilgang begrenset til utprøving, abonnement kreves vanligvis]]', |
|||
['abonnement'] = '[[File:Lock-red-alt.svg|9px|link=|alt=Betalt abonnement kreves|Betalt abonnement kreves]]', |
|||
['italic-title'] = "''$1''", |
['italic-title'] = "''$1''", |
||
['kern-left'] = '<span |
['kern-left'] = '<span class="cs1-kern-left"></span>$1', -- spacing to use when title contains leading single or double quote mark |
||
['kern-right'] = '$1<span |
['kern-right'] = '$1<span class="cs1-kern-right"></span>', -- spacing to use when title contains trailing single or double quote mark |
||
['nowrap1'] = '<span class="nowrap">$1</span>', -- for nowrapping an item: <span ...>yyyy-mm-dd</span> |
['nowrap1'] = '<span class="nowrap">$1</span>', -- for nowrapping an item: <span ...>yyyy-mm-dd</span> |
||
['nowrap2'] = '<span class="nowrap">$1</span> $2', -- for nowrapping portions of an item: <span ...>dd mmmm</span> yyyy (note white space) |
['nowrap2'] = '<span class="nowrap">$1</span> $2', -- for nowrapping portions of an item: <span ...>dd mmmm</span> yyyy (note white space) |
||
['ocins'] = '<span title="$1" class="Z3988" |
['ocins'] = '<span title="$1" class="Z3988"></span>', |
||
['parameter'] = '<code class="cs1-code">|$1=</code>', |
|||
['ps_cs1'] = '.'; -- CS1 style postscript (terminal) character |
|||
['ps_cs2'] = ''; -- CS2 style postscript (terminal) character (empty string) |
|||
['quoted-text'] = '<q>$1</q>', -- for wrapping |quote= content |
|||
['parameter'] = '<code style="'..code_style..'">|$1=</code>', |
|||
['quoted-title'] = '"$1"', |
|||
[' |
['sep_cs1'] = '.', -- CS1 element separator |
||
['sep_cs2'] = ',', -- CS2 separator |
|||
['quoted-title'] = '«$1»', |
|||
['sep_nl'] = ';', -- CS1|2 style name-list separator between names is a semicolon |
|||
['sep_nl_and'] = ' and ', -- used as last nl sep when |name-list-style=and and list has 2 items |
|||
['sep_nl_end'] = '; and ', -- used as last nl sep when |name-list-style=and and list has 3+ names |
|||
['sep_name'] = ', ', -- CS1|2 style last/first separator is <comma><space> |
|||
['sep_nl_vanc'] = ',', -- Vancouver style name-list separator between authors is a comma |
|||
['sep_name_vanc'] = ' ', -- Vancouver style last/first separator is a space |
|||
['sep_list'] = ', ', -- used for |language= when list has 3+ items except for last sep which uses sep_list_end |
|||
['sep_list_pair'] = ' og ', -- used for |language= when list has 2 items |
|||
['sep_list_end'] = ' og ', -- used as last list sep for |language= when list has 3+ items |
|||
['trans-italic-title'] = "[''$1'']", |
['trans-italic-title'] = "[''$1'']", |
||
['trans-quoted-title'] = "[$1]", |
['trans-quoted-title'] = "[$1]", -- for |trans-title= and |trans-quote= |
||
['vol-bold'] = '$1 $2', -- sepc, volume; for bold journal cites; for other cites ['vol'] in messages{} |
['vol-bold'] = '$1 <b>$2</b>', -- sepc, volume; for bold journal cites; for other cites ['vol'] in messages{} |
||
} |
} |
||
--[[--------------------------< A L I A S E S > |
--[[--------------------------< A L I A S E S >--------------------------------- |
||
Aliases table for commonly passed parameters. |
|||
Parameter names on the right side in the assignments in this table must have been |
|||
Aliases table for commonly passed parameters |
|||
defined in the Whitelist before they will be recognized as valid parameter names |
|||
]] |
]] |
||
local aliases = { |
local aliases = { |
||
['AccessDate'] = {'besøksdato', 'access-date', 'accessdate'}, |
['AccessDate'] = {'besøksdato', 'access-date', 'accessdate'}, -- Used by InternetArchiveBot |
||
['Agency'] = {'nyhetsbyrå', 'byrå'}, |
['Agency'] = {'nyhetsbyrå', 'byrå', 'agency'}, |
||
['ArchiveDate'] = {'arkivdato','arkiv-dato','archive-date', 'archivedate'}, -- Used by InternetArchiveBot |
|||
['AirDate'] = 'først', |
|||
[' |
['ArchiveFormat'] = {'arkivformat','archive-format'}, |
||
['ArchiveURL'] = {'arkiv-url', 'arkiv_url', 'arkivurl', 'archive-url', 'archiveurl'}, -- Used by InternetArchiveBot |
|||
['ArchiveFormat'] = 'arkivformat', |
|||
['ASINTLD'] = 'asin-tld', |
|||
['ArchiveURL'] = {'arkiv-url', 'arkiv_url', 'arkivurl', 'archive-url', 'archiveurl' }, |
|||
['At'] = {'ved','at'}, -- Used by InternetArchiveBot |
|||
['ASINTLD'] = {'ASIN-TLD', 'asin-tld'}, |
|||
['Authors'] = {'forfattere','personer','authors', 'people', 'credits'}, |
|||
['At'] = 'ved', |
|||
['BookTitle'] = {'boktittel', 'book-title', 'booktitle'}, |
|||
['AuthorNameSeparator'] = {'forfatternavn-skilletegn', 'forfatternavn-separator'}, |
|||
[' |
['Cartography'] = {'kartografri', 'cartography'}, |
||
['Chapter'] = {'kapittel', 'bidrag', 'oppføring', 'artikkel', 'seksjon', 'chapter', 'contribution', 'entry', 'article', 'section'}, |
|||
['AuthorSeparator'] = {"forfatter-skilletegn", "forfatter-separator", "forfatterseparator" }, |
|||
['ChapterFormat'] = {'kapittelformat', 'bidragsformat', 'avsnittsformat', 'chapter-format', 'contribution-format', 'entry-format', |
|||
['BookTitle'] = 'boktittel', |
|||
'article-format', 'section-format'}; |
|||
['Callsign'] = 'kallesignal', -- kilde intervju |
|||
['ChapterURL'] = {'kapittel-url', 'kapittelurl', 'bidrag-url', 'bidragurl', 'seksjonurl', 'avsnittsurl', 'chapter-url', 'contribution-url', 'entry-url', 'article-url', 'section-url', 'chapterurl'}, -- Used by InternetArchiveBot |
|||
['Cartography'] = 'kartografi', |
|||
['ChapterUrlAccess'] = {'chapter-url-access', 'contribution-url-access', |
|||
['Chapter'] = {'kapittel', 'bidrag', 'oppføring', 'artikkel', 'seksjon' }, |
|||
'entry-url-access', 'article-url-access', 'section-url-access'}, -- Used by InternetArchiveBot |
|||
['ChapterFormat'] = {'kapittelformat', 'bidragsformat', 'avsnittsformat'}; |
|||
['Class'] = 'klasse', -- cite arxiv and arxiv identifier |
|||
['ChapterLink'] = 'kapittellenke', |
|||
['ChapterURL'] = {'kapittel-url', 'kapittelurl', 'bidrag-url', 'bidragurl', 'seksjonurl', 'avsnittsurl' }, |
|||
['City'] = 'by', -- kilde intervju |
|||
['Class'] = 'klasse', -- cite arxiv and arxiv identifiers |
|||
['Coauthors'] = {'medforfattere', 'medforfatter' }, |
|||
['Cointerviewers'] = 'medintervjuere', -- kilde intervju |
|||
['Collaboration'] = 'samarbeid', |
['Collaboration'] = 'samarbeid', |
||
['Conference'] = {'konferanse', 'hendelse' }, |
['Conference'] = {'konferanse', 'hendelse', 'conference', 'event'}, |
||
['ConferenceFormat'] = {'konferanseformat', 'arrangement-format'}, |
['ConferenceFormat'] = {'konferanseformat', 'arrangement-format', 'conference-format'}, |
||
['ConferenceURL'] = {'konferanse-url', 'konferanseurl', 'arrangement-url', 'arrangementurl', 'hendelseurl'}, |
['ConferenceURL'] = {'konferanse-url', 'konferanseurl', 'arrangement-url', 'arrangementurl', 'hendelseurl', 'conference-url'}, -- Used by InternetArchiveBot |
||
['Date'] = {'dato', 'date', 'air-date', 'airdate'}, -- air-date and airdate for cite episode and cite serial only |
|||
['Contribution'] = 'bidrag', -- introduction, foreword, afterword, etc; required when |contributor= set |
|||
['Date'] = 'dato', |
|||
['Day'] = 'dag', |
|||
['DeadURL'] = {'url-status', 'død-lenke', 'dødlenke'}, |
|||
['Degree'] = 'grad', |
['Degree'] = 'grad', |
||
['DF'] = 'df', |
['DF'] = 'df', |
||
['DisplayAuthors'] = { |
['DisplayAuthors'] = {'vis-forfattere', 'visforfattere', 'display-authors', 'display-subjects'}, |
||
['DisplayContributors'] = 'display-contributors', |
|||
['DisplayEditors'] = {"vis-redaktører", "visredaktører"}, |
|||
['DisplayEditors'] = {'vis-redaktører', 'visredaktører', 'display-editors'}, |
|||
['Docket'] = 'docket', |
|||
[' |
['DisplayInterviewers'] = 'display-interviewers', |
||
['DisplayTranslators'] = 'display-translators', |
|||
['DoiBroken'] = {'doi_inaktivdato', 'doi_bruttdato', 'doi_brutt'}, |
|||
[' |
['Docket'] = {'sal', 'docket'}, |
||
['DoiBroken'] = 'doi-broken-date', |
|||
['EditorNameSeparator'] = {'redaktørnavn-skilletegn', 'redaktørnavn-separator'}, |
|||
[' |
['Edition'] = 'edition', |
||
['Embargo'] = 'pmc-embargo-date', |
|||
['EditorSeparator'] = {'redaktør-skilletegn', 'redaktør-separator'}, |
|||
['Encyclopedia'] = {'oppslagsverk', 'encyclopedia', 'encyclopaedia', 'dictionary'}, -- cite encyclopedia only |
|||
['Embargo'] = 'embargo', |
|||
['Embargo'] = {'Embargo', 'embargo'}, |
|||
['Encyclopedia'] = {'encyclopedia', 'encyclopaedia', 'oppslagsverk'}, -- this one only used by citation |
|||
['Episode'] = 'episode', -- cite serial only TODO: make available to cite episode? |
['Episode'] = 'episode', -- cite serial only TODO: make available to cite episode? |
||
['Format'] = 'format', |
['Format'] = 'format', |
||
['ID'] = {'id', 'ID', 'utgiverid'}, |
['ID'] = {'id', 'ID', 'utgiverid'}, |
||
[' |
['Inset'] = {'innfelt', 'inset'}, |
||
[' |
['Issue'] = {'hefte', 'nummer', 'issue', 'number'}, |
||
[' |
['Language'] = {'språk', 'language', 'lang'}, |
||
[' |
['LayDate'] = 'lay-date', |
||
[' |
['LayFormat'] = 'lay-format', |
||
[' |
['LaySource'] = 'lay-source', |
||
[' |
['LayURL'] = 'lay-url', |
||
['MailingList'] = {'epostliste', 'e-post-liste', 'e-postliste', 'mailing-list', 'mailinglist'}, -- cite mailing list only |
|||
['LayDate'] = 'sammendragdato', |
|||
['Map'] = 'map', -- cite map only |
|||
['LayFormat'] = 'sammendragsformat', |
|||
['MapFormat'] = {'kartformat', 'map-format'}, -- cite map only |
|||
['LaySource'] = {'sammendragkilde', 'sammendragskilde'}, |
|||
[' |
['MapURL'] = {'map-url', 'mapurl'}, -- cite map only -- Used by InternetArchiveBot |
||
[' |
['MapUrlAccess'] = 'map-url-access', -- cite map only -- Used by InternetArchiveBot |
||
['Minutes'] = {'minutter', 'abstrakt', 'minutes'}, |
|||
['Map'] = 'kart', -- cite map only |
|||
['Mode'] = {'modus', 'mode'}, |
|||
['MapFormat'] = 'kart-format', -- cite map only |
|||
['NameListStyle'] = 'name-list-style', |
|||
['MapURL'] = {'karturl', 'kart-url'}, -- cite map only |
|||
[' |
['Network'] = {'nettverk', 'network'}, |
||
['Newsgroup'] = 'newsgroup', -- cite newsgroup only |
|||
['Minutes'] = {'minutter', 'abstrakt'}, |
|||
['Mode'] = 'modus', |
|||
['Month'] = 'måned', |
|||
['NameListFormat'] = 'navnelisteformat', |
|||
['NameSeparator'] = {'navneskilletegn', 'navneseparator'}, |
|||
['Network'] = 'nettverk', |
|||
['NoPP'] = {'no-pp', 'nopp'}, |
['NoPP'] = {'no-pp', 'nopp'}, |
||
['NoTracking'] = { |
['NoTracking'] = {'maldokumentasjonsdemo', 'nocat', 'ingensporing', 'ingen-sporing', 'no-tracking', 'template-doc-demo'}, |
||
['Number'] = 'nummer', -- this case only for cite techreport |
['Number'] = {'nummer', 'number'}, -- this case only for cite techreport |
||
[' |
['OrigDate'] = {'opprinnelsesdato', 'opprinnelsesår', 'orig-date', 'orig-year', 'origyear'}, |
||
['Others'] = 'andre', |
['Others'] = {'andre', 'others'}, |
||
['Page'] = {' |
['Page'] = {'side', 's', 'page', 'p'}, -- Used by InternetArchiveBot |
||
['Pages'] = {' |
['Pages'] = {'sider', 'pages', 'pp'}, -- Used by InternetArchiveBot |
||
['Periodical'] = {'publikasjon', 'avis', 'magasin', ' |
['Periodical'] = {'publikasjon', 'avis', 'magasin', 'verk', 'nettside', 'periodisk', 'ordbok', 'journal', 'magazine', 'newspaper', 'periodical', 'website', 'work'}, |
||
['Place'] = {'sted', 'lokasjon'}, |
['Place'] = {'sted', 'lokasjon', 'place', 'location'}, |
||
['PostScript'] = 'postscript', |
['PostScript'] = 'postscript', |
||
['PublicationDate'] = {'utgivelsesdato', 'utgivelses-dato', 'publication-date', 'publicationdate'}, |
|||
['PPPrefix'] = 'SSPrefiks', |
|||
['PublicationPlace'] = {'utgivelsessted', 'utgivelses-sted' , 'publication-place', 'publicationplace'}, |
|||
['PPrefix'] = 'SPrefiks', |
|||
['PublisherName'] = {'forlag', 'utgiver', 'institusjon', 'skole', 'publisher', 'institution'}, |
|||
['Program'] = 'program', -- kilde intervju |
|||
[' |
['Quote'] = {'sitat', 'sitering', 'quote', 'quotation'}, |
||
['QuotePage'] = 'quote-page', |
|||
['PublicationPlace'] = {'utgivelses-sted', 'utgivelsessted' }, |
|||
['QuotePages'] = 'quote-pages', |
|||
['PublisherName'] = {'forlag', 'utgiver', 'institusjon', 'skole', 'publisher'}, |
|||
[' |
['Ref'] = 'ref', |
||
[' |
['Scale'] = 'scale', |
||
['ScriptChapter'] = {'script-chapter', 'script-contribution', 'script-entry', |
|||
['RegistrationRequired'] = 'registrering', |
|||
'script-article', 'script-section'}, |
|||
['Scale'] = 'skala', |
|||
[' |
['ScriptMap'] = 'script-map', |
||
[' |
['ScriptPeriodical'] = {'script-journal', 'script-magazine', 'script-newspaper', |
||
'script-periodical', 'script-website', 'script-work'}, |
|||
['Season'] = 'sesong', |
|||
[' |
['ScriptQuote'] = 'script-quote', |
||
[' |
['ScriptTitle'] = 'script-title', -- Used by InternetArchiveBot |
||
[' |
['Season'] = 'season', |
||
[' |
['Sections'] = {'seksjon', 'avsnitt', 'sections'}, -- cite map only |
||
[' |
['Series'] = {'series', 'version'}, |
||
[' |
['SeriesLink'] = {'seksjoner', 'series-link', 'serieslink'}, |
||
[' |
['SeriesNumber'] = {'serienummer', 'serienr', 'series-number', 'series-no'}, |
||
['Sheet'] = 'sheet', -- cite map only |
['Sheet'] = 'sheet', -- cite map only |
||
['Sheets'] = 'sheets', -- cite map only |
['Sheets'] = 'sheets', -- cite map only |
||
['Station'] = 'stasjon', |
['Station'] = {'stasjon', 'station'}, |
||
[' |
['Time'] = {'tidspunkt', 'time'}, |
||
[' |
['TimeCaption'] = 'time-caption', |
||
['Title'] = {'tittel', 'title'}, -- Used by InternetArchiveBot |
|||
['TimeCaption'] = 'tidstekst', |
|||
['TitleLink'] = {'tittellenke', 'episodelenke', 'title-link', 'episode-link', 'episodelink'}, -- Used by InternetArchiveBot |
|||
['Title'] = {'tittel', 'title'}, |
|||
[' |
['TitleNote'] = {'avdeling', 'department'}, |
||
['TitleNote'] = 'avdeling', |
|||
['TitleType'] = {'type', 'medium', 'media'}, |
['TitleType'] = {'type', 'medium', 'media'}, |
||
['TransChapter'] = {' |
['TransChapter'] = {'trans-article', 'trans-chapter', 'trans-contribution', |
||
'trans-entry', 'trans-section'}, |
|||
['Transcript'] = 'transkripsjon', |
|||
['Transcript'] = {'transkripsjon', 'transcript'}, |
|||
['TranscriptFormat'] = 'transkripsjonsformat', |
|||
[' |
['TranscriptFormat'] = {'transkripsjonsformat', 'transcript-format'}, |
||
['TranscriptURL'] = {'transkripsjon-url', 'transkripsjonsurl', 'transcript-url', 'transcripturl'}, -- Used by InternetArchiveBot |
|||
['TransMap'] = 'trans-map', -- cite map only |
['TransMap'] = 'trans-map', -- cite map only |
||
[' |
['TransPeriodical'] = {'trans-journal', 'trans-magazine', 'trans-newspaper', |
||
'trans-periodical', 'trans-website', 'trans-work'}, |
|||
['URL'] = {'url', 'URL'}, |
|||
[' |
['TransQuote'] = 'trans-quote', |
||
['TransTitle'] = {'oversatt-tittel', 'overs-tittel', 'overs_tittel', 'trans-title'}, -- Used by InternetArchiveBot |
|||
['URL'] = {'url', 'URL'}, -- Used by InternetArchiveBot |
|||
['UrlAccess'] = {'url-tilgang', 'url-access'}, -- Used by InternetArchiveBot |
|||
['UrlStatus'] = 'url-status', -- Used by InternetArchiveBot |
|||
['Vauthors'] = 'vauthors', |
['Vauthors'] = 'vauthors', |
||
['Veditors'] = 'veditors', |
['Veditors'] = 'veditors', |
||
['Via'] = 'via', |
['Via'] = 'via', |
||
[' |
['Volume'] = {'bind', 'årgang', 'volum', 'volume'}, |
||
[' |
['Year'] = {'år', 'utgivelsesår', 'year'}, |
||
['Year'] = {'år', 'utgivelsesår'}, |
|||
['AuthorList-First'] = {"forfatter#-fornavn", "forfatter-fornavn#", "fornavn#", "first#", "author-first#", "author#-first", "given#", |
|||
"author-given#", "author#-given"}, |
|||
['AuthorList-Last'] = {"forfatter#-etternavn", "forfatter-etternavn#", "etternavn#", "forfatter#", "last#", "author-last#", "author#-last", "surname#", |
|||
"author-surname#", "author#-surname", "author#", "subject#", 'host#'}, |
|||
['AuthorList-Link'] = {"forfatter#-lenke", "forfatter-lenke#", "forfatter#lenke", "forfatterlenke#", "author-link#", "author#-link", "subject-link#", |
|||
"subject#-link", "authorlink#", "author#link"}, |
|||
['AuthorList-Mask'] = {"forfatter#-maske", "forfatter-maske#", "forfatter#maske", "forfattermaske#", "author-mask#", "author#-mask", "subject-mask#", "subject#-mask"}, |
|||
[' |
['ContributorList-First'] = {'bidragsyter-fornavn#', 'contributor-first#', 'contributor#-first', |
||
'contributor-given#', 'contributor#-given'}, |
|||
['AuthorList-Last'] = {"forfatter#-etternavn", "forfatter-etternavn#", "etternavn#", "forfatter#", "last#"}, |
|||
['ContributorList-Last'] = {'bidragsyter#', 'bidragsyter-etternavn#', 'bidragsyter#-etternavn', 'contributor-last#', 'contributor#-last', |
|||
['AuthorList-Link'] = {"forfatter#-lenke", "forfatter-lenke#", "forfatter#lenke", "forfatterlenke#"}, |
|||
'contributor-surname#', 'contributor#-surname', 'contributor#'}, |
|||
['AuthorList-Mask'] = {"forfatter#-maske", "forfatter-maske#", "forfatter#maske", "forfattermaske#"}, |
|||
['ContributorList-Link'] = {'bidragsyter-lenke#', 'bidragsyter#-lenke', 'contributor-link#', 'contributor#-link'}, |
|||
['ContributorList-Mask'] = {'bidragsyter-maske#', 'bidragsyter#-maske', 'contributor-mask#', 'contributor#-mask'}, |
|||
['EditorList-First'] = {"redaktør#-fornavn", "redaktør-fornavn#", "redaktørfornavn#", "redaktør#fornavn", "editor-first#", "editor#-first", "editor-given#", "editor#-given"}, |
|||
['ContributorList-First'] = {'bidragsyter-fornavn#', 'contributor#-fornavn'}, |
|||
['EditorList-Last'] = {"redaktør#-etternavn", "redaktør-etternavn#", "redaktøretternavn#", "redaktør#", "redaktører#", "editor-last#", "editor#-last", "editor-surname#", |
|||
['ContributorList-Last'] = {'bidragsyter#', 'bidragsyter-etternavn#', 'bidragsyter#-etternavn'}, |
|||
"editor#-surname", "editor#"}, |
|||
['ContributorList-Link'] = {'bidragsyter-lenke#', 'bidragsyter#-lenke'}, |
|||
['EditorList-Link'] = {"redaktør#-lenke", "redaktør-lenke#", "redaktør#lenke", "redaktørlenke#", "editor-link#", "editor#-link"}, |
|||
['ContributorList-Mask'] = {'bidragsyter-maske#', 'bidragsyter#-maske'}, |
|||
['EditorList-Mask'] = {"redaktør#-maske", "redaktør-maske#", "redaktør#maske", "redaktørmaske#", "editor-mask#", "editor#-mask"}, |
|||
['InterviewerList-First'] = {'intervjuer-fornavn#', 'intervjuer#-fornavn', 'interviewer-first#', 'interviewer#-first', |
|||
'interviewer-given#', 'interviewer#-given'}, |
|||
['InterviewerList-Last'] = {'intervjuer#', 'intervjuer-etternavn#', 'intervjuer#-etternavn', 'interviewer-last#', 'interviewer#-last', |
|||
'interviewer-surname#', 'interviewer#-surname', 'interviewer#'}, |
|||
['InterviewerList-Link'] = {'intervjuer-lenke#', 'intervjuer#-lenke', 'interviewer-link#', 'interviewer#-link'}, |
|||
['InterviewerList-Mask'] = {'intervjuer-maske#', 'intervjuer#-maske', 'interviewer-mask#', 'interviewer#-mask'}, |
|||
[' |
['TranslatorList-First'] = {'intervjuer-maske#', 'intervjuer#-maske', 'translator-first#', 'translator#-first', |
||
'translator-given#', 'translator#-given'}, |
|||
['EditorList-Last'] = {"redaktør#-etternavn", "redaktør-etternavn#", "redaktøretternavn#", "redaktør#", "redaktører#"}, |
|||
['TranslatorList-Last'] = {'oversetter#', 'oversetter-etternavn#', 'oversetter#-etternavn', 'translator-last#', 'translator#-last', |
|||
['EditorList-Link'] = {"redaktør#-lenke", "redaktør-lenke#", "redaktør#lenke", "redaktørlenke#"}, |
|||
'translator-surname#', 'translator#-surname', 'translator#'}, |
|||
['EditorList-Mask'] = {"redaktør#-maske", "redaktør-maske#", "redaktør#maske", "redaktørmaske#"}, |
|||
['TranslatorList-Link'] = {'oversetter-lenke#', 'oversetter#-lenke', 'translator-link#', 'translator#-link'}, |
|||
['TranslatorList-Mask'] = {'oversetter-maske#', 'oversetter#-maske', 'translator-mask#', 'translator#-mask'}, |
|||
} |
|||
['InterviewerList-First'] = {'intervjuer-fornavn#', 'intervjuer#-fornavn'}, |
|||
['InterviewerList-Last'] = {'intervjuer#', 'intervjuer-etternavn#', 'intervjuer#-etternavn'}, |
|||
['InterviewerList-Link'] = {'intervjuer-lenke#', 'intervjuer#-lenke'}, |
|||
['InterviewerList-Mask'] = {'intervjuer-maske#', 'intervjuer#-maske'}, |
|||
--[[--------------------------< P U N C T _ S K I P >--------------------------- |
|||
['TranslatorList-First'] = {'oversetter-fornavn#', 'oversetter#-fornavn'}, |
|||
['TranslatorList-Last'] = {'oversetter#', 'oversetter-etternavn#', 'oversetter#-etternavn'}, |
|||
['TranslatorList-Link'] = {'oversetter-lenke#', 'oversetter#-lenke'}, |
|||
['TranslatorList-Mask'] = {'oversetter-maske#', 'oversetter#-maske'}, |
|||
builds a table of parameter names that the extraneous terminal punctuation check should not check. |
|||
} |
|||
]] |
|||
--[[--------------------------< S P E C I A L C A S E T R A N S L A T I O N S >---------------------------- |
|||
local punct_meta_params = { -- table of aliases[] keys (meta parameters); each key has a table of parameter names for a value |
|||
This table is primarily here to support internationalization. Translations in this table are used, for example, |
|||
'BookTitle', 'Chapter', 'ScriptChapter', 'ScriptTitle', 'Title', 'TransChapter', 'Transcript', 'TransMap', 'TransTitle', -- title-holding parameters |
|||
when an error message, category name, etc is extracted from the English alias key. There may be other cases where |
|||
'AuthorList-Mask', 'ContributorList-Mask', 'EditorList-Mask', 'InterviewerList-Mask', 'TranslatorList-Mask', -- name-list mask may have name separators |
|||
'PostScript', 'Quote', 'ScriptQuote', 'TransQuote', 'Ref', -- miscellaneous |
|||
'ArchiveURL', 'ChapterURL', 'ConferenceURL', 'LayURL', 'MapURL', 'TranscriptURL', 'URL', -- URL-holding parameters |
|||
} |
|||
local url_meta_params = { -- table of aliases[] keys (meta parameters); each key has a table of parameter names for a value |
|||
'ArchiveURL', 'ChapterURL', 'ConferenceURL', 'ID', 'LayURL', 'MapURL', 'TranscriptURL', 'URL', -- parameters allowed to hold urls |
|||
'Page', 'Pages', 'At', 'QuotePage', 'QuotePages', -- insource locators allowed to hold urls |
|||
} |
|||
local function build_skip_table (skip_t, meta_params) |
|||
for _, meta_param in ipairs (meta_params) do -- for each meta parameter key |
|||
local params = aliases[meta_param]; -- get the parameter or the table of parameters associated with the meta parameter name |
|||
if 'string' == type (params) then |
|||
skip_t[params] = 1; -- just a single parameter |
|||
else |
|||
for _, param in ipairs (params) do -- get the parameter name |
|||
skip_t[param] = 1; -- add the parameter name to the skip table |
|||
local count; |
|||
param, count = param:gsub ('#', ''); -- remove enumerator marker from enumerated parameters |
|||
if 0 ~= count then -- if removed |
|||
skip_t[param] = 1; -- add param name without enumerator marker |
|||
end |
|||
end |
|||
end |
|||
end |
|||
return skip_t; |
|||
end |
|||
local punct_skip = {}; |
|||
local url_skip = {}; |
|||
--[[-----------< S P E C I A L C A S E T R A N S L A T I O N S >------------ |
|||
This table is primarily here to support internationalization. Translations in |
|||
this table are used, for example, when an error message, category name, etc., |
|||
is extracted from the English alias key. There may be other cases where |
|||
this translation table may be useful. |
this translation table may be useful. |
||
]] |
]] |
||
local is_Latn = 'A-Za-z\195\128-\195\150\195\152-\195\182\195\184-\198\191\199\132-\201\143'; |
|||
local special_case_translation = { |
local special_case_translation = { |
||
['AuthorList'] = |
['AuthorList'] = 'authors list', -- used to assemble maintenance category names |
||
['ContributorList'] = 'contributors list', -- translation of these names plus translation of the base mainenance category names in maint_cats{} table below |
|||
['ContributorList'] = "bidragsyterliste", |
|||
['EditorList'] = |
['EditorList'] = 'editors list', -- must match the names of the actual categories |
||
['InterviewerList'] = 'interviewers list', -- this group or translations used by name_has_ed_markup() and name_has_mult_names() |
|||
['InterviewerList'] = "intervjuerliste", |
|||
['TranslatorList'] = |
['TranslatorList'] = 'translators list', |
||
-- Lua patterns to match pseudo-titles used by InternetArchiveBot and others as placeholder for unknown |title= value |
|||
['authors'] = "forfattere", -- used in get_display_authors_editors() |
|||
['archived_copy'] = { -- used with CS1 maint: Archive[d] copy as title |
|||
['editors'] = "redaktører", |
|||
['en'] = '^archived?%s+copy$', -- for English; translators: keep this because templates imported from en.wiki |
|||
['local'] = nil, -- translators: replace ['local'] = nil with lowercase translation only when bots or tools create generic titles in your language |
|||
}, |
|||
-- Lua patterns to match generic titles; usually created by bots or reference filling tools |
|||
-- translators: replace ['local'] = nil with lowercase translation only when bots or tools create generic titles in your language |
|||
-- generic titles and patterns in this table should be lowercase only |
|||
-- leave ['local'] nil except when there is a matching generic title in your language |
|||
-- boolean 'true' for plain-text searches; 'false' for pattern searches |
|||
['generic_titles'] = { |
|||
['accept'] = { |
|||
}, |
|||
['reject'] = { |
|||
{['en'] = {'^wayback%s+machine$', false}, ['local'] = nil}, |
|||
{['en'] = {'are you a robot', true}, ['local'] = nil}, |
|||
{['en'] = {'hugedomains.com', true}, ['local'] = nil}, |
|||
{['en'] = {'^[%(%[{<]?no +title[>}%]%)]?$', false}, ['local'] = nil}, |
|||
{['en'] = {'page not found', true}, ['local'] = nil}, |
|||
{['en'] = {'subscribe to read', true}, ['local'] = nil}, |
|||
{['en'] = {'^[%(%[{<]?unknown[>}%]%)]?$', false}, ['local'] = nil}, |
|||
{['en'] = {'website is for sale', true}, ['local'] = nil}, |
|||
{['en'] = {'^404', false}, ['local'] = nil}, |
|||
{['en'] = {'internet archive wayback machine', true}, ['local'] = nil}, |
|||
{['en'] = {'log into facebook', true}, ['local'] = nil}, |
|||
{['en'] = {'login • instagram', true}, ['local'] = nil}, |
|||
{['en'] = {'redirecting...', true}, ['local'] = nil}, |
|||
{['en'] = {'usurped title', true}, ['local'] = nil}, -- added by a GreenC bot |
|||
{['en'] = {'webcite query result', true}, ['local'] = nil}, |
|||
{['en'] = {'wikiwix\'s cache', true}, ['local'] = nil}, |
|||
} |
|||
}, |
|||
-- boolean 'true' for plain-text searches, search string must be lowercase only |
|||
-- boolean 'false' for pattern searches |
|||
-- leave ['local'] nil except when there is a matching generic name in your language |
|||
['generic_names'] = { |
|||
['accept'] = { |
|||
{['en'] = {'%[%[[^|]*%(author%) *|[^%]]*%]%]', false}, ['local'] = nil}, |
|||
}, |
|||
['reject'] = { |
|||
{['en'] = {'about us', true}, ['local'] = nil}, |
|||
{['en'] = {'%f[%a][Aa]dvisor%f[%A]', false}, ['local'] = nil}, |
|||
{['en'] = {'%f[%a][Aa]uthor%f[%A]', false}, ['local'] = nil}, |
|||
{['en'] = {'collaborator', true}, ['local'] = nil}, |
|||
{['en'] = {'contributor', true}, ['local'] = nil}, |
|||
{['en'] = {'contact us', true}, ['local'] = nil}, |
|||
{['en'] = {'directory', true}, ['local'] = nil}, |
|||
{['en'] = {'%f[%(%[][%(%[]%s*eds?%.?%s*[%)%]]?$', false}, ['local'] = nil}, |
|||
{['en'] = {'[,%.%s]%f[e]eds?%.?$', false}, ['local'] = nil}, |
|||
{['en'] = {'^eds?[%.,;]', false}, ['local'] = nil}, |
|||
{['en'] = {'^[%(%[]%s*[Ee][Dd][Ss]?%.?%s*[%)%]]', false}, ['local'] = nil}, |
|||
{['en'] = {'%f[%a][Ee]dited%f[%A]', false}, ['local'] = nil}, |
|||
{['en'] = {'%f[%a][Ee]ditors?%f[%A]', false}, ['local'] = nil}, |
|||
{['en'] = {'%f[%a]]Ee]mail%f[%A]', false}, ['local'] = nil}, |
|||
{['en'] = {'facebook', true}, ['local'] = nil}, |
|||
{['en'] = {'google', true}, ['local'] = nil}, |
|||
{['en'] = {'home page', true}, ['local'] = nil}, |
|||
{['en'] = {'instagram', true}, ['local'] = nil}, |
|||
{['en'] = {'interviewer', true}, ['local'] = nil}, |
|||
{['en'] = {'linkedIn', true}, ['local'] = nil}, |
|||
{['en'] = {'^[Nn]ews$', false}, ['local'] = nil}, |
|||
{['en'] = {'pinterest', true}, ['local'] = nil}, |
|||
{['en'] = {'policy', true}, ['local'] = nil}, |
|||
{['en'] = {'privacy', true}, ['local'] = nil}, |
|||
{['en'] = {'translator', true}, ['local'] = nil}, |
|||
{['en'] = {'tumblr', true}, ['local'] = nil}, |
|||
{['en'] = {'twitter', true}, ['local'] = nil}, |
|||
{['en'] = {'site name', true}, ['local'] = nil}, |
|||
{['en'] = {'statement', true}, ['local'] = nil}, |
|||
{['en'] = {'submitted', true}, ['local'] = nil}, |
|||
{['en'] = {'super.?user', false}, ['local'] = nil}, |
|||
{['en'] = {'%f['..is_Latn..'][Uu]ser%f[^'..is_Latn..']', false}, ['local'] = nil}, |
|||
{['en'] = {'verfasser', true}, ['local'] = nil}, |
|||
} |
|||
} |
|||
} |
} |
||
--[[--------------------------< D E F A U L T S >-------------------------------------------------------------- |
|||
--[[--------------------------< D A T E _ N A M E S >---------------------------------------------------------- |
|||
Default parameter values |
|||
This table of tables lists local language date names and fallback English date names. |
|||
The code in Date_validation will look first in the local table for valid date names. |
|||
If date names are not found in the local table, the code will look in the English table. |
|||
Because citations can be copied to the local wiki from en.wiki, the English is |
|||
required when the date-name translation function date_name_xlate() is used. |
|||
In these tables, season numbering is defined by |
|||
Extended Date/Time Format (EDTF) Specification (https://www.loc.gov/standards/datetime/) |
|||
which became part of ISO 8601 in 2019. See '§Sub-year groupings'. The standard |
|||
defines various divisions using numbers 21-41. CS1|2 only supports generic seasons. |
|||
EDTF does support the distinction between north and south hemisphere seasons |
|||
but CS1|2 has no way to make that distinction. |
|||
33-36 = Quarter 1, Quarter 2, Quarter 3, Quarter 4 (3 months each) |
|||
The standard does not address 'named' dates so, for the purposes of CS1|2, |
|||
Easter and Christmas are defined here as 98 and 99, which should be out of the |
|||
ISO 8601 (EDTF) range of uses for a while. |
|||
local_date_names_from_mediawiki is a boolean. When set to: |
|||
true – module will fetch local month names from MediaWiki for both date_names['local']['long'] and date_names['local']['short'] |
|||
false – module will *not* fetch local month names from MediaWiki |
|||
Caveat lector: There is no guarantee that MediaWiki will provide short month names. At your wiki you can test |
|||
the results of the MediaWiki fetch in the debug console with this command (the result is alpha sorted): |
|||
=mw.dumpObject (p.date_names['local']) |
|||
While the module can fetch month names from MediaWiki, it cannot fetch the quarter, season, and named date names |
|||
from MediaWiki. Those must be translated manually. |
|||
TODO: keep this? Only one default? |
|||
]] |
]] |
||
local local_date_names_from_mediawiki = true; -- when false, manual translation required for date_names['local']['long'] and date_names['local']['short'] |
|||
local defaults = { |
|||
-- when true, module fetches long and short month names from MediaWiki |
|||
['DeadURL'] = 'yes', |
|||
local date_names = { |
|||
} |
|||
['en'] = { -- English |
|||
['long'] = {['January'] = 1, ['February'] = 2, ['March'] = 3, ['April'] = 4, ['May'] = 5, ['June'] = 6, ['July'] = 7, ['August'] = 8, ['September'] = 9, ['October'] = 10, ['November'] = 11, ['December'] = 12}, |
|||
['short'] = {['Jan'] = 1, ['Feb'] = 2, ['Mar'] = 3, ['Apr'] = 4, ['May'] = 5, ['Jun'] = 6, ['Jul'] = 7, ['Aug'] = 8, ['Sep'] = 9, ['Oct'] = 10, ['Nov'] = 11, ['Dec'] = 12}, |
|||
['quarter'] = {['First Quarter'] = 33, ['Second Quarter'] = 34, ['Third Quarter'] = 35, ['Fourth Quarter'] = 36}, |
|||
['season'] = {['Winter'] = 24, ['Spring'] = 21, ['Summer'] = 22, ['Fall'] = 23, ['Autumn'] = 23}, |
|||
['named'] = {['Easter'] = 98, ['Christmas'] = 99}, |
|||
}, |
|||
-- when local_date_names_from_mediawiki = false |
|||
['local'] = { -- replace these English date names with the local language equivalents |
|||
['long'] = {['January'] = 1, ['February'] = 2, ['March'] = 3, ['April'] = 4, ['May'] = 5, ['June'] = 6, ['July'] = 7, ['August'] = 8, ['September'] = 9, ['October'] = 10, ['November'] = 11, ['December'] = 12}, |
|||
['short'] = {['Jan'] = 1, ['Feb'] = 2, ['Mar'] = 3, ['Apr'] = 4, ['May'] = 5, ['Jun'] = 6, ['Jul'] = 7, ['Aug'] = 8, ['Sep'] = 9, ['Oct'] = 10, ['Nov'] = 11, ['Dec'] = 12}, |
|||
['quarter'] = {['First Quarter'] = 33, ['Second Quarter'] = 34, ['Third Quarter'] = 35, ['Fourth Quarter'] = 36}, |
|||
['season'] = {['Winter'] = 24, ['Spring'] = 21, ['Summer'] = 22, ['Fall'] = 23, ['Autumn'] = 23}, |
|||
['named'] = {['Easter'] = 98, ['Christmas'] = 99}, |
|||
}, |
|||
['inv_local_long'] = {}, -- used in date reformatting & translation; copy of date_names['local'].long where k/v are inverted: [1]='<local name>' etc. |
|||
['inv_local_short'] = {}, -- used in date reformatting & translation; copy of date_names['local'].short where k/v are inverted: [1]='<local name>' etc. |
|||
['inv_local_quarter'] = {}, -- used in date translation; copy of date_names['local'].quarter where k/v are inverted: [1]='<local name>' etc. |
|||
['inv_local_season'] = {}, -- used in date translation; copy of date_names['local'].season where k/v are inverted: [1]='<local name>' etc. |
|||
['inv_local_named'] = {}, -- used in date translation; copy of date_names['local'].named where k/v are inverted: [1]='<local name>' etc. |
|||
['local_digits'] = {['0'] = '0', ['1'] = '1', ['2'] = '2', ['3'] = '3', ['4'] = '4', ['5'] = '5', ['6'] = '6', ['7'] = '7', ['8'] = '8', ['9'] = '9'}, -- used to convert local language digits to Western 0-9 |
|||
['xlate_digits'] = {}, |
|||
} |
|||
if local_date_names_from_mediawiki then -- if fetching local month names from MediaWiki is enabled |
|||
local long_t = {}; |
|||
local short_t = {}; |
|||
for i=1, 12 do -- loop 12x and |
|||
local name = lang_obj:formatDate('F', '2022-' .. i .. '-1'); -- get long month name for each i |
|||
long_t[name] = i; -- save it |
|||
name = lang_obj:formatDate('M', '2022-' .. i .. '-1'); -- get short month name for each i |
|||
short_t[name] = i; -- save it |
|||
end |
|||
date_names['local']['long'] = long_t; -- write the long table – overwrites manual translation |
|||
date_names['local']['short'] = short_t; -- write the short table – overwrites manual translation |
|||
end |
|||
-- create inverted date-name tables for reformatting and/or translation |
|||
for _, invert_t in pairs {{'long', 'inv_local_long'}, {'short', 'inv_local_short'}, {'quarter', 'inv_local_quarter'}, {'season', 'inv_local_season'}, {'named', 'inv_local_named'}} do |
|||
for name, i in pairs (date_names['local'][invert_t[1]]) do -- this table is ['name'] = i |
|||
date_names[invert_t[2]][i] = name; -- invert to get [i] = 'name' for conversions from ymd |
|||
end |
|||
end |
|||
for ld, ed in pairs (date_names.local_digits) do -- make a digit translation table for simple date translation from en to local language using local_digits table |
|||
--[[--------------------------< V O L U M E , I S S U E , P A G E S >---------------------------------------- |
|||
date_names.xlate_digits [ed] = ld; -- en digit becomes index with local digit as the value |
|||
end |
|||
local df_template_patterns = { -- table of redirects to {{Use dmy dates}} and {{Use mdy dates}} |
|||
'{{ *[Uu]se +(dmy) +dates *[|}]', -- 1159k -- sorted by approximate transclusion count |
|||
'{{ *[Uu]se +(mdy) +dates *[|}]', -- 212k |
|||
'{{ *[Uu]se +(MDY) +dates *[|}]', -- 788 |
|||
'{{ *[Uu]se +(DMY) +dates *[|}]', -- 343 |
|||
'{{ *([Mm]dy) *[|}]', -- 176 |
|||
'{{ *[Uu]se *(dmy) *[|}]', -- 156 + 18 |
|||
'{{ *[Uu]se *(mdy) *[|}]', -- 149 + 11 |
|||
'{{ *([Dd]my) *[|}]', -- 56 |
|||
'{{ *[Uu]se +(MDY) *[|}]', -- 5 |
|||
'{{ *([Dd]MY) *[|}]', -- 3 |
|||
'{{ *[Uu]se(mdy)dates *[|}]', -- 1 |
|||
'{{ *[Uu]se +(DMY) *[|}]', -- 0 |
|||
'{{ *([Mm]DY) *[|}]', -- 0 |
|||
} |
|||
local function get_date_format () |
|||
local title_object = mw.title.getCurrentTitle(); |
|||
if title_object.namespace == 10 then -- not in template space so that unused templates appear in unused-template-reports; |
|||
return nil; -- auto-formatting does not work in Template space so don't set global_df |
|||
end |
|||
local content = title_object:getContent() or ''; -- get the content of the article or ''; new pages edited w/ve do not have 'content' until saved; ve does not preview; phab:T221625 |
|||
for _, pattern in ipairs (df_template_patterns) do -- loop through the patterns looking for {{Use dmy dates}} or {{Use mdy dates}} or any of their redirects |
|||
local start, _, match = content:find(pattern); -- match is the three letters indicating desired date format |
|||
if match then |
|||
content = content:match ('%b{}', start); -- get the whole template |
|||
if content:match ('| *cs1%-dates *= *[lsy][sy]?') then -- look for |cs1-dates=publication date length access-/archive-date length |
|||
return match:lower() .. '-' .. content:match ('| *cs1%-dates *= *([lsy][sy]?)'); |
|||
else |
|||
return match:lower() .. '-all'; -- no |cs1-dates= k/v pair; return value appropriate for use in |df= |
|||
end |
|||
end |
|||
end |
|||
end |
|||
local global_df; |
|||
--[[-----------------< V O L U M E , I S S U E , P A G E S >------------------ |
|||
These tables hold cite class values (from the template invocation) and identify those templates that support |
These tables hold cite class values (from the template invocation) and identify those templates that support |
||
Linje 358: | Linje 644: | ||
local templates_using_volume = {'citation', 'audio-visual', 'book', 'conference', 'encyclopaedia', 'interview', 'journal', 'magazine', 'map', 'news', 'report', 'techreport', 'thesis'} |
local templates_using_volume = {'citation', 'audio-visual', 'book', 'conference', 'encyclopaedia', 'interview', 'journal', 'magazine', 'map', 'news', 'report', 'techreport', 'thesis'} |
||
local templates_using_issue = {'citation', 'conference', 'episode', 'interview', 'journal', 'magazine', 'map', 'news'} |
local templates_using_issue = {'citation', 'conference', 'episode', 'interview', 'journal', 'magazine', 'map', 'news', 'podcast'} |
||
local templates_not_using_page = {'audio-visual', 'episode', 'mailinglist', 'newsgroup', 'podcast', 'serial', 'sign', 'speech'} |
local templates_not_using_page = {'audio-visual', 'episode', 'mailinglist', 'newsgroup', 'podcast', 'serial', 'sign', 'speech'} |
||
--[[ |
|||
These tables control when it is appropriate for {{citation}} to render |volume= and/or |issue=. The parameter |
|||
names in the tables constrain {{citation}} so that its renderings match the renderings of the equivalent cs1 |
|||
templates. For example, {{cite web}} does not support |volume= so the equivalent {{citation |website=...}} must |
|||
not support |volume=. |
|||
]] |
|||
--[[--------------------------< K E Y W O R D S >-------------------------------------------------------------- |
|||
local citation_no_volume_t = { -- {{citation}} does not render |volume= when these parameters are used |
|||
'website', 'mailinglist', 'script-website', |
|||
} |
|||
local citation_issue_t = { -- {{citation}} may render |issue= when these parameters are used |
|||
'journal', 'magazine', 'newspaper', 'periodical', 'work', |
|||
'script-journal', 'script-magazine', 'script-newspaper', 'script-periodical', 'script-work', |
|||
} |
|||
--[[ |
|||
Patterns for finding extra text in |volume=, |issue=, |page=, |pages= |
|||
This table holds keywords for those parameters that have defined sets of acceptible keywords. |
|||
]] |
|||
local vol_iss_pg_patterns = { |
|||
good_ppattern = '^P[^%.PpGg]', -- OK to begin with uppercase P: P7 (page 7 of section P), but not p123 (page 123); TODO: this allows 'Pages' which it should not |
|||
bad_ppatterns = { -- patterns for |page= and |pages= |
|||
'^[Pp][PpGg]?%.?[ %d]', |
|||
'^[Pp][Pp]?%. ', -- from {{p.}} and {{pp.}} templates |
|||
'^[Pp]ages?', |
|||
'^[Pp]gs.?', |
|||
}, |
|||
vpatterns = { -- patterns for |volume= |
|||
'^volumes?', |
|||
'^vols?[%.:=]?' |
|||
}, |
|||
ipatterns = { -- patterns for |issue= |
|||
'^issues?', |
|||
'^iss[%.:=]?', |
|||
'^numbers?', |
|||
'^nos?%A', -- don't match 'november' or 'nostradamus' |
|||
'^nr[%.:=]?', |
|||
'^n[%.:= ]' -- might be a valid issue without separator (space char is sep char here) |
|||
} |
|||
} |
|||
--[[--------------------------< K E Y W O R D S >------------------------------- |
|||
These tables hold keywords for those parameters that have defined sets of acceptable keywords. |
|||
]] |
|||
--[[-------------------< K E Y W O R D S T A B L E >-------------------------- |
|||
this is a list of keywords; each key in the list is associated with a table of |
|||
synonymous keywords possibly from different languages. |
|||
for I18N: add local-language keywords to value table; do not change the key. |
|||
For example, adding the German keyword 'ja': |
|||
['affirmative'] = {'yes', 'true', 'y', 'ja'}, |
|||
Because CS1|2 templates from en.wiki articles are often copied to other local wikis, |
|||
it is recommended that the English keywords remain in these tables. |
|||
]] |
]] |
||
local keywords = { |
local keywords = { |
||
[' |
['amp'] = {'&', 'amp', 'ampersand'}, -- |name-list-style= |
||
['and'] = {'og', 'and', 'serial'}, -- |name-list-style= |
|||
-- ['deadurl'] = {'yes', 'true', 'y', 'no', 'unfit', 'usurped', 'unfit no archive', 'usurped no archive'}, -- hidden 2016-04-10; see Help_talk:Citation_Style_1#Recycled_urls |
|||
[' |
['affirmative'] = {'ja', 'yes', 'true', 'y'}, -- |no-tracking=, |no-pp= -- Used by InternetArchiveBot |
||
[' |
['afterword'] = {'afterword'}, -- |contribution= |
||
['bot: unknown'] = {'bot: unknown'}, -- |url-status= -- Used by InternetArchiveBot |
|||
['name-list-format'] = {'vanc'}, |
|||
['cs1'] = {'cs1'}, -- |mode= |
|||
['contribution'] = {'afterword', 'foreword', 'introduction', 'preface'}, -- generic contribution titles that are rendered unquoted in the 'chapter' position |
|||
['cs2'] = {'cs2'}, -- |mode= |
|||
['date-format'] = {'dmy', 'dmy-all', 'mdy', 'mdy-all', 'ymd', 'ymd-all'}, |
|||
['dead'] = {'død', 'dead', 'deviated'}, -- |url-status= -- Used by InternetArchiveBot |
|||
['url-access'] = {'abonnement', 'begrenset', 'registrering', 'åpen', 'subscription', 'limited', 'registration'}, -- access level of a URL (subscription required, limited access, free registration required), free to read by default |
|||
['dmy'] = {'dmy'}, -- |df= |
|||
['id-access'] = {'free'}, -- access level of an identifier (free to read), subscription required (or no full text) by default |
|||
['dmy-all'] = {'dmy-all'}, -- |df= |
|||
} |
|||
['foreword'] = {'foreword'}, -- |contribution= |
|||
['free'] = {'gratis', 'åpen', 'free'}, -- |<id>-access= -- Used by InternetArchiveBot |
|||
['harv'] = {'harv'}, -- |ref=; this no longer supported; is_valid_parameter_value() called with <invert> = true |
|||
['introduction'] = {'introduction'}, -- |contribution= |
|||
['limited'] = {'limited'}, -- |url-access= -- Used by InternetArchiveBot |
|||
['live'] = {'live'}, -- |url-status= -- Used by InternetArchiveBot |
|||
['mdy'] = {'mdy'}, -- |df= |
|||
['mdy-all'] = {'mdy-all'}, -- |df= |
|||
['none'] = {'none'}, -- |postscript=, |ref=, |title=, |type= -- Used by InternetArchiveBot |
|||
['off'] = {'off'}, -- |title= (potentially also: |title-link=, |postscript=, |ref=, |type=) |
|||
['preface'] = {'preface'}, -- |contribution= |
|||
['registration'] = {'registrering', 'registration'}, -- |url-access= -- Used by InternetArchiveBot |
|||
['subscription'] = {'abonnement', 'abb', 'subscription'}, -- |url-access= -- Used by InternetArchiveBot |
|||
['unfit'] = {'unfit'}, -- |url-status= -- Used by InternetArchiveBot |
|||
['usurped'] = {'usurped'}, -- |url-status= -- Used by InternetArchiveBot |
|||
['vanc'] = {'vanc'}, -- |name-list-style= |
|||
['ymd'] = {'ymd'}, -- |df= |
|||
['ymd-all'] = {'ymd-all'}, -- |df= |
|||
-- ['yMd'] = {'yMd'}, -- |df=; not supported at en.wiki |
|||
-- ['yMd-all'] = {'yMd-all'}, -- |df=; not supported at en.wiki |
|||
} |
|||
--[[------------------------< X L A T E _ K E Y W O R D S >--------------------- |
|||
this function builds a list, keywords_xlate{}, of the keywords found in keywords{} where the values from keywords{} |
|||
become the keys in keywords_xlate{} and the keys from keywords{} become the values in keywords_xlate{}: |
|||
['affirmative'] = {'yes', 'true', 'y'}, -- in keywords{} |
|||
becomes |
|||
['yes'] = 'affirmative', -- in keywords_xlate{} |
|||
['true'] = 'affirmative', |
|||
['y'] = 'affirmative', |
|||
the purpose of this function is to act as a translator between a non-English keyword and its English equivalent |
|||
that may be used in other modules of this suite |
|||
]] |
|||
local function xlate_keywords () |
|||
local out_table = {}; -- output goes here |
|||
for k, keywords_t in pairs (keywords) do -- spin through the keywords table |
|||
for _, keyword in ipairs (keywords_t) do -- for each keyword |
|||
out_table[keyword] = k; -- create an entry in the output table where keyword is the key |
|||
end |
|||
end |
|||
return out_table; |
|||
end |
|||
local keywords_xlate = xlate_keywords (); -- the list of translated keywords |
|||
--[[----------------< M A K E _ K E Y W O R D S _ L I S T >--------------------- |
|||
this function assembles, for parameter-value validation, the list of keywords appropriate to that parameter. |
|||
keywords_lists{}, is a table of tables from keywords{} |
|||
]] |
|||
local function make_keywords_list (keywords_lists) |
|||
local out_table = {}; -- output goes here |
|||
for _, keyword_list in ipairs (keywords_lists) do -- spin through keywords_lists{} and get a table of keywords |
|||
for _, keyword in ipairs (keyword_list) do -- spin through keyword_list{} and add each keyword, ... |
|||
table.insert (out_table, keyword); -- ... as plain text, to the output list |
|||
end |
|||
end |
|||
return out_table; |
|||
end |
|||
--[[----------------< K E Y W O R D S _ L I S T S >----------------------------- |
|||
this is a list of lists of valid keywords for the various parameters in [key]. |
|||
Generally the keys in this table are the canonical en.wiki parameter names though |
|||
some are contrived because of use in multiple differently named parameters: |
|||
['yes_true_y'], ['id-access']. |
|||
The function make_keywords_list() extracts the individual keywords from the |
|||
appropriate list in keywords{}. |
|||
The lists in this table are used to validate the keyword assignment for the |
|||
parameters named in this table's keys. |
|||
]] |
|||
local keywords_lists = { |
|||
['yes_true_y'] = make_keywords_list ({keywords.affirmative}), |
|||
['contribution'] = make_keywords_list ({keywords.afterword, keywords.foreword, keywords.introduction, keywords.preface}), |
|||
['df'] = make_keywords_list ({keywords.dmy, keywords['dmy-all'], keywords.mdy, keywords['mdy-all'], keywords.ymd, keywords['ymd-all']}), |
|||
-- ['df'] = make_keywords_list ({keywords.dmy, keywords['dmy-all'], keywords.mdy, keywords['mdy-all'], keywords.ymd, keywords['ymd-all'], keywords.yMd, keywords['yMd-all']}), -- not supported at en.wiki |
|||
['mode'] = make_keywords_list ({keywords.cs1, keywords.cs2}), |
|||
['name-list-style'] = make_keywords_list ({keywords.amp, keywords['and'], keywords.vanc}), |
|||
['ref'] = make_keywords_list ({keywords.harv}), -- inverted check; |ref=harv no longer supported |
|||
['url-access'] = make_keywords_list ({keywords.subscription, keywords.limited, keywords.registration}), |
|||
['url-status'] = make_keywords_list ({keywords.dead, keywords.live, keywords.unfit, keywords.usurped, keywords['bot: unknown']}), |
|||
['id-access'] = make_keywords_list ({keywords.free}), |
|||
} |
|||
--[[ |
--[[---------------------< S T R I P M A R K E R S >---------------------------- |
||
Common pattern definition location for stripmarkers so that we don't have to go |
Common pattern definition location for stripmarkers so that we don't have to go |
||
hunting for them if (when) MediaWiki changes their form. |
|||
MediaWiki changes their form. |
|||
]] |
]] |
||
Linje 395: | Linje 837: | ||
--[[ |
--[[------------< I N V I S I B L E _ C H A R A C T E R S >--------------------- |
||
This table holds non-printing or invisible characters indexed either by name or |
This table holds non-printing or invisible characters indexed either by name or |
||
by Unicode group. Values are decimal representations of UTF-8 codes. The table |
|||
is organized as a table of tables because the Lua pairs keyword returns table |
|||
data in an arbitrary order. Here, we want to process the table from top to bottom |
|||
the top of the table are also found in the ranges specified |
because the entries at the top of the table are also found in the ranges specified |
||
by the entries at the bottom of the table. |
|||
Also here is a pattern that recognizes stripmarkers that begin and end with the |
|||
This list contains patterns for templates like {{'}} which isn't an error but transcludes characters that are |
|||
delete characters. The nowiki stripmarker is not an error but some others are |
|||
invisible. These kinds of patterns must be recognized by the functions that use this list. |
|||
because the parameter values that include them become part of the template's |
|||
metadata before stripmarker replacement. |
|||
Also here is a pattern that recognizes stripmarkers that begin and end with the delete characters. The nowiki |
|||
stripmarker is not an error but some others are because the parameter values that include them become part of the |
|||
template's metadata before stripmarker replacement. |
|||
]] |
]] |
||
local invisible_defs = { |
|||
del = '\127', -- used to distinguish between stripmarker and del char |
|||
zwj = '\226\128\141', -- used with capture because zwj may be allowed |
|||
} |
|||
local invisible_chars = { |
local invisible_chars = { |
||
{'replacement', '\239\191\189'}, -- U+FFFD, EF BF BD |
{'replacement', '\239\191\189'}, -- U+FFFD, EF BF BD |
||
{'zero width joiner', ' |
{'zero width joiner', '('.. invisible_defs.zwj .. ')'}, -- U+200D, E2 80 8D; capture because zwj may be allowed |
||
{'zero width space', '\226\128\139'}, -- U+200B, E2 80 8B |
{'zero width space', '\226\128\139'}, -- U+200B, E2 80 8B |
||
{'hair space', '\226\128\138'}, -- U+200A, E2 80 8A |
{'hair space', '\226\128\138'}, -- U+200A, E2 80 8A |
||
{'soft hyphen', '\194\173'}, -- U+00AD, C2 AD |
{'soft hyphen', '\194\173'}, -- U+00AD, C2 AD |
||
{'horizontal tab', '\009'}, -- U+0009 (HT), 09 |
{'horizontal tab', '\009'}, -- U+0009 (HT), 09 |
||
{' |
{'line feed', '\010'}, -- U+000A (LF), 0A |
||
{'no-break space', '\194\160'}, -- U+00A0 (NBSP), C2 A0 |
|||
{'carriage return', '\013'}, -- U+000D (CR), 0D |
{'carriage return', '\013'}, -- U+000D (CR), 0D |
||
{' |
{'stripmarker', stripmarkers.any}, -- stripmarker; may or may not be an error; capture returns the stripmaker type |
||
{'delete', ' |
{'delete', '('.. invisible_defs.del .. ')'}, -- U+007F (DEL), 7F; must be done after stripmarker test; capture to distinguish isolated del chars not part of stripmarker |
||
{'C0 control', '[\000-\008\011\012\014-\031]'}, -- U+0000–U+001F (NULL–US), 00–1F (except HT, LF, CR (09, 0A, 0D)) |
{'C0 control', '[\000-\008\011\012\014-\031]'}, -- U+0000–U+001F (NULL–US), 00–1F (except HT, LF, CR (09, 0A, 0D)) |
||
{'C1 control', '[\194\128-\194\159]'}, -- U+0080–U+009F (XXX–APC), C2 80 – C2 9F |
{'C1 control', '[\194\128-\194\159]'}, -- U+0080–U+009F (XXX–APC), C2 80 – C2 9F |
||
-- {'Specials', '[\239\191\185-\239\191\191]'}, -- U+FFF9-U+FFFF, EF BF B9 – EF BF BF |
-- {'Specials', '[\239\191\185-\239\191\191]'}, -- U+FFF9-U+FFFF, EF BF B9 – EF BF BF |
||
-- {'Private use area', '[\238\128\128-\239\163\191]'}, -- U+E000–U+F8FF, EE 80 80 – EF A3 BF |
-- {'Private use area', '[\238\128\128-\239\163\191]'}, -- U+E000–U+F8FF, EE 80 80 – EF A3 BF |
||
-- {'Supplementary Private Use Area-A', '[\243\176\128\128-\243\191\191\189]'}, -- U+F0000–U+FFFFD, F3 B0 80 80 – F3 BF BF BD |
-- {'Supplementary Private Use Area-A', '[\243\176\128\128-\243\191\191\189]'}, -- U+F0000–U+FFFFD, F3 B0 80 80 – F3 BF BF BD |
||
-- {'Supplementary Private Use Area-B', '[\244\128\128\128-\244\143\191\189]'}, -- U+100000–U+10FFFD, F4 80 80 80 – F4 8F BF BD |
-- {'Supplementary Private Use Area-B', '[\244\128\128\128-\244\143\191\189]'}, -- U+100000–U+10FFFD, F4 80 80 80 – F4 8F BF BD |
||
} |
} |
||
--[[ |
|||
Indic script makes use of zero width joiner as a character modifier so zwj |
|||
--[[--------------------------< L A N G U A G E S >------------------------------------------------------------ |
|||
characters must be left in. This pattern covers all of the unicode characters |
|||
for these languages: |
|||
Devanagari 0900–097F – https://unicode.org/charts/PDF/U0900.pdf |
|||
Devanagari extended A8E0–A8FF – https://unicode.org/charts/PDF/UA8E0.pdf |
|||
Bengali 0980–09FF – https://unicode.org/charts/PDF/U0980.pdf |
|||
Gurmukhi 0A00–0A7F – https://unicode.org/charts/PDF/U0A00.pdf |
|||
Gujarati 0A80–0AFF – https://unicode.org/charts/PDF/U0A80.pdf |
|||
Oriya 0B00–0B7F – https://unicode.org/charts/PDF/U0B00.pdf |
|||
Tamil 0B80–0BFF – https://unicode.org/charts/PDF/U0B80.pdf |
|||
Telugu 0C00–0C7F – https://unicode.org/charts/PDF/U0C00.pdf |
|||
Kannada 0C80–0CFF – https://unicode.org/charts/PDF/U0C80.pdf |
|||
Malayalam 0D00–0D7F – https://unicode.org/charts/PDF/U0D00.pdf |
|||
plus the not-necessarily Indic scripts for Sinhala and Burmese: |
|||
Sinhala 0D80-0DFF - https://unicode.org/charts/PDF/U0D80.pdf |
|||
Myanmar 1000-109F - https://unicode.org/charts/PDF/U1000.pdf |
|||
Myanmar extended A AA60-AA7F - https://unicode.org/charts/PDF/UAA60.pdf |
|||
Myanmar extended B A9E0-A9FF - https://unicode.org/charts/PDF/UA9E0.pdf |
|||
the pattern is used by has_invisible_chars() and coins_cleanup() |
|||
]] |
|||
This table is used to hold ISO 639-1 two-character language codes that apply only to |script-title= and |script-chapter= |
|||
local indic_script = '[\224\164\128-\224\181\191\224\163\160-\224\183\191\225\128\128-\225\130\159\234\167\160-\234\167\191\234\169\160-\234\169\191]'; |
|||
-- list of emoji that use zwj character (U+200D) to combine with another emoji |
|||
local emoji = { -- indexes are decimal forms of the hex values in U+xxxx |
|||
[127752] = true, -- U+1F308 🌈 rainbow |
|||
[127806] = true, -- U+1F33E 🌾 ear of rice |
|||
[127859] = true, -- U+1F373 🍳 cooking |
|||
[127891] = true, -- U+1F393 🎓 graduation cap |
|||
[127908] = true, -- U+1F3A4 🎤 microphone |
|||
[127912] = true, -- U+1F3A8 🎨 artist palette |
|||
[127979] = true, -- U+1F3EB 🏫 school |
|||
[127981] = true, -- U+1F3ED 🏭 factory |
|||
[128102] = true, -- U+1F466 👦 boy |
|||
[128103] = true, -- U+1F467 👧 girl |
|||
[128104] = true, -- U+1F468 👨 man |
|||
[128105] = true, -- U+1F469 👩 woman |
|||
[128139] = true, -- U+1F48B 💋 kiss mark |
|||
[128187] = true, -- U+1F4BB 💻 personal computer |
|||
[128188] = true, -- U+1F4BC 💼 brief case |
|||
[128295] = true, -- U+1F527 🔧 wrench |
|||
[128300] = true, -- U+1F52C 🔬 microscope |
|||
[128488] = true, -- U+1F5E8 🗨 left speech bubble |
|||
[128640] = true, -- U+1F680 🚀 rocket |
|||
[128658] = true, -- U+1F692 🚒 fire engine |
|||
[129309] = true, -- U+1F91D 🤝 handshake |
|||
[129455] = true, -- U+1F9AF 🦯 probing cane |
|||
[129456] = true, -- U+1F9B0 🦰 emoji component red hair |
|||
[129457] = true, -- U+1F9B1 🦱 emoji component curly hair |
|||
[129458] = true, -- U+1F9B2 🦲 emoji component bald |
|||
[129459] = true, -- U+1F9B3 🦳 emoji component white hair |
|||
[129466] = true, -- U+1F9BA 🦺 safety vest |
|||
[129468] = true, -- U+1F9BC 🦼 motorized wheelchair |
|||
[129469] = true, -- U+1F9BD 🦽 manual wheelchair |
|||
[129489] = true, -- U+1F9D1 🧑 adult |
|||
[9760] = true, -- U+2620 ☠ skull and crossbones |
|||
[9792] = true, -- U+2640 ♀ female sign |
|||
[9794] = true, -- U+2642 ♂ male sign |
|||
[9877] = true, -- U+2695 ⚕ staff of aesculapius |
|||
[9878] = true, -- U+2696 ⚖ scales |
|||
[9992] = true, -- U+2708 ✈ airplane |
|||
[10084] = true, -- U+2764 ❤ heavy black heart |
|||
} |
|||
--[[----------------------< L A N G U A G E S U P P O R T >------------------- |
|||
These tables and constants support various language-specific functionality. |
|||
]] |
]] |
||
--local this_wiki_code = mw.getContentLanguage():getCode(); -- get this wiki's language code |
|||
local script_lang_codes = {'am', 'ar', 'be', 'bg', 'bn', 'bs', 'dv', 'el', -- ISO 639-1 codes only for |script-title= and |script-chapter= |
|||
local this_wiki_code = lang_obj:getCode(); -- get this wiki's language code |
|||
'fa', 'he', 'hy', 'ja', 'ka', 'kn', 'ko', 'ku', |
|||
if string.match (mw.site.server, 'wikidata') then |
|||
'mk', 'ml', 'mr', 'my', 'ps', 'ru', 'sd', 'sr', |
|||
this_wiki_code = mw.getCurrentFrame():preprocess('{{int:lang}}'); -- on Wikidata so use interface language setting instead |
|||
'th', 'uk', 'ug', 'ur', 'yi', 'zh'}; |
|||
end |
|||
local mw_languages_by_tag_t = mw.language.fetchLanguageNames (this_wiki_code, 'all'); -- get a table of language tag/name pairs known to Wikimedia; used for interwiki tests |
|||
local mw_languages_by_name_t = {}; |
|||
for k, v in pairs (mw_languages_by_tag_t) do -- build a 'reversed' table name/tag language pairs know to MediaWiki; used for |language= |
|||
v = mw.ustring.lower (v); -- lowercase for tag fetch; get name's proper case from mw_languages_by_tag_t[<tag>] |
|||
if mw_languages_by_name_t[v] then -- when name already in the table |
|||
if 2 == #k or 3 == #k then -- if tag does not have subtags |
|||
mw_languages_by_name_t[v] = k; -- prefer the shortest tag for this name |
|||
end |
|||
else -- here when name not in the table |
|||
mw_languages_by_name_t[v] = k; -- so add name and matching tag |
|||
end |
|||
end |
|||
local inter_wiki_map = {}; -- map of interwiki prefixes that are language-code prefixes |
|||
for k, v in pairs (mw.site.interwikiMap ('local')) do -- spin through the base interwiki map (limited to local) |
|||
if mw_languages_by_tag_t[v["prefix"]] then -- if the prefix matches a known language tag |
|||
inter_wiki_map[v["prefix"]] = true; -- add it to our local map |
|||
end |
|||
end |
|||
--[[ |
--[[--------------------< S C R I P T _ L A N G _ C O D E S >------------------- |
||
This table is used to hold ISO 639-1 two-character and ISO 639-3 three-character |
|||
Here we name maintenance categories to be used in maintenance messages. |
|||
language codes that apply only to |script-title= and |script-chapter= |
|||
]] |
]] |
||
local |
local script_lang_codes = { |
||
'ab', 'am', 'ar', 'be', 'bg', 'bn', 'bo', 'bs', 'dv', 'dz', 'el', 'fa', 'gu', |
|||
['ASIN'] = 'CS1-vedlikehold: ASIN bruker ISBN', |
|||
'he', 'hi', 'hy', 'ja', 'ka', 'kk', 'km', 'kn', 'ko', 'ku', 'ky', 'lo', 'mk', |
|||
['authors'] = 'CS1-vedlikehold: Bruker forfattere-parameteren', |
|||
'ml', 'mn', 'mr', 'my', 'ne', 'or', 'ota', 'ps', 'ru', 'sd', 'si', 'sr', 'syc', |
|||
['bot:_unknown'] = 'CS1-vedlikehold: BOT: Ukjent status for original-url', |
|||
'ta', 'te', 'tg', 'th', 'ti', 'ug', 'uk', 'ur', 'uz', 'yi', 'yue', 'zh' |
|||
['date_format'] = 'CS1-vedlikehold: Datoformat', |
|||
}; |
|||
['date_year'] = 'CS1-vedlikehold: Dato og år', |
|||
['disp_auth_ed'] = 'CS1-vedlikehold: vis-$1', -- $1 is authors or editors; gets value from special_case_translation table |
|||
['editors'] = 'CS1-vedlikehold: Bruker redaktører-parameteren', |
|||
--[[---------------< L A N G U A G E R E M A P P I N G >---------------------- |
|||
['embargo'] = 'CS1-vedlikehold: PMC embargo utløpt', |
|||
['english'] = 'CS1-vedlikehold: English language specified', |
|||
These tables hold language information that is different (correct) from MediaWiki's definitions |
|||
['norwegian'] = 'CS1-vedlikehold: Norsk språk angitt', |
|||
['etal'] = 'CS1-vedlikehold: Eksplisitt bruk av m.fl.', |
|||
For each ['code'] = 'language name' in lang_code_remap{} there must be a matching ['language name'] = {'language name', 'code'} in lang_name_remap{} |
|||
['extra_text'] = 'CS1-vedlikehold: Ekstra tekst', |
|||
['extra_text_names'] = 'CS1-vedlikehold: Ekstra tekst: $1', -- $1 is <name>s list; gets value from special_case_translation table |
|||
lang_code_remap{}: |
|||
['ignore_isbn_err'] = 'CS1-vedlikehold: Ignorerte ISBN-feil', |
|||
key is always lowercase ISO 639-1, -2, -3 language code or a valid lowercase IETF language tag |
|||
['interviewers'] = 'CS1-vedlikehold: Bruker intervjuere-parameteren', |
|||
value is properly spelled and capitalized language name associated with key |
|||
['missing_pipe'] = 'CS1-vedlikehold: Manglende vertikalstrek', |
|||
only one language name per key; |
|||
['mult_names'] = 'CS1-vedlikehold: Flere navn: $1', -- $1 is <name>s list; gets value from special_case_translation table |
|||
key/value pair must have matching entry in lang_name_remap{} |
|||
['pmc_format'] = 'CS1-vedlikehold: PMC-format', |
|||
['unfit'] = 'CS1-vedlikehold: Uheldig URL', -- unfit?? |
|||
lang_name_remap{}: |
|||
['unknown_lang'] = 'CS1-vedlikehold: Ukjent språk', |
|||
key is always lowercase language name |
|||
['untitled'] = 'CS1-vedlikehold: Periodikum uten navn', |
|||
value is a table the holds correctly spelled and capitalized language name [1] and associated code [2] (code must match a code key in lang_code_remap{}) |
|||
may have multiple keys referring to a common preferred name and code; For example: |
|||
['kolsch'] and ['kölsch'] both refer to 'Kölsch' and 'ksh' |
|||
]] |
|||
local lang_code_remap = { -- used for |language= and |script-title= / |script-chapter= |
|||
['als'] = 'Tosk Albanian', -- MediaWiki returns Alemannisch |
|||
['bh'] = 'Bihari', -- MediaWiki uses 'bh' as a subdomain name for Bhojpuri Wikipedia: bh.wikipedia.org |
|||
['bla'] = 'Blackfoot', -- MediaWiki/IANA/ISO 639: Siksika; use en.wiki preferred name |
|||
['bn'] = 'Bengali', -- MediaWiki returns Bangla |
|||
['ca-valencia'] = 'Valencian', -- IETF variant of Catalan |
|||
['ilo'] = 'Ilocano', -- MediaWiki/IANA/ISO 639: Iloko; use en.wiki preferred name |
|||
['ksh'] = 'Kölsch', -- MediaWiki: Colognian; use IANA/ISO 639 preferred name |
|||
['ksh-x-colog'] = 'Colognian', -- override MediaWiki ksh; no IANA/ISO 639 code for Colognian; IETF private code created at Module:Lang/data |
|||
['mis-x-ripuar'] = 'Ripuarian', -- override MediaWiki ksh; no IANA/ISO 639 code for Ripuarian; IETF private code created at Module:Lang/data |
|||
['nan-tw'] = 'Taiwanese Hokkien', -- make room for MediaWiki/IANA/ISO 639 nan: Min Nan Chinese and support en.wiki preferred name |
|||
} |
} |
||
local lang_name_remap = { -- used for |language=; names require proper capitalization; tags must be lowercase |
|||
--[[--------------------------< P R O P E R T I E S _ C A T E G O R I E S >------------------------------------ |
|||
['alemannisch'] = {'Swiss German', 'gsw'}, -- not an ISO or IANA language name; MediaWiki uses 'als' as a subdomain name for Alemannic Wikipedia: als.wikipedia.org |
|||
['bangla'] = {'Bengali', 'bn'}, -- MediaWiki returns Bangla (the endonym) but we want Bengali (the exonym); here we remap |
|||
['bengali'] = {'Bengali', 'bn'}, -- MediaWiki doesn't use exonym so here we provide correct language name and 639-1 code |
|||
['bhojpuri'] = {'Bhojpuri', 'bho'}, -- MediaWiki uses 'bh' as a subdomain name for Bhojpuri Wikipedia: bh.wikipedia.org |
|||
['bihari'] = {'Bihari', 'bh'}, -- MediaWiki replaces 'Bihari' with 'Bhojpuri' so 'Bihari' cannot be found |
|||
['blackfoot'] = {'Blackfoot', 'bla'}, -- MediaWiki/IANA/ISO 639: Siksika; use en.wiki preferred name |
|||
['colognian'] = {'Colognian', 'ksh-x-colog'}, -- MediaWiki preferred name for ksh |
|||
['ilocano'] = {'Ilocano', 'ilo'}, -- MediaWiki/IANA/ISO 639: Iloko; use en.wiki preferred name |
|||
['kolsch'] = {'Kölsch', 'ksh'}, -- use IANA/ISO 639 preferred name (use non-diacritical o instead of umlaut ö) |
|||
['kölsch'] = {'Kölsch', 'ksh'}, -- use IANA/ISO 639 preferred name |
|||
['ripuarian'] = {'Ripuarian', 'mis-x-ripuar'}, -- group of dialects; no code in MediaWiki or in IANA/ISO 639 |
|||
['taiwanese hokkien'] = {'Taiwanese Hokkien', 'nan-tw'}, -- make room for MediaWiki/IANA/ISO 639 nan: Min Nan Chinese |
|||
['tosk albanian'] = {'Tosk Albanian', 'als'}, -- MediaWiki replaces 'Tosk Albanian' with 'Alemannisch' so 'Tosk Albanian' cannot be found |
|||
['valencian'] = {'Valencian', 'ca'}, -- variant of Catalan; categorizes as Catalan |
|||
} |
|||
--[[---------------< P R O P E R T I E S _ C A T E G O R I E S >---------------- |
|||
Properties categories. These are used for investigating qualities of citations. |
|||
Here we name properties categories |
|||
]] |
]] |
||
local prop_cats = { |
local prop_cats = { |
||
[' |
['foreign-lang-source'] = 'CS1 $1-language sources ($2)', -- |language= categories; $1 is foreign-language name, $2 is ISO639-1 code |
||
[' |
['foreign-lang-source-2'] = 'CS1 foreign language sources (ISO 639-2)|$1', -- |language= category; a cat for ISO639-2 languages; $1 is the ISO 639-2 code used as a sort key |
||
['jul-greg-uncertainty'] = 'CS1: Julian–Gregorian uncertainty', -- probably temporary cat to identify scope of template with dates 1 October 1582 – 1 January 1926 |
|||
['script'] = 'CS1 uses foreign language script', -- when language specified by |script-title=xx: doesn't have its own category |
|||
[' |
['local-lang-source'] = 'CS1 $1-language sources ($2)', -- |language= categories; $1 is local-language name, $2 is ISO639-1 code; not emitted when local_lang_cat_enable is false |
||
['location-test'] = 'CS1 location test', |
|||
['long-vol'] = 'CS1: long volume value', -- probably temporary cat to identify scope of |volume= values longer than 4 charachters |
|||
['script'] = 'CS1 uses $1-language script ($2)', -- |script-title=xx: has matching category; $1 is language name, $2 is ISO639-1 code |
|||
['tracked-param'] = 'CS1 tracked parameter: $1', -- $1 is base (enumerators removed) parameter name |
|||
['year-range-abbreviated'] = 'CS1: abbreviated year range', -- probably temporary cat to identify scope of |date=, |year= values using YYYY–YY form |
|||
} |
} |
||
--[[-------------------< T I T L E _ T Y P E S >-------------------------------- |
|||
--[[--------------------------< T I T L E _ T Y P E S >-------------------------------------------------------- |
|||
Here we map a template's CitationClass to TitleType (default values for |type= parameter) |
Here we map a template's CitationClass to TitleType (default values for |type= parameter) |
||
Linje 502: | Linje 1 078: | ||
['pressrelease'] = 'pressemelding', |
['pressrelease'] = 'pressemelding', |
||
['report'] = 'rapport', |
['report'] = 'rapport', |
||
['speech'] = 'tale', |
|||
['techreport'] = 'teknisk rapport', |
['techreport'] = 'teknisk rapport', |
||
['thesis'] = 'avhandling', |
['thesis'] = 'avhandling', |
||
} |
} |
||
--[[--------------------------< E R R O R _ C O N D I T I O N S >---------------------------------------------- |
|||
--[[===================<< E R R O R M E S S A G I N G >>====================== |
|||
Error condition table |
|||
]] |
|||
--[[----------< E R R O R M E S S A G E S U P P L I M E N T S >------------- |
|||
The following contains a list of IDs for various error conditions defined in the code. For each ID, we specify a |
|||
text message to display, an error category to include, and whether the error message should be wrapped as a hidden comment. |
|||
I18N for those messages that are supplemented with additional specific text that |
|||
Anchor changes require identical changes to matching anchor in Help:CS1-feil |
|||
describes the reason for the error |
|||
TODO: merge this with special_case_translations{}? |
|||
]] |
|||
local err_msg_supl = { |
|||
['char'] = 'ugyldig tegn', -- |isbn=, |sbn= |
|||
['check'] = 'kontrollsum', -- |isbn=, |sbn= |
|||
['flag'] = 'flagg', -- |archive-url= |
|||
['form'] = 'ugyldig form', -- |isbn=, |sbn= |
|||
['group'] = 'invalid group id', -- |isbn= |
|||
['initials'] = 'initials', -- Vancouver |
|||
['invalid language code'] = 'ugyldig språkkode', -- |script-<param>= |
|||
['journal'] = 'tiddskrift', -- |bibcode= |
|||
['length'] = 'lengde', -- |isbn=, |bibcode=, |sbn= |
|||
['liveweb'] = 'liveweb', -- |archive-url= |
|||
['missing comma'] = 'mangler komma', -- Vancouver |
|||
['missing prefix'] = 'mangler prefiks', -- |script-<param>= |
|||
['missing title part'] = 'missing title part', -- |script-<param>= |
|||
['name'] = 'navn', -- Vancouver |
|||
['non-Latin char'] = 'non-Latin character', -- Vancouver |
|||
['path'] = 'path', -- |archive-url= |
|||
['prefix'] = 'ugyldig prefiks', -- |isbn= |
|||
['punctuation'] = 'punctuation', -- Vancouver |
|||
['save'] = 'save command', -- |archive-url= |
|||
['suffix'] = 'suffix', -- Vancouver |
|||
['timestamp'] = 'timestamp', -- |archive-url= |
|||
['unknown language code'] = 'ukjent språkkode', -- |script-<param>= |
|||
['value'] = 'verdi', -- |bibcode= |
|||
['year'] = 'år', -- |bibcode= |
|||
} |
|||
--[[--------------< E R R O R _ C O N D I T I O N S >--------------------------- |
|||
Error condition table. This table has two sections: errors at the top, maintenance |
|||
at the bottom. Maint 'messaging' does not have a 'message' (message=nil) |
|||
The following contains a list of IDs for various error conditions defined in the |
|||
code. For each ID, we specify a text message to display, an error category to |
|||
include, and whether the error message should be wrapped as a hidden comment. |
|||
Anchor changes require identical changes to matching anchor in Help:CS1 errors |
|||
TODO: rename error_conditions{} to something more generic; create separate error |
|||
and maint tables inside that? |
|||
]] |
]] |
||
local error_conditions = { |
local error_conditions = { |
||
err_accessdate_missing_url = { |
|||
accessdate_missing_url = { |
|||
message = ' |
message = '<code class="cs1-code">|beskøsdato=</code> krever at <code class="cs1-code">|url=</code> også er angitt', |
||
anchor = 'accessdate_missing_url', |
anchor = 'accessdate_missing_url', |
||
category = ' |
category = 'CS1 errors: access-date without URL', |
||
hidden = |
hidden = false |
||
}, |
|||
err_apostrophe_markup = { |
|||
archive_missing_date = { |
|||
message = ' |
message = 'Fet eller kursiv formatering er ikke tillatt i: <code class="cs1-code">|$1=</code>', -- $1 is parameter name |
||
anchor = 'apostrophe_markup', |
|||
category = 'CS1 errors: markup', |
|||
hidden = false |
|||
}, |
|||
err_archive_missing_date = { |
|||
message = '<code class="cs1-code">|arkiv_url=</code> krever at <code class="cs1-code">|arkivdato=</code> også er angitt', |
|||
anchor = 'archive_missing_date', |
anchor = 'archive_missing_date', |
||
category = ' |
category = 'CS1 errors: archive-url', |
||
hidden = |
hidden = false |
||
}, |
|||
err_archive_missing_url = { |
|||
archive_missing_url = { |
|||
message = ' |
message = '<code class="cs1-code">|arkiv_url=</code> krever at <code class="cs1-code">|url=</code> også er angitt', |
||
anchor = 'archive_missing_url', |
anchor = 'archive_missing_url', |
||
category = ' |
category = 'CS1 errors: archive-url', |
||
hidden = |
hidden = false |
||
}, |
|||
err_archive_url = { |
|||
message = '<code |
message = '<code class="cs1-code">|arkiv_url=</code> er ugyldig: $1', -- $1 is error message detail |
||
anchor = 'archive_url', |
anchor = 'archive_url', |
||
category = ' |
category = 'CS1 errors: archive-url', |
||
hidden = false |
hidden = false |
||
}, |
|||
arxiv_missing = { |
|||
err_arxiv_missing = { |
|||
message = '<code style="'..code_style..'">|arxiv=</code> er påkrevd', |
|||
message = '<code class="cs1-code">|arxiv=</code> required', |
|||
anchor = 'arxiv_missing', |
anchor = 'arxiv_missing', |
||
category = 'CS1 |
category = 'CS1 errors: arXiv', -- same as bad arxiv |
||
hidden = false |
hidden = false |
||
}, |
|||
arxiv_params_not_supported = { |
|||
err_asintld_missing_asin = { |
|||
message = 'Ugyldig(e) argument(er) gitt til cite arXiv', |
|||
message = '<code class="cs1-code">|$1=</code> requires <code class="cs1-code">|asin=</code>', -- $1 is parameter name |
|||
anchor = 'arxiv_params_not_supported', |
|||
anchor = 'asintld_missing_asin', |
|||
category = 'CS1-feil: identikator-feil', -- same as bad arxiv |
|||
category = 'CS1 errors: ASIN TLD', |
|||
hidden = false }, |
|||
hidden = false |
|||
bad_arxiv = { |
|||
}, |
|||
message = 'Sjekk <code style="'..code_style..'">|arxiv=</code>-verdien', |
|||
err_bad_arxiv = { |
|||
message = 'Sjekk <code class="cs1-code">|arxiv=</code>-verdien', |
|||
anchor = 'bad_arxiv', |
anchor = 'bad_arxiv', |
||
category = 'CS1 |
category = 'CS1 errors: arXiv', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_asin = { |
|||
err_bad_asin = { |
|||
message = 'Sjekk <code style="'..code_style..'">|asin=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|asin=</code>-verdien', |
|||
anchor = 'bad_asin', |
anchor = 'bad_asin', |
||
category ='CS1 |
category ='CS1 errors: ASIN', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_bibcode = { |
|||
err_bad_asin_tld = { |
|||
message = 'Sjekk <code style="'..code_style..'">|bibcode=</code> $1', |
|||
message = 'Sjekk <code class="cs1-code">|asin-tld=</code>-verdien', |
|||
anchor = 'bad_asin_tld', |
|||
category ='CS1 errors: ASIN TLD', |
|||
hidden = false |
|||
}, |
|||
err_bad_bibcode = { |
|||
message = 'Sjekk <code class="cs1-code">|bibcode=</code> $1', -- $1 is error message detail |
|||
anchor = 'bad_bibcode', |
anchor = 'bad_bibcode', |
||
category = 'CS1 |
category = 'CS1 errors: bibcode', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_biorxiv = { |
|||
err_bad_biorxiv = { |
|||
message = 'Sjekk <code style="'..code_style..'">|biorxiv=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|biorxiv=</code>-verdien', |
|||
anchor = 'bad_biorxiv', |
anchor = 'bad_biorxiv', |
||
category = 'CS1 |
category = 'CS1 errors: bioRxiv', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_citeseerx = { |
|||
err_bad_citeseerx = { |
|||
message = 'Sjekk <code style="'..code_style..'">|citeseerx=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|citeseerx=</code>-verdien', |
|||
anchor = 'bad_citeseerx', |
anchor = 'bad_citeseerx', |
||
category = 'CS1 |
category = 'CS1 errors: citeseerx', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_date = { |
|||
err_bad_date = { |
|||
message = 'Sjekk datoverdier i <code style="'..code_style..'">$1</code>', |
|||
message = 'Sjekk datoverdier i: $1', -- $1 is a parameter name list |
|||
anchor = 'bad_date', |
anchor = 'bad_date', |
||
category = ' |
category = 'CS1 errors: dates', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_doi = { |
|||
err_bad_doi = { |
|||
message = 'Sjekk <code style="'..code_style..'">|doi=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|doi=</code>-verdien', |
|||
anchor = 'bad_doi', |
anchor = 'bad_doi', |
||
category = ' |
category = 'CS1 errors: DOI', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_hdl = { |
|||
err_bad_hdl = { |
|||
message = 'Sjekk <code style="'..code_style..'">|hdl=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|hdl=</code>-verdien', |
|||
anchor = 'bad_hdl', |
anchor = 'bad_hdl', |
||
category = 'CS1 |
category = 'CS1 errors: HDL', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_isbn = { |
|||
err_bad_isbn = { |
|||
message = 'Sjekk <code style="'..code_style..'">|isbn=</code>-verdien: $1', |
|||
message = 'Sjekk <code class="cs1-code">|isbn=</code>-verdien: $1', -- $1 is error message detail |
|||
anchor = 'bad_isbn', |
anchor = 'bad_isbn', |
||
category = ' |
category = 'CS1 errors: ISBN', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_ismn = { |
|||
err_bad_ismn = { |
|||
message = 'Sjekk <code style="'..code_style..'">|ismn=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|ismn=</code>-verdien', |
|||
anchor = 'bad_ismn', |
anchor = 'bad_ismn', |
||
category = 'CS1 |
category = 'CS1 errors: ISMN', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_issn = { |
|||
err_bad_issn = { |
|||
message = 'Sjekk <code style="'..code_style..'">|$1issn=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|$1issn=</code>-verdien', -- $1 is 'e' or '' for eissn or issn |
|||
anchor = 'bad_issn', |
anchor = 'bad_issn', |
||
category = ' |
category = 'CS1 errors: ISSN', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_lccn = { |
|||
err_bad_jfm = { |
|||
message = 'Sjekk <code style="'..code_style..'">|lccn=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|jfm=</code>-verdien', |
|||
anchor = 'bad_jfm', |
|||
category = 'CS1 errors: JFM', |
|||
hidden = false |
|||
}, |
|||
err_bad_jstor = { |
|||
message = 'Sjekk <code class="cs1-code">|jstor=</code>-verdien', |
|||
anchor = 'bad_jstor', |
|||
category = 'CS1 errors: JSTOR', |
|||
hidden = false |
|||
}, |
|||
err_bad_lccn = { |
|||
message = 'Sjekk <code class="cs1-code">|lccn=</code>-verdien', |
|||
anchor = 'bad_lccn', |
anchor = 'bad_lccn', |
||
category = 'CS1 |
category = 'CS1 errors: LCCN', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_message_id = { |
|||
err_bad_mr = { |
|||
message = 'Sjekk <code style="'..code_style..'">|message-id=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|mr=</code>-verdien', |
|||
anchor = 'bad_message_id', |
|||
anchor = 'bad_mr', |
|||
category = 'CS1 errors: MR', |
|||
hidden = false |
|||
bad_ol = { |
|||
}, |
|||
message = 'Sjekk <code style="'..code_style..'">|ol=</code>-verdien', |
|||
err_bad_oclc = { |
|||
message = 'Sjekk <code class="cs1-code">|oclc=</code>-verdien', |
|||
anchor = 'bad_oclc', |
|||
category = 'CS1 errors: OCLC', |
|||
hidden = false |
|||
}, |
|||
err_bad_ol = { |
|||
message = 'Sjekk <code class="cs1-code">|ol=</code>-verdien', |
|||
anchor = 'bad_ol', |
anchor = 'bad_ol', |
||
category = 'CS1 |
category = 'CS1 errors: OL', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_paramlink = { -- for |title-link=, |author/editor/translator-link=, |series-link=, |episode-link= |
|||
err_bad_osti = { |
|||
message = 'Sjekk <code style="'..code_style..'">|$1=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|osti=</code>-verdien', |
|||
anchor = 'bad_osti', |
|||
category = 'CS1 errors: OSTI', |
|||
hidden = false |
|||
}, |
|||
err_bad_paramlink = { -- for |title-link=, |author/editor/translator-link=, |series-link=, |episode-link= |
|||
message = 'Sjekk <code class="cs1-code">|$1=</code>-verdien', -- $1 is parameter name |
|||
anchor = 'bad_paramlink', |
anchor = 'bad_paramlink', |
||
category = 'CS1 |
category = 'CS1 errors: parameter link', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_pmc = { |
|||
err_bad_pmc = { |
|||
message = 'Sjekk <code style="'..code_style..'">|pmc=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|pmc=</code>-verdien', |
|||
anchor = 'bad_pmc', |
anchor = 'bad_pmc', |
||
category = 'CS1 |
category = 'CS1 errors: PMC', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_pmid = { |
|||
err_bad_pmid = { |
|||
message = 'Sjekk <code style="'..code_style..'">|pmid=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|pmid=</code>-verdien', |
|||
anchor = 'bad_pmid', |
anchor = 'bad_pmid', |
||
category = 'CS1 |
category = 'CS1 errors: PMID', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_oclc = { |
|||
err_bad_rfc = { |
|||
message = 'Sjekk <code style="'..code_style..'">|oclc=</code>-verdien', |
|||
message = 'Sjekk <code class="cs1-code">|rfc=</code>-verdien', |
|||
anchor = 'bad_oclc', |
|||
anchor = 'bad_rfc', |
|||
category = 'CS1-feil: identikator-feil', |
|||
category = 'CS1 errors: RFC', |
|||
hidden = false |
|||
bad_ssrn = { |
|||
}, |
|||
message = 'Sjekk <code style="'..code_style..'">|ssrn=</code>-verdien', |
|||
err_bad_s2cid = { |
|||
message = 'Sjekk <code class="cs1-code">|s2cid=</code>-verdien', |
|||
anchor = 'bad_s2cid', |
|||
category = 'CS1 errors: S2CID', |
|||
hidden = false |
|||
}, |
|||
err_bad_sbn = { |
|||
message = 'Sjekk <code class="cs1-code">|sbn=</code>-verdien: $1', -- $1 is error message detail |
|||
anchor = 'bad_sbn', |
|||
category = 'CS1 errors: SBN', |
|||
hidden = false |
|||
}, |
|||
err_bad_ssrn = { |
|||
message = 'Sjekk <code class="cs1-code">|ssrn=</code>-verdien', |
|||
anchor = 'bad_ssrn', |
anchor = 'bad_ssrn', |
||
category = 'CS1 |
category = 'CS1 errors: SSRN', |
||
hidden = false |
hidden = false |
||
}, |
|||
bad_url = { |
|||
err_bad_url = { |
|||
message = 'Sjekk $1-verdien', |
|||
message = 'Sjekk $1-verdien', -- $1 is parameter name |
|||
anchor = 'bad_url', |
anchor = 'bad_url', |
||
category = ' |
category = 'CS1 errors: URL', |
||
hidden = false |
hidden = false |
||
}, |
|||
bare_url_missing_title = { |
|||
err_bad_usenet_id = { |
|||
message = '$1 mangler tittel', |
|||
message = 'Sjekk <code class="cs1-code">|message-id=</code>-verdien', |
|||
anchor = 'bad_message_id', |
|||
category = 'CS1 errors: message-id', |
|||
hidden = false |
|||
}, |
|||
err_bad_zbl = { |
|||
message = 'Sjekk <code class="cs1-code">|zbl=</code>-verdien', |
|||
anchor = 'bad_zbl', |
|||
category = 'CS1 errors: Zbl', |
|||
hidden = false |
|||
}, |
|||
err_bare_url_missing_title = { |
|||
message = '$1 mangler tittel', -- $1 is parameter name |
|||
anchor = 'bare_url_missing_title', |
anchor = 'bare_url_missing_title', |
||
category = ' |
category = 'CS1 errors: bare URL', |
||
hidden = false |
hidden = false |
||
}, |
|||
chapter_ignored = { |
|||
err_biorxiv_missing = { |
|||
message = '<code style="'..code_style..'">|$1=</code> ignorert', |
|||
message = '<code class="cs1-code">|biorxiv=</code> required', |
|||
anchor = 'biorxiv_missing', |
|||
category = 'CS1 errors: bioRxiv', -- same as bad bioRxiv |
|||
hidden = false |
|||
}, |
|||
err_chapter_ignored = { |
|||
message = '<code class="cs1-code">|$1=</code> ignored', -- $1 is parameter name |
|||
anchor = 'chapter_ignored', |
anchor = 'chapter_ignored', |
||
category = 'CS1 |
category = 'CS1 errors: chapter ignored', |
||
hidden = false |
hidden = false |
||
}, |
|||
citation_missing_title = { |
|||
err_citation_missing_title = { |
|||
message = 'Manglende eller tom <code style="'..code_style..'">|$1=</code>', |
|||
message = 'Manglende eller tom <code class="cs1-code">|$1=</code>', -- $1 is parameter name |
|||
anchor = 'citation_missing_title', |
anchor = 'citation_missing_title', |
||
category = ' |
category = 'CS1 errors: missing title', |
||
hidden = |
hidden = false |
||
}, |
|||
err_citeseerx_missing = { |
|||
cite_web_url = { -- this error applies to cite web and to cite podcast |
|||
message = ' |
message = '<code class="cs1-code">|citeseerx=</code> required', |
||
anchor = 'citeseerx_missing', |
|||
category = 'CS1 errors: citeseerx', -- same as bad citeseerx |
|||
hidden = false |
|||
}, |
|||
err_cite_web_url = { -- this error applies to cite web and to cite podcast |
|||
message = 'Manglende eller tom <code class="cs1-code">|url=</code>', |
|||
anchor = 'cite_web_url', |
anchor = 'cite_web_url', |
||
category = ' |
category = 'CS1 errors: requires URL', |
||
hidden = |
hidden = false |
||
}, |
|||
err_class_ignored = { |
|||
message = '<code |
message = '<code class="cs1-code">|class=</code> ignorert', |
||
anchor = 'class_ignored', |
|||
category = 'CS1 errors: class', |
|||
hidden = false |
|||
}, |
|||
err_contributor_ignored = { |
|||
message = '<code class="cs1-code">|contributor=</code> ignorert', |
|||
anchor = 'contributor_ignored', |
anchor = 'contributor_ignored', |
||
category = 'CS1 |
category = 'CS1 errors: contributor', |
||
hidden = false |
hidden = false |
||
}, |
|||
contributor_missing_required_param = { |
|||
err_contributor_missing_required_param = { |
|||
message = '<code style="'..code_style..'">|contributor=</code> requires <code style="'..code_style..'">|$1=</code>', |
|||
message = '<code class="cs1-code">|contributor=</code> krever <code class="cs1-code">|$1=</code>', -- $1 is parameter name |
|||
anchor = 'contributor_missing_required_param', |
anchor = 'contributor_missing_required_param', |
||
category = 'CS1 |
category = 'CS1 errors: contributor', |
||
hidden = false |
hidden = false |
||
}, |
|||
deprecated_params = { |
|||
err_deprecated_params = { |
|||
message = 'Kildemalen bruker det utdaterte argumentet <code style="'..code_style..'">|$1=</code>', |
|||
message = 'Cite uses deprecated parameter <code class="cs1-code">|$1=</code>', -- $1 is parameter name |
|||
anchor = 'deprecated_params', |
anchor = 'deprecated_params', |
||
category = ' |
category = 'CS1 errors: deprecated parameters', |
||
hidden = |
hidden = false |
||
}, |
|||
err_disp_name = { |
|||
message = 'Invalid <code class="cs1-code">|$1=$2</code>', -- $1 is parameter name; $2 is the assigned value |
|||
message = 'Tom referanse?', |
|||
anchor = 'disp_name', |
|||
category = 'CS1 errors: display-names', |
|||
hidden = false, |
|||
}, |
|||
err_doibroken_missing_doi = { |
|||
message = '<code class="cs1-code">|$1=</code> krever <code class="cs1-code">|doi=</code>', -- $1 is parameter name |
|||
anchor = 'doibroken_missing_doi', |
|||
category = 'CS1 errors: DOI', |
|||
hidden = false |
|||
}, |
|||
err_embargo_missing_pmc = { |
|||
message = '<code class="cs1-code">|$1=</code> krever <code class="cs1-code">|pmc=</code>', -- $1 is parameter name |
|||
anchor = 'embargo_missing_pmc', |
|||
category = 'CS1 errors: PMC embargo', |
|||
hidden = false |
|||
}, |
|||
err_empty_citation = { |
|||
message = 'Empty citation', |
|||
anchor = 'empty_citation', |
anchor = 'empty_citation', |
||
category = ' |
category = 'CS1 errors: empty citation', |
||
hidden = false |
hidden = false |
||
}, |
|||
first_missing_last = { |
|||
err_etal = { |
|||
message = '<code style="'..code_style..'">|fornavn$2=</code> mangler <code style="'..code_style..'">|etternavn$2=</code> i $1', |
|||
message = 'Explicit use of et al. in: <code class="cs1-code">|$1=</code>', -- $1 is parameter name |
|||
anchor = 'explicit_et_al', |
|||
category = 'CS1 errors: explicit use of et al.', |
|||
hidden = false |
|||
}, |
|||
err_extra_text_edition = { |
|||
message = '<code class="cs1-code">|edition=</code> har ekstra tekst', |
|||
anchor = 'extra_text_edition', |
|||
category = 'CS1 errors: extra text: edition', |
|||
hidden = false, |
|||
}, |
|||
err_extra_text_issue = { |
|||
message = '<code class="cs1-code">|$1=</code> har ekstra tekst', -- $1 is parameter name |
|||
anchor = 'extra_text_issue', |
|||
category = 'CS1 errors: extra text: issue', |
|||
hidden = false, |
|||
}, |
|||
err_extra_text_pages = { |
|||
message = '<code class="cs1-code">|$1=</code> har ekstra tekst', -- $1 is parameter name |
|||
anchor = 'extra_text_pages', |
|||
category = 'CS1 errors: extra text: pages', |
|||
hidden = false, |
|||
}, |
|||
err_extra_text_volume = { |
|||
message = '<code class="cs1-code">|$1=</code> har ekstra tekst', -- $1 is parameter name |
|||
anchor = 'extra_text_volume', |
|||
category = 'CS1 errors: extra text: volume', |
|||
hidden = true, |
|||
}, |
|||
err_first_missing_last = { |
|||
message = '<code class="cs1-code">|$1=</code> mangler <code class="cs1-code">|$2=</code>', -- $1 is first alias, $2 is matching last alias |
|||
anchor = 'first_missing_last', |
anchor = 'first_missing_last', |
||
category = ' |
category = 'CS1 errors: missing name', -- author, contributor, editor, interviewer, translator |
||
hidden = |
hidden = false |
||
}, |
|||
err_format_missing_url = { |
|||
format_missing_url = { |
|||
message = ' |
message = '<code class="cs1-code">|$1=</code> krever <code class="cs1-code">|$2=</code>', -- $1 is format parameter $2 is url parameter |
||
anchor = 'format_missing_url', |
anchor = 'format_missing_url', |
||
category = ' |
category = 'CS1 errors: format without URL', |
||
hidden = |
hidden = false |
||
}, |
|||
err_generic_name = { |
|||
message = ' |
message = '<code class="cs1-code">|$1=</code> has generic name', -- $1 is parameter name |
||
anchor = 'generic_name', |
|||
category = 'CS1 errors: generic name', |
|||
hidden = false, |
|||
}, |
|||
err_generic_title = { |
|||
message = 'Cite uses generic title', |
|||
anchor = 'generic_title', |
|||
category = 'CS1 errors: generic title', |
|||
hidden = false, |
|||
}, |
|||
err_invalid_param_val = { |
|||
message = 'Ugyldig parameter: <code class="cs1-code">|$1=$2</code>', -- $1 is parameter name $2 is parameter value |
|||
anchor = 'invalid_param_val', |
anchor = 'invalid_param_val', |
||
category = 'CS1 |
category = 'CS1 errors: invalid parameter value', |
||
hidden = false |
hidden = false |
||
}, |
|||
invisible_char = { |
|||
err_invisible_char = { |
|||
message = '$1 i $2 på plass $3', |
|||
message = '$1 i $2 på plass $3', -- $1 is invisible char $2 is parameter name $3 is position number |
|||
anchor = 'invisible_char', |
anchor = 'invisible_char', |
||
category = 'CS1 |
category = 'CS1 errors: invisible characters', |
||
hidden = false |
hidden = false |
||
}, |
|||
missing_name = { |
|||
err_missing_name = { |
|||
message = 'Mangler <code style="'..code_style..'">|etternavn$2=</code> i $1', |
|||
message = 'Mangler <code class="cs1-code">|$1$2=</code>', -- $1 is modified NameList; $2 is enumerator |
|||
anchor = 'missing_name', |
anchor = 'missing_name', |
||
category = 'CS1 errors: missing name', -- author, contributor, editor, interviewer, translator |
|||
category = '', --'Sider med kildemaler som mangler forfatter eller redaktør', |
|||
hidden = |
hidden = false |
||
}, |
|||
err_missing_periodical = { |
|||
param_access_requires_param = { |
|||
message = ' |
message = 'Cite $1 requires <code class="cs1-code">|$2=</code>', -- $1 is cs1 template name; $2 is canonical periodical parameter name for cite $1 |
||
anchor = 'missing_periodical', |
|||
category = 'CS1 errors: missing periodical', |
|||
hidden = true |
|||
}, |
|||
err_missing_pipe = { |
|||
message = 'Missing pipe in: <code class="cs1-code">|$1=</code>', -- $1 is parameter name |
|||
anchor = 'missing_pipe', |
|||
category = 'CS1 errors: missing pipe', |
|||
hidden = false |
|||
}, |
|||
err_param_access_requires_param = { |
|||
message = '<code class="cs1-code">|$1-access=</code> krever <code class="cs1-code">|$1=</code>', -- $1 is parameter name |
|||
anchor = 'param_access_requires_param', |
anchor = 'param_access_requires_param', |
||
category = 'CS1 |
category = 'CS1 errors: param-access', |
||
hidden = false |
hidden = false |
||
}, |
|||
param_has_ext_link = { |
|||
err_param_has_ext_link = { |
|||
message = 'Ekstern lenke i <code style="'..code_style..'">$1</code>', |
|||
message = 'Ekstern lenke i <code class="cs1-code">$1</code>', -- $1 is parameter name |
|||
anchor = 'param_has_ext_link', |
anchor = 'param_has_ext_link', |
||
category = 'CS1 |
category = 'CS1 errors: external links', |
||
hidden = false |
hidden = false |
||
}, |
|||
parameter_ignored = { |
|||
err_parameter_ignored = { |
|||
message = 'Parameteren <code style="'..code_style..'">|$1=</code> støttes ikke av malen.', |
|||
message = 'Parameteren <code class="cs1-code">|$1=</code> støttes ikke av malen', -- $1 is parameter name |
|||
anchor = 'parameter_ignored', |
anchor = 'parameter_ignored', |
||
category = ' |
category = 'CS1 errors: unsupported parameter', |
||
hidden = false |
hidden = false |
||
}, |
|||
parameter_ignored_suggest = { |
|||
err_parameter_ignored_suggest = { |
|||
message = 'Parameteren <code style="'..code_style..'">|$1=</code> støttes ikke av malen. Mente du <code style="'..code_style..'">|$2=</code>?)', |
|||
message = 'Parameteren <code class="cs1-code">|$1=</code> støttes ikke av malen. (Mente du <code class="cs1-code">|$2=</code>?)', -- $1 is unknown parameter $2 is suggested parameter name |
|||
anchor = 'parameter_ignored_suggest', |
anchor = 'parameter_ignored_suggest', |
||
category = ' |
category = 'CS1 errors: unsupported parameter', |
||
hidden = false |
hidden = false |
||
}, |
|||
redundant_parameters = { |
|||
err_redundant_parameters = { |
|||
message = 'Både $1 er angitt. Kun én av dem skal angis.', |
|||
message = '$1 er spesifisert mer enn en gang', -- $1 is error message detail |
|||
anchor = 'redundant_parameters', |
anchor = 'redundant_parameters', |
||
category = ' |
category = 'CS1 errors: redundant parameter', |
||
hidden = false |
hidden = false |
||
}, |
|||
text_ignored = { |
|||
err_script_parameter = { |
|||
message = 'Teksten «$1» ignoreres', |
|||
message = 'Invalid <code class="cs1-code">|$1=</code>: $2', -- $1 is parameter name $2 is script language code or error detail |
|||
anchor = 'script_parameter', |
|||
category = 'CS1 errors: script parameters', |
|||
hidden = false |
|||
}, |
|||
err_ssrn_missing = { |
|||
message = '<code class="cs1-code">|ssrn=</code> required', |
|||
anchor = 'ssrn_missing', |
|||
category = 'CS1 errors: SSRN', -- same as bad arxiv |
|||
hidden = false |
|||
}, |
|||
err_text_ignored = { |
|||
message = 'Teksten "$1" ignoreres', -- $1 is ignored text |
|||
anchor = 'text_ignored', |
anchor = 'text_ignored', |
||
category = ' |
category = 'CS1 errors: unrecognized parameter', |
||
hidden = false |
hidden = false |
||
}, |
|||
trans_missing_title = { |
|||
err_trans_missing_title = { |
|||
message = 'Bruk av <code style="'..code_style..'">|overs_$1=</code> krever at <code style="'..code_style..'">|$1=</code> også er angitt', |
|||
message = '<code class="cs1-code">|trans-$1=</code> requires <code class="cs1-code">|$1=</code> or <code class="cs1-code">|script-$1=</code>', -- $1 is base parameter name |
|||
anchor = 'trans_missing_title', |
anchor = 'trans_missing_title', |
||
category = ' |
category = 'CS1 errors: translated title', |
||
hidden = false |
hidden = false |
||
}, |
|||
vancouver = { |
|||
err_param_unknown_empty = { |
|||
message = 'Feil i Vancouver-stil: $1', |
|||
message = 'Cite has empty unknown parameter$1: $2', -- $1 is 's' or empty space; $2 is emty unknown param list |
|||
anchor = 'param_unknown_empty', |
|||
category = 'CS1 errors: empty unknown parameters', |
|||
hidden = false |
|||
}, |
|||
err_vancouver = { |
|||
message = 'Vancouver style error: $1 in name $2', -- $1 is error detail, $2 is the nth name |
|||
anchor = 'vancouver', |
anchor = 'vancouver', |
||
category = 'CS1 |
category = 'CS1 errors: Vancouver style', |
||
hidden = false |
hidden = false |
||
}, |
|||
wikilink_in_url = { |
|||
err_wikilink_in_url = { |
|||
message = 'URL-wikilenke-konflikt', |
|||
message = 'URL–wikilink-konflikt', -- uses ndash |
|||
anchor = 'wikilink_in_url', |
anchor = 'wikilink_in_url', |
||
category = 'CS1 |
category = 'CS1 errors: URL–wikilink conflict', -- uses ndash |
||
hidden = false |
hidden = false |
||
} |
}, |
||
--[[--------------------------< M A I N T >------------------------------------- |
|||
maint messages do not have a message (message = nil); otherwise the structure |
|||
is the same as error messages |
|||
]] |
|||
maint_archived_copy = { |
|||
message = nil, |
|||
anchor = 'archived_copy', |
|||
category = 'CS1 maint: archived copy as title', |
|||
hidden = true, |
|||
}, |
|||
maint_authors = { |
|||
message = nil, |
|||
anchor = 'authors', |
|||
category = 'CS1 maint: uses authors parameter', |
|||
hidden = true, |
|||
}, |
|||
maint_bot_unknown = { |
|||
message = nil, |
|||
anchor = 'bot:_unknown', |
|||
category = 'CS1 maint: bot: original URL status unknown', |
|||
hidden = true, |
|||
}, |
|||
maint_date_auto_xlated = { -- date auto-translation not supported by en.wiki |
|||
message = nil, |
|||
anchor = 'date_auto_xlated', |
|||
category = 'CS1 maint: date auto-translated', |
|||
hidden = true, |
|||
}, |
|||
maint_date_format = { |
|||
message = nil, |
|||
anchor = 'date_format', |
|||
category = 'CS1 maint: date format', |
|||
hidden = true, |
|||
}, |
|||
maint_date_year = { |
|||
message = nil, |
|||
anchor = 'date_year', |
|||
category = 'CS1 maint: date and year', |
|||
hidden = true, |
|||
}, |
|||
maint_doi_ignore = { |
|||
message = nil, |
|||
anchor = 'doi_ignore', |
|||
category = 'CS1 maint: ignored DOI errors', |
|||
hidden = true, |
|||
}, |
|||
maint_doi_inactive = { |
|||
message = nil, |
|||
anchor = 'doi_inactive', |
|||
category = 'CS1 maint: DOI inactive', |
|||
hidden = true, |
|||
}, |
|||
maint_doi_inactive_dated = { |
|||
message = nil, |
|||
anchor = 'doi_inactive_dated', |
|||
category = 'CS1 maint: DOI inactive as of $2$3$1', -- $1 is year, $2 is month-name or empty string, $3 is space or empty string |
|||
hidden = true, |
|||
}, |
|||
maint_extra_punct = { |
|||
message = nil, |
|||
anchor = 'extra_punct', |
|||
category = 'CS1 maint: extra punctuation', |
|||
hidden = true, |
|||
}, |
|||
maint_isbn_ignore = { |
|||
message = nil, |
|||
anchor = 'ignore_isbn_err', |
|||
category = 'CS1 maint: ignored ISBN errors', |
|||
hidden = true, |
|||
}, |
|||
maint_issn_ignore = { |
|||
message = nil, |
|||
anchor = 'ignore_issn', |
|||
category = 'CS1 maint: ignored ISSN errors', |
|||
hidden = true, |
|||
}, |
|||
maint_jfm_format = { |
|||
message = nil, |
|||
anchor = 'jfm_format', |
|||
category = 'CS1 maint: JFM format', |
|||
hidden = true, |
|||
}, |
|||
maint_location = { |
|||
message = nil, |
|||
anchor = 'location', |
|||
category = 'CS1 maint: location', |
|||
hidden = true, |
|||
}, |
|||
maint_mr_format = { |
|||
message = nil, |
|||
anchor = 'mr_format', |
|||
category = 'CS1 maint: MR format', |
|||
hidden = true, |
|||
}, |
|||
maint_mult_names = { |
|||
message = nil, |
|||
anchor = 'mult_names', |
|||
category = 'CS1 maint: multiple names: $1', -- $1 is '<name>s list'; gets value from special_case_translation table |
|||
hidden = true, |
|||
}, |
|||
maint_numeric_names = { |
|||
message = nil, |
|||
anchor = 'numeric_names', |
|||
category = 'CS1 maint: numeric names: $1', -- $1 is '<name>s list'; gets value from special_case_translation table |
|||
hidden = true, |
|||
}, |
|||
maint_others = { |
|||
message = nil, |
|||
anchor = 'others', |
|||
category = 'CS1 maint: others', |
|||
hidden = true, |
|||
}, |
|||
maint_others_avm = { |
|||
message = nil, |
|||
anchor = 'others_avm', |
|||
category = 'CS1 maint: others in cite AV media (notes)', |
|||
hidden = true, |
|||
}, |
|||
maint_pmc_embargo = { |
|||
message = nil, |
|||
anchor = 'embargo', |
|||
category = 'CS1 maint: PMC embargo expired', |
|||
hidden = true, |
|||
}, |
|||
maint_pmc_format = { |
|||
message = nil, |
|||
anchor = 'pmc_format', |
|||
category = 'CS1 maint: PMC format', |
|||
hidden = true, |
|||
}, |
|||
maint_postscript = { |
|||
message = nil, |
|||
anchor = 'postscript', |
|||
category = 'CS1 maint: postscript', |
|||
hidden = true, |
|||
}, |
|||
maint_ref_duplicates_default = { |
|||
message = nil, |
|||
anchor = 'ref_default', |
|||
category = 'CS1 maint: ref duplicates default', |
|||
hidden = true, |
|||
}, |
|||
maint_unfit = { |
|||
message = nil, |
|||
anchor = 'unfit', |
|||
category = 'CS1 maint: unfit URL', |
|||
hidden = true, |
|||
}, |
|||
maint_unknown_lang = { |
|||
message = nil, |
|||
anchor = 'unknown_lang', |
|||
category = 'CS1 maint: unrecognized language', |
|||
hidden = true, |
|||
}, |
|||
maint_untitled = { |
|||
message = nil, |
|||
anchor = 'untitled', |
|||
category = 'CS1 maint: untitled periodical', |
|||
hidden = true, |
|||
}, |
|||
maint_url_status = { |
|||
message = nil, |
|||
anchor = 'url_status', |
|||
category = 'CS1 maint: url-status', |
|||
hidden = true, |
|||
}, |
|||
maint_zbl = { |
|||
message = nil, |
|||
anchor = 'zbl', |
|||
category = 'CS1 maint: Zbl', |
|||
hidden = true, |
|||
}, |
|||
} |
|||
--[[--------------------------< I D _ H A N D L E R S >-------------------------------------------------------- |
--[[--------------------------< I D _ H A N D L E R S >-------------------------------------------------------- |
||
The following contains a list of values for various defined identifiers. For each |
The following contains a list of values for various defined identifiers. For each |
||
variety of information necessary to properly render the |
identifier we specify a variety of information necessary to properly render the |
||
identifier in the citation. |
|||
parameters: a list of parameter aliases for this identifier |
parameters: a list of parameter aliases for this identifier; first in the list is the canonical form |
||
link: Wikipedia article name |
link: Wikipedia article name |
||
redirect: a local redirect to a local Wikipedia article name; at en.wiki, 'ISBN (identifier)' is a redirect to 'International Standard Book Number' |
|||
label: the alternate name to apply to link |
|||
q: Wikidata q number for the identifier |
|||
label: the label preceeding the identifier; label is linked to a Wikipedia article (in this order): |
|||
'external' for identifiers that link outside of Wikipedia; |
|||
redirect from id_handlers['<id>'].redirect when use_identifier_redirects is true |
|||
prefix: the first part of a url that will be concatenated with a second part which usually contains the identifier |
|||
Wikidata-supplied article name for the local wiki from id_handlers['<id>'].q |
|||
encode: true if uri should be percent encoded; otherwise false |
|||
local article name from id_handlers['<id>'].link |
|||
prefix: the first part of a URL that will be concatenated with a second part which usually contains the identifier |
|||
suffix: optional third part to be added after the identifier |
|||
encode: true if URI should be percent-encoded; otherwise false |
|||
COinS: identifier link or keyword for use in COinS: |
COinS: identifier link or keyword for use in COinS: |
||
for identifiers registered at info-uri.info use: info:.... |
for identifiers registered at info-uri.info use: info:.... where '...' is the appropriate identifier label |
||
for identifiers that have COinS keywords, use the keyword: rft.isbn, rft.issn, rft.eissn |
for identifiers that have COinS keywords, use the keyword: rft.isbn, rft.issn, rft.eissn |
||
for |
for |asin= and |ol=, which require assembly, use the keyword: url |
||
for others make a URL using the value in prefix/suffix and #label, use the keyword: pre (not checked; any text other than 'info', 'rft', or 'url' works here) |
|||
set to nil to leave the identifier out of the COinS |
set to nil to leave the identifier out of the COinS |
||
separator: character or text between label and the identifier in the rendered citation |
separator: character or text between label and the identifier in the rendered citation |
||
id_limit: for those identifiers with established limits, this property holds the upper limit |
|||
access: use this parameter to set the access level for all instances of this identifier. |
access: use this parameter to set the access level for all instances of this identifier. |
||
the value must be a valid access level for an identifier (see ['id-access'] in this file). |
|||
custom_access: to enable custom access level for an identifier, set this parameter |
custom_access: to enable custom access level for an identifier, set this parameter |
||
to the parameter that should control it (normally 'id-access') |
|||
]] |
]] |
||
Linje 788: | Linje 1 812: | ||
parameters = {'arxiv', 'eprint'}, |
parameters = {'arxiv', 'eprint'}, |
||
link = 'arXiv', |
link = 'arXiv', |
||
q = 'Q118398', |
|||
label = 'arXiv', |
label = 'arXiv', |
||
prefix = '//arxiv.org/abs/', -- protocol-relative tested 2013-09-04 |
|||
mode = 'manual', |
|||
prefix = '//arxiv.org/abs/', -- protocol relative tested 2013-09-04 |
|||
encode = false, |
encode = false, |
||
COinS = 'info:arxiv', |
COinS = 'info:arxiv', |
||
separator = ':', |
separator = ':', |
||
access = 'free', -- free to read |
access = 'free', -- free to read |
||
}, |
|||
['ASIN'] = { |
['ASIN'] = { |
||
parameters = { 'asin', 'ASIN' }, |
parameters = { 'asin', 'ASIN' }, |
||
link = 'Amazon Standard Identification Number', |
link = 'Amazon Standard Identification Number', |
||
q = 'Q1753278', |
|||
label = 'ASIN', |
label = 'ASIN', |
||
mode = 'manual', |
|||
prefix = '//www.amazon.', |
prefix = '//www.amazon.', |
||
COinS = 'url', |
|||
COinS = nil, -- no COinS for this id (needs thinking on implementation because |asin-tld=) |
|||
separator = ' ', |
separator = ' ', |
||
encode = false; |
encode = false; |
||
}, |
|||
['BIBCODE'] = { |
['BIBCODE'] = { |
||
parameters = {'bibcode'}, |
parameters = {'bibcode'}, |
||
link = 'Bibcode', |
link = 'Bibcode', |
||
q = 'Q25754', |
|||
label = 'Bibcode', |
label = 'Bibcode', |
||
prefix = 'https://ui.adsabs.harvard.edu/abs/', |
|||
-- mode = 'external', |
|||
mode = 'manual', |
|||
prefix = 'http://adsabs.harvard.edu/abs/', |
|||
encode = false, |
encode = false, |
||
COinS = 'info:bibcode', |
COinS = 'info:bibcode', |
||
separator = ':', |
separator = ':', |
||
custom_access = 'bibcode-access', |
custom_access = 'bibcode-access', |
||
}, |
|||
['BIORXIV'] = { |
['BIORXIV'] = { |
||
parameters = {'biorxiv'}, |
parameters = {'biorxiv'}, |
||
link = 'bioRxiv', |
link = 'bioRxiv', |
||
q = 'Q19835482', |
|||
label = 'bioRxiv', |
label = 'bioRxiv', |
||
prefix = '//doi.org/', |
|||
prefix = '//doi.org/10.1101/', |
|||
COinS = 'pre', -- use prefix value |
COinS = 'pre', -- use prefix value |
||
access = 'free', -- free to read |
access = 'free', -- free to read |
||
encode = true, |
encode = true, |
||
separator = ' ', |
separator = ' ', |
||
}, |
|||
['CITESEERX'] = { |
['CITESEERX'] = { |
||
parameters = {'citeseerx'}, |
parameters = {'citeseerx'}, |
||
link = 'CiteSeerX', |
link = 'CiteSeerX', |
||
q = 'Q2715061', |
|||
label = 'CiteSeerX', |
label = 'CiteSeerX', |
||
mode = 'manual', -- manual for custom validation of the "doi" |
|||
prefix = '//citeseerx.ist.psu.edu/viewdoc/summary?doi=', |
prefix = '//citeseerx.ist.psu.edu/viewdoc/summary?doi=', |
||
COinS = 'pre', -- use prefix value |
COinS = 'pre', -- use prefix value |
||
Linje 839: | Linje 1 862: | ||
encode = true, |
encode = true, |
||
separator = ' ', |
separator = ' ', |
||
}, |
|||
['DOI'] = { |
['DOI'] = { -- Used by InternetArchiveBot |
||
parameters = { 'doi', 'DOI' |
parameters = { 'doi', 'DOI'}, |
||
link = 'Digital |
link = 'Digital object identifier', |
||
q = 'Q25670', |
|||
label = 'doi', |
label = 'doi', |
||
mode = 'manual', |
|||
prefix = '//doi.org/', |
prefix = '//doi.org/', |
||
COinS = 'info:doi', |
COinS = 'info:doi', |
||
Linje 850: | Linje 1 873: | ||
encode = true, |
encode = true, |
||
custom_access = 'doi-access', |
custom_access = 'doi-access', |
||
}, |
|||
['EISSN'] = { |
['EISSN'] = { |
||
parameters = {'eissn', 'EISSN'}, |
parameters = {'eissn', 'EISSN'}, |
||
link = ' |
link = 'International Standard Serial Number#Electronic ISSN', |
||
q = 'Q46339674', |
|||
label = 'eISSN', |
label = 'eISSN', |
||
mode = 'manual', |
|||
prefix = '//www.worldcat.org/issn/', |
prefix = '//www.worldcat.org/issn/', |
||
COinS = 'rft.eissn', |
COinS = 'rft.eissn', |
||
encode = false, |
encode = false, |
||
separator = ' ', |
separator = ' ', |
||
}, |
|||
['HDL'] = { |
['HDL'] = { |
||
parameters = { 'hdl', 'HDL' }, |
parameters = { 'hdl', 'HDL' }, |
||
link = 'Handle System', |
link = 'Handle System', |
||
q = 'Q3126718', |
|||
label = 'hdl', |
label = 'hdl', |
||
mode = 'manual', |
|||
prefix = '//hdl.handle.net/', |
prefix = '//hdl.handle.net/', |
||
COinS = 'info:hdl', |
COinS = 'info:hdl', |
||
Linje 871: | Linje 1 894: | ||
encode = true, |
encode = true, |
||
custom_access = 'hdl-access', |
custom_access = 'hdl-access', |
||
}, |
|||
['ISBN'] = { |
['ISBN'] = { -- Used by InternetArchiveBot |
||
parameters = {'isbn', 'ISBN |
parameters = {'isbn', 'ISBN'}, |
||
link = 'ISBN', |
link = 'ISBN', |
||
q = 'Q33057', |
|||
label = 'ISBN', |
label = 'ISBN', |
||
mode = 'manual', |
|||
prefix = 'Spesial:Bokkilder/', |
prefix = 'Spesial:Bokkilder/', |
||
COinS = 'rft.isbn', |
COinS = 'rft.isbn', |
||
separator = ' ', |
separator = ' ', |
||
}, |
|||
['ISMN'] = { |
['ISMN'] = { |
||
parameters = {'ismn', 'ISMN'}, |
parameters = {'ismn', 'ISMN'}, |
||
link = 'ISMN', |
link = 'ISMN', |
||
q = 'Q1666938', |
|||
label = 'ISMN', |
label = 'ISMN', |
||
mode = 'manual', |
|||
prefix = '', -- not currently used; |
prefix = '', -- not currently used; |
||
COinS = |
COinS = nil, -- nil because we can't use pre or rft or info: |
||
separator = ' ', |
separator = ' ', |
||
}, |
|||
['ISSN'] = { |
['ISSN'] = { |
||
parameters = {'issn', 'ISSN'}, |
parameters = {'issn', 'ISSN'}, |
||
link = 'Internasjonalt standard periodikanummer', |
link = 'Internasjonalt standard periodikanummer', |
||
q = 'Q131276', |
|||
label = 'ISSN', |
label = 'ISSN', |
||
mode = 'manual', |
|||
prefix = '//www.worldcat.org/issn/', |
prefix = '//www.worldcat.org/issn/', |
||
COinS = 'rft.issn', |
COinS = 'rft.issn', |
||
encode = false, |
encode = false, |
||
separator = ' ', |
separator = ' ', |
||
}, |
|||
['JFM'] = { |
['JFM'] = { |
||
parameters = {'jfm', 'JFM'}, |
parameters = {'jfm', 'JFM'}, |
||
link = 'Jahrbuch über die Fortschritte der Mathematik', |
link = 'Jahrbuch über die Fortschritte der Mathematik', |
||
q = '', |
|||
label = 'JFM', |
label = 'JFM', |
||
mode = 'external', |
|||
prefix = '//zbmath.org/?format=complete&q=an:', |
prefix = '//zbmath.org/?format=complete&q=an:', |
||
COinS = 'pre', -- use prefix value |
COinS = 'pre', -- use prefix value |
||
encode = true, |
encode = true, |
||
separator = ' ', |
separator = ' ', |
||
}, |
|||
['JSTOR'] = { |
['JSTOR'] = { |
||
parameters = {'jstor', 'JSTOR'}, |
parameters = {'jstor', 'JSTOR'}, |
||
link = 'JSTOR', |
link = 'JSTOR', |
||
q = 'Q1420342', |
|||
label = 'JSTOR', |
label = 'JSTOR', |
||
prefix = '//www.jstor.org/stable/', -- protocol-relative tested 2013-09-04 |
|||
mode = 'external', |
|||
prefix = '//www.jstor.org/stable/', -- protocol relative tested 2013-09-04 |
|||
COinS = 'pre', -- use prefix value |
COinS = 'pre', -- use prefix value |
||
encode = false, |
encode = false, |
||
separator = ' ', |
separator = ' ', |
||
custom_access = 'jstor-access', |
custom_access = 'jstor-access', |
||
}, |
|||
['LCCN'] = { |
['LCCN'] = { |
||
parameters = {' |
parameters = {'lccn', 'LCCN'}, |
||
link = 'Library of Congress Control Number', |
link = 'Library of Congress Control Number', |
||
q = 'Q620946', |
|||
label = 'LCCN', |
label = 'LCCN', |
||
prefix = '//lccn.loc.gov/', -- protocol-relative tested 2015-12-28 |
|||
mode = 'manual', |
|||
COinS = 'info:lccn', |
|||
prefix = '//lccn.loc.gov/', -- protocol relative tested 2015-12-28 |
|||
COinS = 'info:lccn', -- use prefix value |
|||
encode = false, |
encode = false, |
||
separator = ' ', |
separator = ' ', |
||
}, |
|||
['MR'] = { |
['MR'] = { |
||
parameters = {' |
parameters = {'mr', 'MR'}, |
||
link = 'Mathematical Reviews', |
link = 'Mathematical Reviews', |
||
q = 'Q211172', |
|||
label = 'MR', |
label = 'MR', |
||
prefix = '//www.ams.org/mathscinet-getitem?mr=', -- protocol-relative tested 2013-09-04 |
|||
mode = 'external', |
|||
prefix = '//www.ams.org/mathscinet-getitem?mr=', -- protocol relative tested 2013-09-04 |
|||
COinS = 'pre', -- use prefix value |
COinS = 'pre', -- use prefix value |
||
encode = true, |
encode = true, |
||
separator = ' ', |
separator = ' ', |
||
}, |
|||
['OCLC'] = { |
['OCLC'] = { |
||
parameters = {' |
parameters = {'oclc', 'OCLC'}, |
||
link = 'OCLC', |
link = 'OCLC', |
||
q = 'Q190593', |
|||
label = 'OCLC', |
label = 'OCLC', |
||
mode = 'manual', |
|||
prefix = '//www.worldcat.org/oclc/', |
prefix = '//www.worldcat.org/oclc/', |
||
COinS = 'info:oclcnum', |
COinS = 'info:oclcnum', |
||
encode = true, |
encode = true, |
||
separator = ' ', |
separator = ' ', |
||
id_limit = 9999999999, -- 10-digits |
|||
}, |
|||
}, |
|||
['OL'] = { |
['OL'] = { |
||
parameters = { 'ol', 'OL' }, |
parameters = { 'ol', 'OL' }, |
||
link = 'Open Library', |
link = 'Open Library', |
||
q = 'Q1201876', |
|||
label = 'OL', |
label = 'OL', |
||
mode = 'manual', |
|||
prefix = '//openlibrary.org/', |
prefix = '//openlibrary.org/', |
||
COinS = 'url', |
|||
COinS = nil, -- no COinS for this id (needs thinking on implementation because /authors/books/works/OL) |
|||
separator = ' ', |
separator = ' ', |
||
encode = true, |
encode = true, |
||
custom_access = 'ol-access', |
custom_access = 'ol-access', |
||
}, |
|||
['OSTI'] = { |
['OSTI'] = { |
||
parameters = {' |
parameters = {'osti', 'OSTI'}, |
||
link = 'Office of Scientific and Technical Information', |
link = 'Office of Scientific and Technical Information', |
||
q = 'Q2015776', |
|||
label = 'OSTI', |
label = 'OSTI', |
||
prefix = '//www.osti.gov/biblio/', -- protocol-relative tested 2018-09-12 |
|||
mode = 'external', |
|||
prefix = '//www.osti.gov/energycitations/product.biblio.jsp?osti_id=', -- protocol relative tested 2013-09-04 |
|||
COinS = 'pre', -- use prefix value |
COinS = 'pre', -- use prefix value |
||
encode = true, |
encode = true, |
||
separator = ' ', |
separator = ' ', |
||
id_limit = 23010000, |
|||
custom_access = 'osti-access', |
custom_access = 'osti-access', |
||
}, |
|||
['PMC'] = { |
['PMC'] = { |
||
parameters = {' |
parameters = {'pmc', 'PMC'}, |
||
link = 'PubMed Central', |
link = 'PubMed Central', |
||
q = 'Q229883', |
|||
label = 'PMC', |
label = 'PMC', |
||
mode = 'manual', |
|||
prefix = '//www.ncbi.nlm.nih.gov/pmc/articles/PMC', |
prefix = '//www.ncbi.nlm.nih.gov/pmc/articles/PMC', |
||
suffix = |
suffix = '', |
||
COinS = 'pre', -- use prefix value |
COinS = 'pre', -- use prefix value |
||
encode = true, |
encode = true, |
||
separator = ' ', |
separator = ' ', |
||
id_limit = 9300000, |
|||
access = 'free', -- free to read |
access = 'free', -- free to read |
||
}, |
|||
['PMID'] = { |
['PMID'] = { |
||
parameters = {' |
parameters = {'pmid', 'PMID'}, |
||
link = 'PubMed Identifier', |
link = 'PubMed Identifier', |
||
q = 'Q2082879', |
|||
label = 'PMID', |
label = 'PMID', |
||
prefix = '//pubmed.ncbi.nlm.nih.gov/', |
|||
mode = 'manual', |
|||
prefix = '//www.ncbi.nlm.nih.gov/pubmed/', |
|||
COinS = 'info:pmid', |
COinS = 'info:pmid', |
||
encode = false, |
encode = false, |
||
separator = ' ', |
separator = ' ', |
||
id_limit = 35900000, |
|||
}, |
|||
}, |
|||
['RFC'] = { |
['RFC'] = { |
||
parameters = {' |
parameters = {'rfc', 'RFC'}, |
||
link = 'Request for Comments', |
link = 'Request for Comments', |
||
q = 'Q212971', |
|||
label = 'RFC', |
label = 'RFC', |
||
mode = 'external', |
|||
prefix = '//tools.ietf.org/html/rfc', |
prefix = '//tools.ietf.org/html/rfc', |
||
COinS = 'pre', -- use prefix value |
COinS = 'pre', -- use prefix value |
||
encode = false, |
encode = false, |
||
separator = ' ', |
separator = ' ', |
||
id_limit = 9300, |
|||
access = 'free', -- free to read |
access = 'free', -- free to read |
||
}, |
|||
['SBN'] = { |
|||
parameters = {'sbn', 'SBN'}, |
|||
link = 'Standard Book Number', -- redirect to International_Standard_Book_Number#History |
|||
label = 'SBN', |
|||
prefix = 'Special:BookSources/0-', -- prefix has leading zero necessary to make 9-digit sbn a 10-digit isbn |
|||
COinS = nil, -- nil because we can't use pre or rft or info: |
|||
separator = ' ', |
|||
}, |
|||
['SSRN'] = { |
['SSRN'] = { |
||
parameters = {' |
parameters = {'ssrn', 'SSRN'}, |
||
link = 'Social Science Research Network', |
link = 'Social Science Research Network', |
||
q = 'Q7550801', |
|||
label = 'SSRN', |
label = 'SSRN', |
||
prefix = '//ssrn.com/abstract=', -- protocol-relative tested 2013-09-04 |
|||
mode = 'manual', |
|||
prefix = '//ssrn.com/abstract=', -- protocol relative tested 2013-09-04 |
|||
COinS = 'pre', -- use prefix value |
COinS = 'pre', -- use prefix value |
||
encode = true, |
encode = true, |
||
separator = ' ', |
separator = ' ', |
||
id_limit = 4200000, |
|||
access = 'free', -- always free to read |
|||
custom_access = 'ssrn-access', |
|||
}, |
|||
}, |
|||
['S2CID'] = { |
|||
parameters = {'s2cid', 'S2CID'}, |
|||
link = 'Semantic Scholar', |
|||
q = 'Q22908627', |
|||
label = 'S2CID', |
|||
prefix = 'https://api.semanticscholar.org/CorpusID:', |
|||
COinS = 'pre', -- use prefix value |
|||
encode = false, |
|||
separator = ' ', |
|||
id_limit = 254000000, |
|||
custom_access = 's2cid-access', |
|||
}, |
|||
['USENETID'] = { |
['USENETID'] = { |
||
parameters = {'message-id'}, |
parameters = {'message-id'}, |
||
link = 'Usenet', |
link = 'Usenet', |
||
q = 'Q193162', |
|||
label = 'Usenet:', |
label = 'Usenet:', |
||
mode = 'manual', |
|||
prefix = 'news:', |
prefix = 'news:', |
||
encode = false, |
encode = false, |
||
COinS = 'pre', -- use prefix value |
COinS = 'pre', -- use prefix value |
||
separator = ' ', |
separator = ' ', |
||
}, |
|||
['ZBL'] = { |
['ZBL'] = { |
||
parameters = {' |
parameters = {'zbl', 'ZBL' }, |
||
link = 'Zentralblatt MATH', |
link = 'Zentralblatt MATH', |
||
q = 'Q190269', |
|||
label = 'Zbl', |
label = 'Zbl', |
||
mode = 'external', |
|||
prefix = '//zbmath.org/?format=complete&q=an:', |
prefix = '//zbmath.org/?format=complete&q=an:', |
||
COinS = 'pre', -- use prefix value |
COinS = 'pre', -- use prefix value |
||
encode = true, |
encode = true, |
||
separator = ' ', |
separator = ' ', |
||
}, |
|||
} |
} |
||
--[[--------------------------< E X P O R T S >--------------------------------- |
|||
]] |
|||
return { |
return { |
||
use_identifier_redirects = true, -- when true use redirect name for identifier label links; always true at en.wiki |
|||
local_lang_cat_enable = false; -- when true categorizes pages where |language=<local wiki's language>; always false at en.wiki |
|||
date_name_auto_xlate_enable = true; -- when true translates English month-names to the local-wiki's language month names; always false at en.wiki |
|||
date_digit_auto_xlate_enable = true; -- when true translates Western date digit to the local-wiki's language digits (date_names['local_digits']); always false at en.wiki |
|||
global_df = 'dmy-all', -- tables and variables created when this module is loaded |
|||
punct_skip = build_skip_table (punct_skip, punct_meta_params), |
|||
url_skip = build_skip_table (url_skip, url_meta_params), |
|||
aliases = aliases, |
aliases = aliases, |
||
special_case_translation = special_case_translation, |
special_case_translation = special_case_translation, |
||
date_names = date_names, |
|||
defaults = defaults, |
|||
err_msg_supl = err_msg_supl, |
|||
error_conditions = error_conditions, |
error_conditions = error_conditions, |
||
editor_markup_patterns = editor_markup_patterns, |
|||
et_al_patterns = et_al_patterns, |
|||
id_handlers = id_handlers, |
id_handlers = id_handlers, |
||
keywords_lists = keywords_lists, |
|||
keywords = keywords, |
|||
keywords_xlate = keywords_xlate, |
|||
stripmarkers=stripmarkers, |
stripmarkers=stripmarkers, |
||
invisible_chars = invisible_chars, |
invisible_chars = invisible_chars, |
||
invisible_defs = invisible_defs, |
|||
indic_script = indic_script, |
|||
emoji = emoji, |
|||
maint_cats = maint_cats, |
maint_cats = maint_cats, |
||
messages = messages, |
messages = messages, |
||
Linje 1 053: | Linje 2 122: | ||
prop_cats = prop_cats, |
prop_cats = prop_cats, |
||
script_lang_codes = script_lang_codes, |
script_lang_codes = script_lang_codes, |
||
lang_code_remap = lang_code_remap, |
|||
lang_name_remap = lang_name_remap, |
|||
this_wiki_code = this_wiki_code, |
|||
title_types = title_types, |
title_types = title_types, |
||
uncategorized_namespaces = uncategorized_namespaces, |
uncategorized_namespaces = uncategorized_namespaces, |
||
Linje 1 059: | Linje 2 131: | ||
templates_using_issue = templates_using_issue, |
templates_using_issue = templates_using_issue, |
||
templates_not_using_page = templates_not_using_page, |
templates_not_using_page = templates_not_using_page, |
||
vol_iss_pg_patterns = vol_iss_pg_patterns, |
|||
inter_wiki_map = inter_wiki_map, |
|||
mw_languages_by_tag_t = mw_languages_by_tag_t, |
|||
mw_languages_by_name_t = mw_languages_by_name_t, |
|||
citation_class_map_t = citation_class_map_t, |
|||
citation_issue_t = citation_issue_t, |
|||
citation_no_volume_t = citation_no_volume_t, |
|||
} |
} |