Module:Citation/CS1/Configuration: Difference between revisions
synch from sandbox;
m>Trappist the monk (unsupport |ARXIV= and |BIBCODE=;) |
m>Trappist the monk (synch from sandbox;) |
||
Line 5: | Line 5: | ||
-- https://git.wikimedia.org/blob/mediawiki%2Fcore.git/69cd73811f7aadd093050dbf20ed70ef0b42a713/skins%2Fcommon%2FcommonElements.css#L199 | -- https://git.wikimedia.org/blob/mediawiki%2Fcore.git/69cd73811f7aadd093050dbf20ed70ef0b42a713/skins%2Fcommon%2FcommonElements.css#L199 | ||
local code_style="color:inherit; border:inherit; padding:inherit;"; | 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 >------------------------------ | ||
Line 18: | Line 19: | ||
local uncategorized_subpages = {'/[Ss]andbox', '/[Tt]estcases'}; -- list of Lua patterns found in page names of pages we should not categorize | local uncategorized_subpages = {'/[Ss]andbox', '/[Tt]estcases'}; -- 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 >-------------------------------------------------------------- | ||
Line 101: | Line 103: | ||
['unknown_argument_map'] = 'Argument map not defined for this variable', | ['unknown_argument_map'] = 'Argument map not defined for this variable', | ||
['bare_url_no_origin'] = 'Bare url found but origin indicator is nil or empty', | ['bare_url_no_origin'] = 'Bare url found but origin indicator is nil or empty', | ||
} | } | ||
--[[--------------------------< P R E S E N T A T I O N >------------------------------------------------------ | --[[--------------------------< P R E S E N T A T I O N >------------------------------------------------------ | ||
Line 109: | Line 112: | ||
]] | ]] | ||
local presentation = | local presentation = | ||
{ | { | ||
Line 139: | Line 143: | ||
['kern-left'] = '<span style="padding-left:0.2em;">$1</span>$2', -- spacing to use when title contains leading single or double quote mark | ['kern-left'] = '<span style="padding-left:0.2em;">$1</span>$2', -- spacing to use when title contains leading single or double quote mark | ||
['kern-right'] = '$1<span style="padding-right:0.2em;">$2</span>', -- spacing to use when title contains trailing single or double quote mark | ['kern-right'] = '$1<span style="padding-right:0.2em;">$2</span>', -- spacing to use when title contains trailing single or double quote mark | ||
-- these for simple wikilinked titles [["text]], [[text"]] and [["text"]] | |||
-- span wraps entire wikilink | |||
['kern-wl-left'] = '<span style="padding-left:0.2em;">$1</span>', -- when title contains leading single or double quote mark | |||
['kern-wl-right'] = '<span style="padding-right:0.2em;">$1</span>', -- when title contains trailing single or double quote mark | |||
['kern-wl-both'] = '<span style="padding-left:0.2em;padding-right:0.2em;">$1</span>', -- when title contains leading and trailing single or double quote marks | |||
['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> | ||
Line 177: | Line 187: | ||
['ChapterFormat'] = {'chapter-format', 'contribution-format', 'section-format'}; | ['ChapterFormat'] = {'chapter-format', 'contribution-format', 'section-format'}; | ||
['ChapterURL'] = {'chapter-url', 'chapterurl', 'contribution-url', 'contributionurl', 'section-url', 'sectionurl'}, | ['ChapterURL'] = {'chapter-url', 'chapterurl', 'contribution-url', 'contributionurl', 'section-url', 'sectionurl'}, | ||
['ChapterUrlAccess'] = 'chapter-url-access', | |||
['Class'] = 'class', -- cite arxiv and arxiv identifiers | ['Class'] = 'class', -- cite arxiv and arxiv identifiers | ||
['Collaboration'] = 'collaboration', | ['Collaboration'] = 'collaboration', | ||
Line 293: | Line 304: | ||
['TranslatorList-Link'] = {'translator-link#', 'translator#-link'}, | ['TranslatorList-Link'] = {'translator-link#', 'translator#-link'}, | ||
['TranslatorList-Mask'] = {'translator-mask#', 'translator#-mask'}, | ['TranslatorList-Mask'] = {'translator-mask#', 'translator#-mask'}, | ||
} | } | ||
--[[--------------------------< S P E C I A L C A S E T R A N S L A T I O N S >---------------------------- | --[[--------------------------< S P E C I A L C A S E T R A N S L A T I O N S >---------------------------- | ||
Line 313: | Line 325: | ||
['editors'] = "editors", | ['editors'] = "editors", | ||
} | } | ||
--[[--------------------------< D E F A U L T S >-------------------------------------------------------------- | --[[--------------------------< D E F A U L T S >-------------------------------------------------------------- | ||
Line 324: | Line 337: | ||
['DeadURL'] = 'yes', | ['DeadURL'] = 'yes', | ||
} | } | ||
--[[--------------------------< D A T E _ N A M E S >---------------------------------------------------------- | |||
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 ISO DIS 8601:2016 part 2 §4.7 'Divisions of a year'. The standard | |||
defines various divisions using numbers 21-41. cs1|2 only supports generic seasons. ISO DIS 8601:2016 does support | |||
the distinction between north and south hemispere seasons but cs1|2 has no way to make that distinction. | |||
The standard does not address 'named' dates so, for the purposes of cs1|2, Christmas is defined here as 99, which | |||
should be out of the ISO DIS 8601:2016 range of uses for a while. | |||
]] | |||
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}; | |||
['season'] = {['Winter']=24, ['Spring']=21, ['Summer']=22, ['Fall']=23, ['Autumn']=23}; | |||
['named'] = {['Christmas']=99}; | |||
}, | |||
['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}; | |||
['season'] = {['Winter']=24, ['Spring']=21, ['Summer']=22, ['Fall']=23, ['Autumn']=23}; | |||
['named'] = {['Christmas']=99}; | |||
} | |||
} | |||
Line 337: | Line 384: | ||
local templates_using_issue = {'citation', 'conference', 'episode', 'interview', 'journal', 'magazine', 'map', 'news'} | local templates_using_issue = {'citation', 'conference', 'episode', 'interview', 'journal', 'magazine', 'map', 'news'} | ||
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'} | ||
Line 405: | Line 451: | ||
-- {'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 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 | |||
-- the pattern is used by has_invisible_chars() and coins_cleanup() | |||
-- TODO: find a better place for this? | |||
local indic_script = '[\224\164\128-\224\181\191\234\163\160-\234\163\191]'; | |||
--[[--------------------------< L A N G U A G E S >------------------------------------------------------------ | --[[--------------------------< L A N G U A G E S >------------------------------------------------------------ | ||
Line 415: | Line 478: | ||
local script_lang_codes = {'am', 'ar', 'be', 'bg', 'bn', 'bs', 'dv', 'el', -- ISO 639-1 codes only for |script-title= and |script-chapter= | local script_lang_codes = {'am', 'ar', 'be', 'bg', 'bn', 'bs', 'dv', 'el', -- ISO 639-1 codes only for |script-title= and |script-chapter= | ||
'fa', 'he', 'hy', 'ja', 'ka', 'kn', 'ko', 'ku', | 'fa', 'gu', 'he', 'hy', 'ja', 'ka', 'kn', 'ko', | ||
'ku', 'mk', 'ml', 'mr', 'my', 'ps', 'ru', 'sd', | |||
'sr', 'tg', 'th', 'uk', 'ug', 'ur', 'yi', 'zh'}; | |||
Line 448: | Line 511: | ||
['untitled'] = 'CS1 maint: Untitled periodical', | ['untitled'] = 'CS1 maint: Untitled periodical', | ||
} | } | ||
--[[--------------------------< P R O P E R T I E S _ C A T E G O R I E S >------------------------------------ | --[[--------------------------< P R O P E R T I E S _ C A T E G O R I E S >------------------------------------ | ||
Line 461: | Line 525: | ||
['script_with_name'] = 'CS1 uses $1-language script ($2)', -- |script-title=xx: has matching category; $1 is language name, $2 is ISO639-1 code | ['script_with_name'] = 'CS1 uses $1-language script ($2)', -- |script-title=xx: has matching category; $1 is language name, $2 is ISO639-1 code | ||
} | } | ||
Line 481: | Line 544: | ||
['thesis'] = 'Thesis', | ['thesis'] = 'Thesis', | ||
} | } | ||
--[[--------------------------< E R R O R _ C O N D I T I O N S >---------------------------------------------- | --[[--------------------------< E R R O R _ C O N D I T I O N S >---------------------------------------------- | ||
Line 578: | Line 642: | ||
anchor = 'bad_issn', | anchor = 'bad_issn', | ||
category = 'CS1 errors: ISSN', | category = 'CS1 errors: ISSN', | ||
hidden = false }, | |||
bad_jfm = { | |||
message = 'Check <code style="'..code_style..'">|jfm=</code> value', | |||
anchor = 'bad_jfm', | |||
category = 'CS1 errors: JFM', | |||
hidden = false }, | hidden = false }, | ||
bad_lccn = { | bad_lccn = { | ||
Line 584: | Line 653: | ||
category = 'CS1 errors: LCCN', | category = 'CS1 errors: LCCN', | ||
hidden = false }, | hidden = false }, | ||
bad_usenet_id = { | |||
message = 'Check <code style="'..code_style..'">|message-id=</code> value', | message = 'Check <code style="'..code_style..'">|message-id=</code> value', | ||
anchor = 'bad_message_id', | anchor = 'bad_message_id', | ||
category = 'CS1 errors: message-id', | category = 'CS1 errors: message-id', | ||
hidden = false }, | |||
bad_mr = { | |||
message = 'Check <code style="'..code_style..'">|mr=</code> value', | |||
anchor = 'bad_mr', | |||
category = 'CS1 errors: MR', | |||
hidden = false }, | hidden = false }, | ||
bad_ol = { | bad_ol = { | ||
Line 623: | Line 697: | ||
anchor = 'bad_url', | anchor = 'bad_url', | ||
category = 'Pages with URL errors', | category = 'Pages with URL errors', | ||
hidden = false }, | |||
bad_zbl = { | |||
message = 'Check <code style="'..code_style..'">|zbl=</code> value', | |||
anchor = 'bad_zbl', | |||
category = 'CS1 errors: ZBL', | |||
hidden = false }, | hidden = false }, | ||
bare_url_missing_title = { | bare_url_missing_title = { | ||
Line 628: | Line 707: | ||
anchor = 'bare_url_missing_title', | anchor = 'bare_url_missing_title', | ||
category = 'Pages with citations having bare URLs', | category = 'Pages with citations having bare URLs', | ||
hidden = false }, | |||
biorxiv_missing = { | |||
message = '<code style="'..code_style..'">|biorxiv=</code> required', | |||
anchor = 'biorxiv_missing', | |||
category = 'CS1 errors: bioRxiv', -- same as bad bioRxiv | |||
hidden = false }, | hidden = false }, | ||
chapter_ignored = { | chapter_ignored = { | ||
Line 638: | Line 722: | ||
anchor = 'citation_missing_title', | anchor = 'citation_missing_title', | ||
category = 'Pages with citations lacking titles', | category = 'Pages with citations lacking titles', | ||
hidden = false }, | |||
citeseerx_missing = { | |||
message = '<code style="'..code_style..'">|citeseerx=</code> required', | |||
anchor = 'citeseerx_missing', | |||
category = 'CS1 errors: citeseerx', -- same as bad citeseerx | |||
hidden = false }, | hidden = false }, | ||
cite_web_url = { -- this error applies to cite web and to cite podcast | cite_web_url = { -- this error applies to cite web and to cite podcast | ||
Line 734: | Line 823: | ||
category = 'CS1 errors: URL–wikilink conflict', -- uses ndash | category = 'CS1 errors: URL–wikilink conflict', -- uses ndash | ||
hidden = false }, | hidden = false }, | ||
} | } | ||
--[[--------------------------< I D _ H A N D L E R S >-------------------------------------------------------- | --[[--------------------------< I D _ H A N D L E R S >-------------------------------------------------------- | ||
Line 786: | Line 876: | ||
link = 'Bibcode', | link = 'Bibcode', | ||
label = 'Bibcode', | label = 'Bibcode', | ||
mode = 'manual', | mode = 'manual', | ||
prefix = 'http://adsabs.harvard.edu/abs/', | prefix = 'http://adsabs.harvard.edu/abs/', | ||
Line 880: | Line 969: | ||
link = 'Jahrbuch über die Fortschritte der Mathematik', | link = 'Jahrbuch über die Fortschritte der Mathematik', | ||
label = 'JFM', | label = 'JFM', | ||
mode = ' | mode = 'manual', | ||
prefix = '//zbmath.org/?format=complete&q=an:', | prefix = '//zbmath.org/?format=complete&q=an:', | ||
COinS = 'pre', -- use prefix value | COinS = 'pre', -- use prefix value | ||
Line 911: | Line 1,000: | ||
link = 'Mathematical Reviews', | link = 'Mathematical Reviews', | ||
label = 'MR', | label = 'MR', | ||
mode = ' | mode = 'manual', | ||
prefix = '//www.ams.org/mathscinet-getitem?mr=', -- protocol relative tested 2013-09-04 | prefix = '//www.ams.org/mathscinet-getitem?mr=', -- protocol relative tested 2013-09-04 | ||
COinS = 'pre', -- use prefix value | COinS = 'pre', -- use prefix value | ||
Line 1,007: | Line 1,096: | ||
link = 'Zentralblatt MATH', | link = 'Zentralblatt MATH', | ||
label = 'Zbl', | label = 'Zbl', | ||
mode = ' | mode = 'manual', | ||
prefix = '//zbmath.org/?format=complete&q=an:', | prefix = '//zbmath.org/?format=complete&q=an:', | ||
COinS = 'pre', -- use prefix value | COinS = 'pre', -- use prefix value | ||
Line 1,013: | Line 1,102: | ||
separator = ' ', | separator = ' ', | ||
}, | }, | ||
} | } | ||
return { | return { | ||
Line 1,019: | Line 1,109: | ||
special_case_translation = special_case_translation, | special_case_translation = special_case_translation, | ||
defaults = defaults, | defaults = defaults, | ||
date_names = date_names, | |||
error_conditions = error_conditions, | error_conditions = error_conditions, | ||
id_handlers = id_handlers, | id_handlers = id_handlers, | ||
Line 1,024: | Line 1,115: | ||
stripmarkers=stripmarkers, | stripmarkers=stripmarkers, | ||
invisible_chars = invisible_chars, | invisible_chars = invisible_chars, | ||
indic_script = indic_script, | |||
maint_cats = maint_cats, | maint_cats = maint_cats, | ||
messages = messages, | messages = messages, |