نسخهٔ فعلی |
متن شما |
خط ۱: |
خط ۱: |
| | |
| | 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 >------------------------------ |
خط ۷: |
خط ۱۳: |
|
| |
|
| ]] | | ]] |
| local uncategorized_namespaces = { 'User', 'Talk', 'User_talk', 'Wikipedia_talk', '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'}; -- list of Lua patterns found in page names of pages we should not categorize
| |
|
| |
|
| | citation_config.uncategorized_namespaces = { 'User', 'Talk', 'User_talk', 'Wikipedia_talk', 'File_talk', 'Template_talk', |
| | 'Help_talk', 'Category_talk', 'Portal_talk', 'Book_talk', 'Draft', 'Draft_talk', 'Education_Program_talk', |
| | 'Module_talk', 'MediaWiki_talk' }; |
|
| |
|
| --[[--------------------------< M E S S A G E S >-------------------------------------------------------------- | | --[[--------------------------< M E S S A G E S >-------------------------------------------------------------- |
خط ۲۲: |
خط ۲۸: |
| ]] | | ]] |
|
| |
|
| local messages = {
| | citation_config.messages = { |
| ['agency'] = '$1 $2', -- $1 is sepc, $2 is agency
| | ['published'] = 'published $1', |
| ['archived-dead'] = 'Archived from $1 on $2',
| | ['lay summary'] = 'Lay summary', |
| ['archived-live'] = '$1 from the original on $2',
| | ['retrieved'] = 'Retrieved $1', |
| ['archived-missing'] = 'Archived from the original$1 on $2',
| | ['inactive'] = 'inactive', |
| ['archived'] = 'Archived',
| | ['archived-dead'] = 'Archived from $1 on $2', |
| ['by'] = 'By', -- contributions to authored works: introduction, foreword, afterword
| | ['archived-not-dead'] = '$1 from the original on $2', |
| ['cartography'] = 'Cartography by $1',
| | ['archived-missing'] = 'Archived from the original$1 on $2', |
| ['editor'] = 'ed.',
| | ['archived'] = 'Archived', |
| ['editors'] = 'eds.',
| | ['original'] = 'the original', |
| ['edition'] = '($1 ed.)',
| | ['editor'] = 'ed.', |
| ['episode'] = 'Episode $1',
| | ['editors'] = 'eds.', |
| ['et al'] = 'et al.',
| | ['edition'] = '($1 ed.)', |
| ['in'] = 'In', -- edited works
| | ['episode'] = 'episode', |
| ['inactive'] = 'inactive',
| | ['season'] = 'season', |
| ['inset'] = '$1 inset',
| | ['series'] = 'series', |
| ['interview'] = 'Interviewed by $1',
| | ['cartography'] = 'Cartography by $1', |
| ['lay summary'] = 'Lay summary',
| | ['section'] = 'Section $1', |
| ['newsgroup'] = '[[Usenet newsgroup|Newsgroup]]: $1',
| | ['inset'] = '$1 inset', |
| ['original'] = 'the original',
| | ['written'] = 'Written at $1', |
| ['origyear'] = ' [$1]',
| | ['in'] = 'In', |
| ['published'] = ' (published $1)',
| | ['et al'] = 'et al.', |
| ['retrieved'] = 'Retrieved $1',
| | |
| ['season'] = 'Season $1',
| | ['subscription'] = '<span style="font-size:0.95em; font-size:90%; color:#555">(subscription required (<span title="Sources are not required to be available online. Online sources do not have to be freely available. The site may require a paid subscription." style="border-bottom:1px dotted;cursor:help">help</span>))</span>' .. |
| ['section'] = '§ $1',
| | '[[Category:Pages containing links to subscription-only content]]', |
| ['sections'] = '§§ $1',
| |
| ['series'] = '$1 $2', -- $1 is sepc, $2 is series
| |
| ['seriesnum'] = 'Series $1',
| |
| ['translated'] = 'Translated by $1',
| |
| ['type'] = ' ($1)', -- for titletype
| |
| ['written'] = 'Written at $1',
| |
|
| |
|
| ['vol'] = '$1 Vol. $2', -- $1 is sepc; bold journal style volume is in presentation{}
| | ['registration']='<span style="font-size:0.95em; font-size:90%; color:#555">(registration required (<span title="Sources are not required to be available online. Online sources do not have to be freely available. The site may require registration." style="border-bottom:1px dotted;cursor:help">help</span>))</span>' .. |
| ['vol-no'] = '$1 Vol. $2 no. $3', -- sepc, volume, issue
| | '[[Category:Pages with login required references or sources]]', |
| ['issue'] = '$1 No. $2', -- $1 is sepc
| | |
| | ['language'] = '(in $1)', |
| | ['via'] = " – via $1", |
| | ['event'] = 'Event occurs at', |
| | ['minutes'] = 'minutes in', |
|
| |
|
| ['j-vol'] = '$1 $2', -- sepc, volume; bold journal volume is in presentation{}
| | ['parameter-separator'] = ', ', |
| ['j-issue'] = ' ($1)',
| | ['parameter-final-separator'] = ', and ', |
| | | ['parameter-pair-separator'] = ' and ', |
| ['nopp'] = '$1 $2'; -- page(s) without prefix; $1 is sepc
| |
| | |
| ['p-prefix'] = "$1 p. $2", -- $1 is sepc
| |
| ['pp-prefix'] = "$1 pp. $2", -- $1 is sepc
| |
| ['j-page(s)'] = ': $1', -- same for page and pages
| |
| | |
| ['sheet'] = '$1 Sheet $2', -- $1 is sepc
| |
| ['sheets'] = '$1 Sheets $2', -- $1 is sepc
| |
| ['j-sheet'] = ': Sheet $1',
| |
| ['j-sheets'] = ': Sheets $1',
| |
|
| |
| ['subscription'] = '<span class="cs1-subscription">(Subscription required (<span title="The site requires a paid subscription to access this page.">help</span>))</span>' ..
| |
| '[[Category:Pages containing links to subscription-only content]]',
| |
|
| |
| ['registration']='<span class="cs1-registration">(Registration required (<span title="The site requires registration to access this page.">help</span>))</span>' ..
| |
| '[[Category:Pages with login required references or sources]]',
| |
|
| |
| ['language'] = '(in $1)',
| |
| ['via'] = " – via $1",
| |
| ['event'] = 'Event occurs at',
| |
| ['minutes'] = 'minutes in',
| |
|
| |
| ['parameter-separator'] = ', ',
| |
| ['parameter-final-separator'] = ', and ',
| |
| ['parameter-pair-separator'] = ' and ',
| |
|
| |
| -- Determines the location of the help page
| |
| ['help page link'] = 'Help:CS1 errors',
| |
| ['help page label'] = 'help',
| |
|
| |
| -- Internal errors (should only occur if configuration is bad)
| |
| ['undefined_error'] = 'Called with an undefined error condition',
| |
| ['unknown_manual_ID'] = 'Unrecognized manual ID mode',
| |
| ['unknown_ID_mode'] = 'Unrecognized ID mode',
| |
| ['unknown_argument_map'] = 'Argument map not defined for this variable',
| |
| ['bare_url_no_origin'] = 'Bare url found but origin indicator is nil or empty',
| |
| }
| |
| | |
| | |
| --[=[-------------------------< 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.
| |
| | |
| TODO: detect wikilinked et al.: [[et al]].
| |
| | |
| ]=]
| |
| | |
| local et_al_patterns = {
| |
| "[;,]? *[\"']*%f[%a][Ee][Tt]%.? *[Aa][Ll][%.\"']*$", -- variations on the 'et al' theme
| |
| "[;,]? *[\"']*%f[%a][Ee][Tt]%.? *[Aa][Ll][Ii][Aa][%.\"']*$", -- variations on the 'et alia' theme
| |
| "[;,]? *%f[%a]and [Oo]thers", -- and alternate to et al.
| |
| }
| |
| | |
| | |
| --[[--------------------------< E D I T O R _ M A R K U P _ P A T T E R N S >----------------------------------
| |
| | |
| This table provides Lua patterns for the phrase "ed" and variants in name text
| |
| (author, editor, etc.). The main module uses these to identify and emit the
| |
| 'extra_text_names' message. (It is not the only series of patterns for this message.)
| |
| | |
| ]]
| |
| local editor_markup_patterns = { -- these patterns match annotations at end of name
| |
| '%f[%(%[][%(%[]%s*[Ee][Dd][Ss]?%.?%s*[%)%]]?$', -- (ed) or (eds): leading '(', case insensitive 'ed', optional 's', '.' and/or ')'
| |
| '[,%.%s]%f[e]eds?%.?$', -- ed or eds: without '('or ')'; case sensitive (ED could be initials Ed could be name)
| |
| '%f[%(%[][%(%[]%s*[Ee][Dd][Ii][Tt][Oo][Rr][Ss]?%.?%s*[%)%]]?$', -- (editor) or (editors): leading '(', case insensitive, optional '.' and/or ')'
| |
| '[,%.%s]%f[Ee][Ee][Dd][Ii][Tt][Oo][Rr][Ss]?%.?$', -- editor or editors: without '('or ')'; case insensitive
| |
|
| |
| -- these patterns match annotations at beginning of name
| |
| '^eds?[%.,;]', -- ed. or eds.: lower case only, optional 's', requires '.'
| |
| '^[%(%[]%s*[Ee][Dd][Ss]?%.?%s*[%)%]]', -- (ed) or (eds): also sqare brackets, case insensitive, optional 's', '.'
| |
| '^[%(%[]?%s*[Ee][Dd][Ii][Tt][Oo][Rr][Ss]?%A', -- (editor or (editors: also sq brackets, case insensitive, optional brackets, 's'
| |
| '^[%(%[]?%s*[Ee][Dd][Ii][Tt][Ee][Dd]%A', -- (edited: also sq brackets, case insensitive, optional brackets
| |
| }
| |
|
| |
|
| | -- Determines the location of the help page |
| | ['help page link'] = 'Help:CS1 errors', |
| | ['help page label'] = 'help', |
| | |
| | -- Internal errors (should only occur if configuration is bad) |
| | ['undefined_error'] = 'Called with an undefined error condition', |
| | ['unknown_manual_ID'] = 'Unrecognized manual ID mode', |
| | ['unknown_ID_mode'] = 'Unrecognized ID mode', |
| | ['unknown_argument_map'] = 'Argument map not defined for this variable', |
| | ['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 >------------------------------------------------------ |
خط ۱۴۳: |
خط ۸۴: |
|
| |
|
| ]] | | ]] |
| | | citation_config.presentation = |
| local presentation =
| |
| { | | { |
| -- Error output | | -- Error output |
| -- .error class is specified at https://git.wikimedia.org/blob/mediawiki%2Fcore.git/9553bd02a5595da05c184f7521721fb1b79b3935/skins%2Fcommon%2Fshared.css#L538 | | -- .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 class="cs1-hidden-error error citation-comment">$1</span>', | | ['hidden-error'] = '<span style="display:none;font-size:100%" class="error citation-comment">$1</span>', |
| ['visible-error'] = '<span class="cs1-visible-error error citation-comment">$1</span>', | | ['visible-error'] = '<span style="font-size:100%" class="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-id'] = '<cite id="$1" class="$2">$3</cite>'; -- for use when |ref= is set
| |
|
| |
| ['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='Freely accessible'}, -- classes defined in Module:Citation/CS1/styles.css
| |
| ['registration'] = {class='cs1-lock-registration', title='Free registration required'},
| |
| ['limited'] = {class='cs1-lock-limited', title='Free access subject to limited trial, subscription normally required'},
| |
| ['subscription'] = {class='cs1-lock-subscription', title='Paid subscription required'},
| |
|
| |
| ['interwiki-icon'] = '<span class="$1" title="$2">$3</span>',
| |
| ['class-wikisource'] = 'cs1-ws-icon',
| |
|
| |
|
| ['italic-title'] = "''$1''", | | ['italic-title'] = "''$1''", |
|
| |
|
| ['kern-left'] = '<span class="cs1-kern-left">$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 class="cs1-kern-right">$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 class="cs1-kern-wl-left">$1</span>', -- when title contains leading single or double quote mark
| |
| ['kern-wl-right'] = '<span class="cs1-kern-wl-left">$1</span>', -- when title contains trailing single or double quote mark
| |
| ['kern-wl-both'] = '<span class="cs1-kern-wl-left cs1-kern-wl-right">$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> |
| ['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"></span>',
| |
| | | |
| ['parameter'] = '<code class="cs1-code">|$1=</code>', | | ['parameter'] = '<code style="'..code_style..'">|$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 | | ['quoted-text'] = '<q>$1</q>', -- for wrapping |quote= content |
| ['quoted-title'] = '"$1"', | | ['quoted-title'] = '"$1"', |
|
| |
| ['sep_cs1'] = '.', -- cs1 element separator
| |
| ['sep_cs2'] = ',', -- cs2 separator
| |
| ['sep_nl'] = ';', -- cs1|2 style name-list separator between authors is a semicolon
| |
| ['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
| |
|
| |
|
| ['trans-italic-title'] = "[''$1'']", | | ['trans-italic-title'] = "[''$1'']", |
| ['trans-quoted-title'] = "[$1]", | | ['trans-quoted-title'] = "[$1]", |
| ['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 >---------------------------------------------------------------- |
|
| |
|
خط ۲۱۷: |
خط ۱۱۹: |
| ]] | | ]] |
|
| |
|
| local aliases = {
| | citation_config.aliases = { |
| ['AccessDate'] = {'access-date', 'accessdate'}, | | ['AccessDate'] = {'access-date', 'accessdate'}, |
| ['Agency'] = 'agency', | | ['Agency'] = 'agency', |
| ['AirDate'] = {'air-date', 'airdate'}, | | ['AirDate'] = {'air-date', 'airdate'}, |
| ['ArchiveDate'] = {'archive-date', 'archivedate'}, | | ['ArchiveDate'] = {'archive-date', 'archivedate'}, |
| ['ArchiveFormat'] = 'archive-format',
| |
| ['ArchiveURL'] = {'archive-url', 'archiveurl'}, | | ['ArchiveURL'] = {'archive-url', 'archiveurl'}, |
| ['ASINTLD'] = {'ASIN-TLD', 'asin-tld'}, | | ['ASINTLD'] = {'ASIN-TLD', 'asin-tld'}, |
| ['At'] = 'at', | | ['At'] = 'at', |
| ['Authors'] = {'authors', 'people', 'credits'}, | | ['Authors'] = {'authors', 'people', 'host'}, |
| | ['AuthorFormat'] = {'author-format', 'authorformat'}, -- deprecated in favor of NameListFormat; |
| | ['AuthorSeparator'] = 'author-separator', -- deprecated |
| | ['AuthorNameSeparator'] = 'author-name-separator', -- deprecated |
| ['BookTitle'] = {'book-title', 'booktitle'}, | | ['BookTitle'] = {'book-title', 'booktitle'}, |
| | ['Callsign'] = {'call-sign', 'callsign'}, -- cite interview |
| ['Cartography'] = 'cartography', | | ['Cartography'] = 'cartography', |
| ['Chapter'] = {'chapter', 'contribution', 'entry', 'article', 'section'}, | | ['Chapter'] = {'chapter', 'contribution', 'entry', 'article', 'section'}, |
| ['ChapterFormat'] = {'chapter-format', 'contribution-format', 'entry-format', 'article-format', 'section-format'}; | | ['ChapterFormat'] = 'chapter-format'; |
| ['ChapterURL'] = {'chapter-url', 'chapterurl', 'contribution-url', 'contributionurl', 'entry-url', 'article-url', 'section-url', 'sectionurl'}, | | ['ChapterLink'] = {'chapter-link', 'chapterlink'}, -- deprecated; remove after 1 January 2015? |
| ['ChapterUrlAccess'] = {'chapter-url-access', 'contribution-url-access', 'entry-url-access', 'article-url-access', 'section-url-access'}, | | ['ChapterURL'] = {'chapter-url', 'chapterurl', 'contribution-url', 'contributionurl', 'section-url', 'sectionurl'}, |
| ['Class'] = 'class', -- cite arxiv and arxiv identifiers | | ['City'] = 'city', -- cite interview |
| ['Collaboration'] = 'collaboration',
| | ['Coauthors'] = {'coauthors', 'coauthor'}, -- coauthor and coauthors are deprecated; remove after 1 January 2015? |
| ['Conference'] = {'conference', 'event'}, | | ['Conference'] = {'conference', 'event'}, |
| ['ConferenceFormat'] = {'conference-format', 'event-format'},
| |
| ['ConferenceURL'] = {'conference-url', 'conferenceurl', 'event-url', 'eventurl'}, | | ['ConferenceURL'] = {'conference-url', 'conferenceurl', 'event-url', 'eventurl'}, |
| ['Contribution'] = 'contribution', -- introduction, foreword, afterword, etc; required when |contributor= set
| |
| ['Date'] = 'date', | | ['Date'] = 'date', |
| | ['DeadURL'] = {'dead-url', 'deadurl'}, |
| ['Degree'] = 'degree', | | ['Degree'] = 'degree', |
| ['DF'] = 'df',
| |
| ['DisplayAuthors'] = {'display-authors', 'displayauthors'}, | | ['DisplayAuthors'] = {'display-authors', 'displayauthors'}, |
| ['DisplayContributors'] = 'display-contributors',
| |
| ['DisplayEditors'] = {'display-editors', 'displayeditors'}, | | ['DisplayEditors'] = {'display-editors', 'displayeditors'}, |
| ['DisplayInterviewers'] = 'display-interviewers',
| |
| ['DisplayTranslators'] = 'display-translators',
| |
| ['Docket'] = 'docket', | | ['Docket'] = 'docket', |
| ['DoiBroken'] = {'doi-broken', 'doi-broken-date', 'doi-inactive-date'}, | | ['DoiBroken'] = {'doi-broken', 'doi-broken-date', 'doi-inactive-date', 'DoiBroken', 'doi_brokendate', 'doi_inactivedate'}, |
| ['Edition'] = 'edition', | | ['Edition'] = 'edition', |
| ['Editors'] = 'editors', | | ['Editors'] = 'editors', |
| ['Embargo'] = 'embargo', | | ['EditorFormat'] = {'editor-format', 'editorformat'}, -- deprecated in favor of NameListFormat; |
| | ['EditorSeparator'] = 'editor-separator', -- deprecated |
| | ['EditorNameSeparator'] = 'editor-name-separator', -- deprecated |
| | ['Embargo'] = {'Embargo', 'embargo'}, |
| ['Encyclopedia'] = {'encyclopedia', 'encyclopaedia'}, -- this one only used by citation | | ['Encyclopedia'] = {'encyclopedia', 'encyclopaedia'}, -- this one only used by citation |
| ['Episode'] = 'episode', -- cite serial only TODO: make available to cite episode?
| |
| ['Format'] = 'format', | | ['Format'] = 'format', |
| ['ID'] = {'id', 'ID'}, | | ['ID'] = {'id', 'ID'}, |
خط ۲۵۹: |
خط ۱۶۱: |
| ['Inset'] = 'inset', | | ['Inset'] = 'inset', |
| ['Issue'] = {'issue', 'number'}, | | ['Issue'] = {'issue', 'number'}, |
| ['Language'] = {'language', 'lang'}, | | ['Language'] = {'language', 'in'}, |
| ['LastAuthorAmp'] = {'last-author-amp', 'lastauthoramp'}, | | ['LastAuthorAmp'] = {'last-author-amp', 'lastauthoramp'}, |
| ['LayDate'] = {'lay-date', 'laydate'}, | | ['LayDate'] = {'lay-date', 'laydate'}, |
| ['LayFormat'] = 'lay-format',
| |
| ['LaySource'] = {'lay-source', 'laysource'}, | | ['LaySource'] = {'lay-source', 'laysource'}, |
| ['LayURL'] = {'lay-url', 'lay-summary', 'layurl', 'laysummary'}, | | ['LayURL'] = {'lay-url', 'lay-summary', 'layurl', 'laysummary'}, |
| ['MailingList'] = {'mailinglist', 'mailing-list'}, -- cite mailing list only | | ['MailingList'] = {'mailinglist', 'mailing-list'}, -- cite mailing list only |
| ['Map'] = 'map', -- cite map only
| |
| ['MapFormat'] = 'map-format', -- cite map only
| |
| ['MapURL'] = {'mapurl', 'map-url'}, -- cite map only
| |
| ['MapUrlAccess'] = 'map-url-access', -- cite map only
| |
| ['MessageID'] = 'message-id', | | ['MessageID'] = 'message-id', |
| ['Minutes'] = 'minutes', | | ['Minutes'] = 'minutes', |
| ['Mode'] = 'mode', | | ['Mode'] = 'mode', |
| ['NameListFormat'] = 'name-list-format', | | ['Month'] = 'month', -- deprecated; remove after 1 January 2015? |
| | ['NameListFormat'] = {'name-list-format', 'author-format', 'authorformat', 'editor-format', 'editorformat'}, |
| | ['NameSeparator'] = 'name-separator', -- deprecated |
| ['Network'] = 'network', | | ['Network'] = 'network', |
| ['NoPP'] = {'no-pp', 'nopp'}, | | ['NoPP'] = {'no-pp', 'nopp'}, |
| ['NoTracking'] = {'template-doc-demo', 'no-cat', 'nocat', | | ['NoTracking'] = {'template-doc-demo', 'template doc demo', 'no-cat', 'nocat', |
| 'no-tracking', 'notracking'}, | | 'no-tracking', 'notracking'}, |
| ['Number'] = 'number', -- this case only for cite techreport
| |
| ['OrigYear'] = {'orig-year', 'origyear'}, | | ['OrigYear'] = {'orig-year', 'origyear'}, |
| ['Others'] = 'others', | | ['Others'] = {'others', 'interviewer', 'interviewers'}, |
| ['Page'] = {'p', 'page'}, | | ['Page'] = {'p', 'page'}, |
| ['Pages'] = {'pp', 'pages'}, | | ['Pages'] = {'pp', 'pages'}, |
| ['Periodical'] = {'journal', 'magazine', 'newspaper', 'periodical', 'website', 'work', | | ['Periodical'] = {'journal', 'newspaper', 'magazine', 'work', |
| 'encyclopedia', 'encyclopaedia', 'dictionary', 'mailinglist'}, -- these masquerade as periodicals but aren't TODO: find a better way to handle these?
| | 'website', 'periodical', 'encyclopedia', 'encyclopaedia', 'dictionary'}, |
| ['Place'] = {'place', 'location'}, | | ['Place'] = {'place', 'location'}, |
| | ['PPrefix'] = {'p-prefix', 'PPrefix'}, |
| | ['PPPrefix'] = {'pp-prefix', 'PPPrefix'}, |
| | ['Program'] = 'program', -- cite interview |
| ['PostScript'] = 'postscript', | | ['PostScript'] = 'postscript', |
| ['PublicationDate'] = {'publicationdate', 'publication-date'}, | | ['PublicationDate'] = {'publicationdate', 'publication-date'}, |
| ['PublicationPlace'] = {'publication-place', 'publicationplace'}, | | ['PublicationPlace'] = {'publication-place', 'publicationplace'}, |
| ['PublisherName'] = {'publisher', 'institution', 'newsgroup'}, | | ['PublisherName'] = {'publisher', 'distributor', 'institution', 'newsgroup'}, |
| ['Quote'] = {'quote', 'quotation'}, | | ['Quote'] = {'quote', 'quotation'}, |
| ['Ref'] = 'ref', | | ['Ref'] = {'ref', 'Ref'}, |
| ['RegistrationRequired'] = 'registration', | | ['RegistrationRequired'] = 'registration', |
| ['Scale'] = 'scale', | | ['Scale'] = 'scale', |
| ['ScriptChapter'] = {'script-chapter', 'script-contribution', 'script-entry', 'script-article', 'script-section'},
| |
| ['ScriptPeriodical'] = {'script-journal', 'script-magazine', 'script-newspaper', 'script-periodical', 'script-website', 'script-work'},
| |
| ['ScriptTitle'] = 'script-title', | | ['ScriptTitle'] = 'script-title', |
| ['Section'] = 'section', | | ['Section'] = 'section', |
| ['Season'] = 'season', | | ['Season'] = 'season', |
| ['Sections'] = 'sections', -- cite map only | | ['Separator'] = 'separator', -- deprecated in favor of Mode |
| ['Series'] = {'series', 'version'}, | | ['Series'] = {'series', 'version'}, |
| ['SeriesSeparator'] = 'series-separator', | | ['SeriesSeparator'] = 'series-separator', |
| ['SeriesLink'] = {'series-link', 'serieslink'}, | | ['SeriesLink'] = {'series-link', 'serieslink'}, |
| ['SeriesNumber'] = {'series-number', 'series-no', 'seriesnumber', 'seriesno'}, | | ['SeriesNumber'] = {'series-number', 'series-no', 'seriesnumber', 'seriesno'}, |
| ['Sheet'] = 'sheet', -- cite map only
| |
| ['Sheets'] = 'sheets', -- cite map only
| |
| ['Station'] = 'station', | | ['Station'] = 'station', |
| ['SubscriptionRequired'] = 'subscription', | | ['SubscriptionRequired'] = 'subscription', |
خط ۳۱۴: |
خط ۲۱۱: |
| ['TitleNote'] = 'department', | | ['TitleNote'] = 'department', |
| ['TitleType'] = {'type', 'medium'}, | | ['TitleType'] = {'type', 'medium'}, |
| ['TransChapter'] = {'trans-article', 'trans-chapter', 'trans-contribution', 'trans-entry', 'trans-section'}, | | ['TransChapter'] = {'trans-chapter', 'trans_chapter'}, |
| ['Transcript'] = 'transcript', | | ['Transcript'] = 'transcript', |
| ['TranscriptFormat'] = 'transcript-format',
| |
| ['TranscriptURL'] = {'transcript-url', 'transcripturl'}, | | ['TranscriptURL'] = {'transcript-url', 'transcripturl'}, |
| ['TransMap'] = 'trans-map', -- cite map only | | ['TransTitle'] = {'trans-title', 'trans_title'}, |
| ['TransPeriodical'] = {'trans-journal', 'trans-magazine', 'trans-newspaper', 'trans-periodical', 'trans-website', 'trans-work'},
| |
| ['TransTitle'] = 'trans-title',
| |
| ['URL'] = {'url', 'URL'}, | | ['URL'] = {'url', 'URL'}, |
| ['UrlAccess'] = {'url-access'},
| |
| ['UrlStatus'] = {'url-status', 'dead-url', 'deadurl'}, -- TODO: remove 'dead-url', 'deadurl'
| |
| ['Vauthors'] = 'vauthors',
| |
| ['Veditors'] = 'veditors',
| |
| ['Via'] = 'via', | | ['Via'] = 'via', |
| ['Volume'] = 'volume', | | ['Volume'] = 'volume', |
| ['Year'] = 'year', | | ['Year'] = 'year', |
|
| |
|
| ['AuthorList-First'] = {"first#", "given#", "author-first#", "author#-first"}, | | ['AuthorList-First'] = {"author#-first", "author-first#", |
| ['AuthorList-Last'] = {"last#", "author#", "surname#", "author-last#", "author#-last", "subject#", 'host#'}, | | "first#", "given#"}, |
| ['AuthorList-Link'] = {"authorlink#", "author-link#", "author#-link", "subjectlink#", "author#link", "subject-link#", "subject#-link", "subject#link"},
| | ['AuthorList-Last'] = {"author#-last", "author-last#", |
| ['AuthorList-Mask'] = {"author-mask#", "authormask#", "author#mask", "author#-mask"}, | | "last#", "surname#", "Author#", "author#", "authors#", "subject#"}, |
|
| | ['AuthorList-Link'] = {"author#-link", "author-link#", |
| ['ContributorList-First'] = {'contributor-first#', 'contributor#-first', 'contributor-given#', 'contributor#-given'},
| | "author#link", "authorlink#", "subject-link#", "subject#link", "subject#-link", "subjectlink#"}, |
| ['ContributorList-Last'] = {'contributor#', 'contributor-last#', 'contributor#-last', 'contributor-surname#', 'contributor#-surname'},
| | ['AuthorList-Mask'] = {"author#-mask", "author-mask#", |
| ['ContributorList-Link'] = {'contributor-link#', 'contributor#-link'},
| | "author#mask", "authormask#"}, |
| ['ContributorList-Mask'] = {'contributor-mask#', 'contributor#-mask'},
| |
| | |
| ['EditorList-First'] = {"editor-first#", "editor#-first", "editor-given#", "editor#-given"},
| |
| ['EditorList-Last'] = {"editor#", "editor-last#", "editor#-last", "editor-surname#", "editor#-surname"},
| |
| ['EditorList-Link'] = {"editor-link#", "editor#-link", "editorlink#", "editor#link"},
| |
| ['EditorList-Mask'] = {"editor-mask#", "editor#-mask", "editormask#", "editor#mask"}, | |
| | | |
| ['InterviewerList-First'] = {'interviewer-first#', 'interviewer#-first'}, | | ['EditorList-First'] = {"editor#-first", |
| ['InterviewerList-Last'] = {'interviewer#', 'interviewer-last#', 'interviewer#-last'},
| | "editor-first#", "editor#-given", "editor-given#", "EditorGiven#"}, |
| ['InterviewerList-Link'] = {'interviewer-link#', 'interviewer#-link'},
| | ['EditorList-Last'] = {"editor#-last", "editor-last#", |
| ['InterviewerList-Mask'] = {'interviewer-mask#', 'interviewer#-mask'}, | | "editor#-surname", "editor-surname#", "EditorSurname#", "Editor#", "editor#", "editors#"}, |
| | | ['EditorList-Link'] = {"editor#-link", "editor-link#", |
| ['TranslatorList-First'] = {'translator-first#', 'translator#-first', 'translator-given#', 'translator#-given'},
| | "editor#link", "editorlink#"}, |
| ['TranslatorList-Last'] = {'translator#', 'translator-last#', 'translator#-last', 'translator-surname#', 'translator#-surname'},
| | ['EditorList-Mask'] = {"editor#-mask", "editor-mask#", |
| ['TranslatorList-Link'] = {'translator-link#', 'translator#-link'}, | | "editor#mask", "editormask#"}, |
| ['TranslatorList-Mask'] = {'translator-mask#', 'translator#-mask'}, | |
| }
| |
| | |
| | |
| --[[--------------------------< P U N C T _ S K I P >----------------------------------------------------------
| |
| | |
| builds a table of parameter names that the extraneous terminal punctuation check should not check.
| |
| | |
| ]]
| |
| | |
| local punct_skip = {};
| |
| | |
| local meta_params = { -- table of aliases[] keys (meta parameters); each key has a table of parameter names for a value
| |
| 'BookTitle', 'Chapter', 'ScriptChapter', 'ScriptTitle', 'Title', 'TransChapter', 'Transcript', 'TransMap', 'TransTitle', -- title-holding parameters
| |
| 'PostScript', 'Quote', -- miscellaneous
| |
| 'ArchiveURL', 'ChapterURL', 'ConferenceURL', 'LayURL', 'MapURL', 'TranscriptURL', 'URL', -- url-holding parameters
| |
| }
| |
| | |
| 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
| |
| punct_skip[params] = 1; -- just a single parameter
| |
| else
| |
| for _, param in ipairs (params) do -- get the parameter name
| |
| punct_skip[param] = 1; -- add the parameter name to the skip table
| |
| end
| |
| end
| |
| end
| |
| | |
| | |
| --[[--------------------------< 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.
| |
| | |
| ]]
| |
| | |
| local special_case_translation = {
| |
| ['AuthorList'] = 'authors list', -- these for multiple names maint categories
| |
| ['ContributorList'] = 'contributors list',
| |
| ['EditorList'] = 'editors list',
| |
| ['InterviewerList'] = 'interviewers list',
| |
| ['TranslatorList'] = 'translators list',
| |
| | | |
| ['authors'] = 'authors', -- used in get_display_names()
| |
| ['contributors'] = 'contributors',
| |
| ['editors'] = 'editors',
| |
| ['interviewers'] = 'interviewers',
| |
| ['translators'] = 'translators',
| |
|
| |
| ['archived_copy'] = '^archived?%s+copy$', -- lua pattern to match pseudo title used by Internet Archive bot and others as place holder for unknown |title= value
| |
| -- used with CS1 maint: Archived copy as title
| |
| }
| |
|
| |
|
| |
| --[[--------------------------< D E F A U L T S >--------------------------------------------------------------
| |
|
| |
| Default parameter values
| |
|
| |
| TODO: keep this? Only one default?
| |
| ]]
| |
|
| |
| local defaults = {
| |
| ['UrlStatus'] = 'dead',
| |
| } | | } |
|
| |
|
| | | -- Default parameter values |
| --[[--------------------------< D A T E _ N A M E S >---------------------------------------------------------- | | citation_config.defaults = { |
| | | ['DeadURL'] = 'yes', |
| This table of tables lists local language date names and fallback English date names. The code in Date_validation
| | ['PPrefix'] = "p. ", |
| will look first in the local table for valid date names. If date names are not found in the local table, the code
| | ['PPPrefix'] = "pp. ", |
| 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},
| |
| },
| |
| ['inv_local_l'] = {}, -- used in date reformatting; copy of date_names['local'].long where k/v are inverted: [1]='<local name>' etc
| |
| ['inv_local_s'] = {}, -- used in date reformatting; copy of date_names['local'].short 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'] = {},
| |
| }
| |
| | |
| for name, i in pairs (date_names['local'].long) do -- this table is ['name'] = i
| |
| date_names['inv_local_l'][i] = name; -- invert to get [i] = 'name' for conversions from ymd
| |
| end
| |
| | |
| for name, i in pairs (date_names['local'].short) do -- this table is ['name'] = i
| |
| date_names['inv_local_s'][i] = name; -- invert to get [i] = 'name' for conversions from ymd | |
| 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
| |
| 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 *[|}]', -- 915k -- sorted by approximate transclusion count
| |
| '{{ *[Uu]se *(mdy) *dates *[|}]', -- 161k
| |
| '{{ *[Uu]se (DMY) dates *[|}]', -- 2929
| |
| '{{ *[Uu]se *(dmy) *[|}]', -- 250 + 34
| |
| '{{ *([Dd]my) *[|}]', -- 272
| |
| '{{ *[Uu]se (MDY) dates *[|}]', -- 173
| |
| '{{ *[Uu]se *(mdy) *[|}]', -- 59 + 12
| |
| '{{ *([Mm]dy) *[|}]', -- 9
| |
| '{{ *[Uu]se (MDY) *[|}]', -- 3
| |
| '{{ *([Dd]MY) *[|}]', -- 2
| |
| '{{ *([Mm]DY) *[|}]', -- 0
| |
| -- '{{ *[Uu]se(mdy) *[|}]',
| |
| -- '{{ *[Uu]se(mdy)dates *[|}]',
| |
| -- '{{ *[Uu]se(dmy) *[|}]',
| |
| }
| |
| | |
| local function get_date_format ()
| |
| local content = mw.title.getCurrentTitle():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 = get_date_format ();
| |
| | |
| | |
| --[[--------------------------< 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
| |
| |volume=, |issue=, and |page(s)= parameters. Cite conference and cite map require further qualification which
| |
| is handled in the main module.
| |
| | |
| ]]
| |
| | |
| 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_not_using_page = {'audio-visual', 'episode', 'mailinglist', 'newsgroup', 'podcast', 'serial', 'sign', 'speech'}
| |
| | |
| | |
| --[[--------------------------< K E Y W O R D S >--------------------------------------------------------------
| |
| | |
| This table holds keywords for those parameters that have defined sets of acceptible keywords.
| |
| | |
| ]]
| |
| | |
| local keywords = {
| |
| ['yes_true_y'] = {'yes', 'true', 'y'}, -- ignore-isbn-error, last-author-amp, no-tracking, nopp, registration, subscription
| |
| ['deadurl'] = {'yes', 'true', 'y', 'no', 'unfit', 'usurped', 'bot: unknown'},
| |
| ['mode'] = {'cs1', 'cs2'},
| |
| ['name-list-format'] = {'vanc'},
| |
| ['contribution'] = {'afterword', 'foreword', 'introduction', 'preface'}, -- generic contribution titles that are rendered unquoted in the 'chapter' position
| |
| ['date-format'] = {'dmy', 'dmy-all', 'mdy', 'mdy-all', 'ymd', 'ymd-all'},
| |
| -- ['date-format'] = {'dmy', 'dmy-all', 'mdy', 'mdy-all', 'ymd', 'ymd-all', 'yMd', 'yMd-all'}, -- not supported at en.wiki
| |
| ['url-access'] = {'subscription', 'limited', 'registration'}, -- access level of a URL (subscription required, limited access, registration required); free to read by default
| |
| ['url-status'] = {'dead', 'live', 'unfit', 'usurped', 'bot: unknown'}, -- replacement for |dead-url=
| |
| ['id-access'] = {'free'}, -- access level of an identifier (free to read); not free-to-read by default
| |
| } | | } |
|
| |
|
| |
| --[[--------------------------< 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 hunting for them if (when)
| |
| MediaWiki changes their form.
| |
|
| |
| ]]
| |
|
| |
| local stripmarkers = {
| |
| ['any'] = '\127[^\127]*UNIQ%-%-(%a+)%-[%a%d]+%-QINU[^\127]*\127', -- capture returns name of stripmarker
| |
| ['math'] = '\127[^\127]*UNIQ%-%-math%-[%a%d]+%-QINU[^\127]*\127' -- math stripmarkers used in coins_cleanup() and coins_replace_math_stripmarker()
| |
| }
| |
|
| |
|
| |
| --[[--------------------------< 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 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 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 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_chars = {
| |
| {'replacement', '\239\191\189'}, -- U+FFFD, EF BF BD
| |
| {'zero width joiner', '\226\128\141'}, -- U+200D, E2 80 8D
| |
| {'zero width space', '\226\128\139'}, -- U+200B, E2 80 8B
| |
| {'hair space', '\226\128\138'}, -- U+200A, E2 80 8A
| |
| {'soft hyphen', '\194\173'}, -- U+00AD, C2 AD
| |
| {'horizontal tab', '\009'}, -- U+0009 (HT), 09
| |
| {'line feed', '\010'}, -- U+000A (LF), 0A
| |
| {'carriage return', '\013'}, -- U+000D (CR), 0D
| |
| {'stripmarker', stripmarkers.any}, -- stripmarker; may or may not be an error; capture returns the stripmaker type
| |
| {'delete', '\127'}, -- U+007F (DEL), 7F; must be done after stripmarker test
| |
| {'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
| |
| -- {'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
| |
| -- {'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
| |
| }
| |
|
| |
| --[[
| |
| 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
| |
| 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()
| |
| TODO: find a better place for this?
| |
| ]]
| |
|
| |
| 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]';
| |
|
| |
|
| |
| --[[--------------------------< L A N G U A G E S >------------------------------------------------------------
| |
|
| |
| This table is used to hold ISO 639-1 two-character language codes that apply only to |script-title= and |script-chapter=
| |
|
| |
| ]]
| |
|
| |
| local script_lang_codes = {
| |
| 'am', 'ar', 'be', 'bg', 'bn', 'bs', 'dv', 'el', 'fa', 'gu', -- ISO 639-1 codes only for |script-title= and |script-chapter=
| |
| 'he', 'hi', 'hy', 'ja', 'ka', 'kk', 'km', 'kn', 'ko', 'ku',
| |
| 'mk', 'ml', 'mn', 'mr', 'my', 'ne', 'ps', 'ru', 'sd', 'si',
| |
| 'sr', 'ta', 'tg', 'th', 'ug', 'uk', 'ur', 'uz', 'yi', 'zh'
| |
| };
| |
|
| |
|
| |
| --[[--------------------------< L A N G U A G E R E M A P P I N G >------------------------------------------
| |
|
| |
| These tables hold language information that is different (correct) from MediaWiki's definitions
| |
|
| |
| ]]
| |
|
| |
| 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 wWikipedia: bh.wikipedia.org
| |
| ['bn'] = 'Bengali', -- MediaWiki returns Bangla
| |
| ['ca-valencia'] = 'Valencian', -- IETF variant of Catalan
| |
| ['crh'] = 'Crimean Tatar', -- synonymous with Crimean Turkish (return value from {{#language:crh|en}})
| |
| }
| |
|
| |
| local lang_name_remap = { -- used for |language=
| |
| ['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
| |
| ['bihari'] = {'Bihari', 'bh'}, -- MediaWiki replaces 'Bihari' with 'Bhojpuri' so 'Bihari' cannot be found
| |
| ['bhojpuri'] = {'Bhojpuri', 'bho'}, -- MediaWiki uses 'bh' as a subdomain name for Bhojpuri Wikipedia: bh.wikipedia.org
| |
| ['crimean tatar'] = {'Crimean Tatar', 'crh'}, -- MediaWiki uses 'crh' as a subdomain name for Crimean Tatar Wikipedia: crh.wikipedia.org
| |
| ['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
| |
| }
| |
|
| |
|
| |
| --[[--------------------------< M A I N T E N A N C E _ C A T E G O R I E S >----------------------------------
| |
|
| |
| Here we name maintenance categories to be used in maintenance messages.
| |
|
| |
| ]]
| |
|
| |
| local maint_cats = {
| |
| ['ASIN'] = 'CS1 maint: ASIN uses ISBN',
| |
| ['archived_copy'] = 'CS1 maint: archived copy as title',
| |
| ['authors'] = 'CS1 maint: uses authors parameter',
| |
| ['bot:_unknown'] = 'CS1 maint: BOT: original-url status unknown',
| |
| ['date_format'] = 'CS1 maint: date format',
| |
| ['date_year'] = 'CS1 maint: date and year',
| |
| ['disp_name'] = 'CS1 maint: display-$1', -- $1 is authors, contributors, editors, interviewers, translators; gets value from special_case_translation table
| |
| ['editors'] = 'CS1 maint: uses editors parameter',
| |
| ['embargo'] = 'CS1 maint: PMC embargo expired',
| |
| ['extra_punct'] = 'CS1 maint: extra punctuation',
| |
| ['extra_text'] = 'CS1 maint: extra text',
| |
| ['extra_text_names'] = 'CS1 maint: extra text: $1', -- $1 is <name>s list; gets value from special_case_translation table
| |
| ['ignore_isbn_err'] = 'CS1 maint: ignored ISBN errors',
| |
| ['mult_names'] = 'CS1 maint: multiple names: $1', -- $1 is <name>s list; gets value from special_case_translation table
| |
| ['others'] = 'CS1 maint: others',
| |
| ['pmc_format'] = 'CS1 maint: PMC format',
| |
| ['unfit'] = 'CS1 maint: unfit url',
| |
| ['unknown_lang'] = 'CS1 maint: unrecognized language',
| |
| ['untitled'] = 'CS1 maint: untitled periodical',
| |
| ['zbl'] = 'CS1 maint: ZBL',
| |
| }
| |
|
| |
|
| |
| --[[--------------------------< P R O P E R T I E S _ C A T E G O R I E S >------------------------------------
| |
|
| |
| Here we name properties categories
| |
|
| |
| ]]
| |
|
| |
| local prop_cats = {
| |
| ['foreign_lang_source'] = 'CS1 $1-language sources ($2)', -- |language= categories; $1 is 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
| |
| ['script'] = 'CS1 uses foreign language script', -- when language specified by |script-title=xx: doesn't have its own category
| |
| ['script_with_name'] = 'CS1 uses $1-language script ($2)', -- |script-title=xx: has matching category; $1 is language name, $2 is ISO639-1 code
| |
| ['jul_greg_uncertainty'] = 'CS1: Julian–Gregorian uncertainty', -- probably temporary cat to identify scope of template with dates 1 October 1582 – 1 January 1926
| |
| ['long_vol'] = 'CS1: long volume value', -- probably temporary cat to identify scope of |volume= values longer than 4 charachters
| |
| }
| |
|
| |
|
| |
| --[[--------------------------< T I T L E _ T Y P E S >--------------------------------------------------------
| |
|
| |
| Here we map a template's CitationClass to TitleType (default values for |type= parameter)
| |
|
| |
| ]]
| |
|
| |
| local title_types = {
| |
| ['AV-media-notes'] = 'Media notes',
| |
| ['interview'] = 'Interview',
| |
| ['mailinglist'] = 'Mailing list',
| |
| ['map'] = 'Map',
| |
| ['podcast'] = 'Podcast',
| |
| ['pressrelease'] = 'Press release',
| |
| ['report'] = 'Report',
| |
| ['techreport'] = 'Technical report',
| |
| ['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 >---------------------------------------------- |
|
| |
| Error condition table | | Error condition table |
|
| |
|
| The following contains a list of IDs for various error conditions defined in the code. For each ID, we specify a | | The following contains a list of IDs for various error conditions defined in the |
| text message to display, an error category to include, and whether the error message should be wrapped as a hidden comment. | | 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 | | Anchor changes require identical changes to matching anchor in Help:CS1 errors |
خط ۷۲۴: |
خط ۲۵۸: |
| ]] | | ]] |
|
| |
|
| local error_conditions = {
| | citation_config.error_conditions = { |
| accessdate_missing_url = { | | accessdate_missing_url = { |
| message = '<code class="cs1-code">|access-date=</code> requires <code class="cs1-code">|url=</code>', | | message = '<code style="'..code_style..'">|accessdate=</code> requires <code style="'..code_style..'">|url=</code>', |
| anchor = 'accessdate_missing_url', | | anchor = 'accessdate_missing_url', |
| category = 'Pages using citations with accessdate and no URL', | | category = 'یادکردهای وب دارای تاریخ بازبینی بدون نشانی اینترنتی', |
| hidden = false | | hidden = true }, |
| },
| |
| apostrophe_markup = {
| |
| message = 'Italic or bold markup not allowed in: <code class="cs1-code">|$1=</code>',
| |
| anchor = 'apostrophe_markup',
| |
| category = 'CS1 errors: markup',
| |
| hidden = false
| |
| },
| |
| archive_missing_date = { | | archive_missing_date = { |
| message = '<code class="cs1-code">|archive-url=</code> requires <code class="cs1-code">|archive-date=</code>', | | message = '<code style="'..code_style..'">|archiveurl=</code> requires <code style="'..code_style..'">|archivedate=</code>', |
| anchor = 'archive_missing_date', | | anchor = 'archive_missing_date', |
| category = 'Pages with archiveurl citation errors', | | category = 'صفحههای دارای خطا در نشانی بایگانی', |
| hidden = false | | hidden = false }, |
| },
| |
| archive_missing_url = { | | archive_missing_url = { |
| message = '<code class="cs1-code">|archive-url=</code> requires <code class="cs1-code">|url=</code>', | | message = '<code style="'..code_style..'">|archiveurl=</code> requires <code style="'..code_style..'">|url=</code>', |
| anchor = 'archive_missing_url', | | anchor = 'archive_missing_url', |
| category = 'Pages with archiveurl citation errors', | | category = 'صفحههای دارای خطا در نشانی بایگانی', |
| hidden = false | | hidden = false }, |
| },
| |
| archive_url = {
| |
| message = '<code class="cs1-code">|archive-url=</code> is malformed: $1',
| |
| anchor = 'archive_url',
| |
| category = 'Pages with archiveurl citation errors',
| |
| hidden = false
| |
| },
| |
| arxiv_missing = {
| |
| message = '<code class="cs1-code">|arxiv=</code> required',
| |
| anchor = 'arxiv_missing',
| |
| category = 'CS1 errors: arXiv', -- same as bad arxiv
| |
| hidden = false
| |
| },
| |
| arxiv_params_not_supported = {
| |
| message = 'Unsupported parameter(s) in cite arXiv',
| |
| anchor = 'arxiv_params_not_supported',
| |
| category = 'CS1 errors: arXiv', -- same as bad arxiv
| |
| hidden = false
| |
| },
| |
| bad_arxiv = { | | bad_arxiv = { |
| message = 'Check <code class="cs1-code">|arxiv=</code> value', | | message = 'Check <code style="'..code_style..'">|arxiv=</code> value', |
| anchor = 'bad_arxiv', | | anchor = 'bad_arxiv', |
| category = 'CS1 errors: arXiv', | | category = 'خطاهای شیوه یادکرد ۱: arXiv', |
| hidden = false | | hidden = false }, |
| },
| |
| bad_asin = { | | bad_asin = { |
| message = 'Check <code class="cs1-code">|asin=</code> value', | | message = 'Check <code style="'..code_style..'">|asin=</code> value', |
| anchor = 'bad_asin', | | anchor = 'bad_asin', |
| category ='CS1 errors: ASIN', | | category ='خطاهای شیوه یادکرد ۱: ASIN', |
| hidden = false | | hidden = false }, |
| },
| | bad_authorlink = { |
| bad_bibcode = {
| | message = 'Check <code style="'..code_style..'">|authorlink=</code> value', |
| message = 'Check <code class="cs1-code">|bibcode=</code> $1',
| | anchor = 'bad_authorlink', |
| anchor = 'bad_bibcode',
| | category = 'خطاهای شیوه یادکرد ۱: authorlink', |
| category = 'CS1 errors: bibcode',
| | hidden = false }, |
| hidden = false
| |
| },
| |
| bad_biorxiv = { | |
| message = 'Check <code class="cs1-code">|biorxiv=</code> value', | |
| anchor = 'bad_biorxiv',
| |
| category = 'CS1 errors: bioRxiv',
| |
| hidden = false
| |
| },
| |
| bad_citeseerx = {
| |
| message = 'Check <code class="cs1-code">|citeseerx=</code> value',
| |
| anchor = 'bad_citeseerx', | |
| category = 'CS1 errors: citeseerx', | |
| hidden = false | |
| },
| |
| bad_date = { | | bad_date = { |
| message = 'Check date values in: <code class="cs1-code">$1</code>', | | message = 'Check date values in: <code style="'..code_style..'">$1</code>', |
| anchor = 'bad_date', | | anchor = 'bad_date', |
| category = 'CS1 errors: dates', | | category = 'خطای یادکرد: تاریخ', |
| hidden = false | | hidden = false }, |
| },
| |
| bad_doi = { | | bad_doi = { |
| message = 'Check <code class="cs1-code">|doi=</code> value', | | message = 'Check <code style="'..code_style..'">|doi=</code> value', |
| anchor = 'bad_doi', | | anchor = 'bad_doi', |
| category = 'CS1 errors: DOI', | | category = 'صفحههایی دارای خطای DOI', |
| hidden = false | | hidden = false }, |
| },
| |
| bad_hdl = {
| |
| message = 'Check <code class="cs1-code">|hdl=</code> value',
| |
| anchor = 'bad_hdl',
| |
| category = 'CS1 errors: HDL',
| |
| hidden = false
| |
| },
| |
| bad_isbn = { | | bad_isbn = { |
| message = 'Check <code class="cs1-code">|isbn=</code> value: $1', | | message = '', |
| anchor = 'bad_isbn', | | anchor = 'bad_isbn', |
| category = 'CS1 errors: ISBN', | | category = 'صفحههایی که کد ISBN خطا دارد', |
| hidden = false | | hidden = false }, |
| },
| |
| bad_ismn = {
| |
| message = 'Check <code class="cs1-code">|ismn=</code> value',
| |
| anchor = 'bad_ismn',
| |
| category = 'CS1 errors: ISMN',
| |
| hidden = false
| |
| },
| |
| bad_issn = { | | bad_issn = { |
| message = 'Check <code class="cs1-code">|$1issn=</code> value', | | message = 'Check <code style="'..code_style..'">|issn=</code> value', |
| anchor = 'bad_issn', | | anchor = 'bad_issn', |
| category = 'CS1 errors: ISSN', | | category = 'خطای یادکرد: ISSN', |
| hidden = false | | hidden = false }, |
| },
| |
| bad_jfm = {
| |
| message = 'Check <code class="cs1-code">|jfm=</code> value',
| |
| anchor = 'bad_jfm',
| |
| category = 'CS1 errors: JFM',
| |
| hidden = false
| |
| },
| |
| bad_lccn = { | | bad_lccn = { |
| message = 'Check <code class="cs1-code">|lccn=</code> value', | | message = 'Check <code style="'..code_style..'">|lccn=</code> value', |
| anchor = 'bad_lccn', | | anchor = 'bad_lccn', |
| category = 'CS1 errors: LCCN', | | category = 'خطاهای شیوه یادکرد ۱: LCCN', |
| hidden = false | | hidden = false }, |
| },
| | bad_message_id = { |
| bad_usenet_id = { | | message = 'Check <code style="'..code_style..'">|message-id=</code> value', |
| message = 'Check <code class="cs1-code">|message-id=</code> value', | |
| anchor = 'bad_message_id', | | anchor = 'bad_message_id', |
| category = 'CS1 errors: message-id', | | category = 'خطاهای شیوه یادکرد ۱: message-id', |
| hidden = false | | hidden = false }, |
| },
| |
| bad_mr = {
| |
| message = 'Check <code class="cs1-code">|mr=</code> value',
| |
| anchor = 'bad_mr',
| |
| category = 'CS1 errors: MR',
| |
| hidden = false
| |
| },
| |
| bad_ol = { | | bad_ol = { |
| message = 'Check <code class="cs1-code">|ol=</code> value', | | message = 'Check <code style="'..code_style..'">|ol=</code> value', |
| anchor = 'bad_ol', | | anchor = 'bad_ol', |
| category = 'CS1 errors: OL', | | category = 'خطاهای شیوه یادکرد ۱: OL', |
| hidden = false | | hidden = false }, |
| },
| |
| bad_paramlink = { -- for |title-link=, |author/editor/translator-link=, |series-link=, |episode-link=
| |
| message = 'Check <code class="cs1-code">|$1=</code> value',
| |
| anchor = 'bad_paramlink',
| |
| category = 'CS1 errors: parameter link',
| |
| hidden = false
| |
| },
| |
| bad_pmc = { | | bad_pmc = { |
| message = 'Check <code class="cs1-code">|pmc=</code> value', | | message = 'Check <code style="'..code_style..'">|pmc=</code> value', |
| anchor = 'bad_pmc', | | anchor = 'bad_pmc', |
| category = 'CS1 errors: PMC', | | category = 'خطاهای شیوه یادکرد ۱: PMC', |
| hidden = false | | hidden = false }, |
| },
| |
| bad_pmid = { | | bad_pmid = { |
| message = 'Check <code class="cs1-code">|pmid=</code> value', | | message = 'Check <code style="'..code_style..'">|pmid=</code> value', |
| anchor = 'bad_pmid', | | anchor = 'bad_pmid', |
| category = 'CS1 errors: PMID', | | category = 'خطاهای شیوه یادکرد ۱: PMID', |
| hidden = false | | hidden = false }, |
| },
| |
| bad_oclc = {
| |
| message = 'Check <code class="cs1-code">|oclc=</code> value',
| |
| anchor = 'bad_oclc',
| |
| category = 'CS1 errors: OCLC',
| |
| hidden = false
| |
| },
| |
| bad_ssrn = {
| |
| message = 'Check <code class="cs1-code">|ssrn=</code> value',
| |
| anchor = 'bad_ssrn',
| |
| category = 'CS1 errors: SSRN',
| |
| hidden = false
| |
| },
| |
| bad_url = { | | bad_url = { |
| message = 'Check $1 value', | | message = 'Check <code style="'..code_style..'">|url=</code> scheme', |
| anchor = 'bad_url', | | anchor = 'bad_url', |
| category = 'Pages with URL errors', | | category = 'صفحههایی که نشانیشان خطا دارد', |
| hidden = false | | hidden = false }, |
| },
| |
| bad_zbl = {
| |
| message = 'Check <code class="cs1-code">|zbl=</code> value',
| |
| anchor = 'bad_zbl',
| |
| category = 'CS1 errors: ZBL',
| |
| hidden = false
| |
| },
| |
| bare_url_missing_title = { | | bare_url_missing_title = { |
| message = '$1 missing title', | | message = '$1 missing title', |
| anchor = 'bare_url_missing_title', | | anchor = 'bare_url_missing_title', |
| category = 'Pages with citations having bare URLs', | | category = 'صفحههای دارای ارجاعی که پیوند اینترنتیشان برهنه است', |
| hidden = false | | hidden = false }, |
| },
| |
| biorxiv_missing = {
| |
| message = '<code class="cs1-code">|biorxiv=</code> required',
| |
| anchor = 'biorxiv_missing',
| |
| category = 'CS1 errors: bioRxiv', -- same as bad bioRxiv
| |
| hidden = false
| |
| },
| |
| chapter_ignored = { | | chapter_ignored = { |
| message = '<code class="cs1-code">|$1=</code> ignored', | | message = '<code style="'..code_style..'">|chapter=</code> ignored', |
| anchor = 'chapter_ignored', | | anchor = 'chapter_ignored', |
| category = 'CS1 errors: chapter ignored', | | category = 'خطاهای شیوه یادکرد ۱: قسمت دارای خطا', |
| hidden = false | | hidden = false }, |
| },
| |
| citation_missing_title = { | | citation_missing_title = { |
| message = 'Missing or empty <code class="cs1-code">|$1=</code>', | | message = 'Missing or empty <code style="'..code_style..'">|title=</code>', |
| anchor = 'citation_missing_title', | | anchor = 'citation_missing_title', |
| category = 'Pages with citations lacking titles', | | category = 'صفحههای دارای یادکرد بدون عنوان یادکرد', |
| hidden = false | | hidden = false }, |
| },
| |
| citeseerx_missing = {
| |
| message = '<code class="cs1-code">|citeseerx=</code> required',
| |
| anchor = 'citeseerx_missing',
| |
| category = 'CS1 errors: citeseerx', -- same as bad citeseerx
| |
| 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 |
| message = 'Missing or empty <code class="cs1-code">|url=</code>', | | message = 'Missing or empty <code style="'..code_style..'">|url=</code>', |
| anchor = 'cite_web_url', | | anchor = 'cite_web_url', |
| category = 'Pages using web citations with no URL', | | category = 'یادکردهای وب بدون نشانی اینترنتی', |
| hidden = false | | hidden = true }, |
| },
| | coauthors_missing_author = { |
| class_ignored = { | | message = '<code style="'..code_style..'">|coauthors=</code> requires <code style="'..code_style..'">|author=</code>', |
| message = '<code class="cs1-code">|class=</code> ignored', | | anchor = 'coauthors_missing_author', |
| anchor = 'class_ignored',
| | category = 'خطای یادکرد: همکار بدون نویسنده اصلی', |
| category = 'CS1 errors: class',
| | hidden = false }, |
| hidden = false
| |
| },
| |
| contributor_ignored = {
| |
| message = '<code class="cs1-code">|contributor=</code> ignored',
| |
| anchor = 'contributor_ignored',
| |
| category = 'CS1 errors: contributor',
| |
| hidden = false
| |
| },
| |
| contributor_missing_required_param = {
| |
| message = '<code class="cs1-code">|contributor=</code> requires <code class="cs1-code">|$1=</code>',
| |
| anchor = 'contributor_missing_required_param', | |
| category = 'CS1 errors: contributor', | |
| hidden = false | |
| },
| |
| deprecated_params = { | | deprecated_params = { |
| message = 'Cite uses deprecated parameter <code class="cs1-code">|$1=</code>', | | message = 'Cite uses deprecated parameter <code style="'..code_style..'">|$1=</code>', |
| anchor = 'deprecated_params', | | anchor = 'deprecated_params', |
| category = 'CS1 errors: deprecated parameters', | | category = 'صفحههای دارای یادکرد بیاستفاده', |
| hidden = true | | hidden = true }, |
| },
| |
| doibroken_missing_doi = {
| |
| message = '<code class="cs1-code">|$1=</code> requires <code class="cs1-code">|doi=</code>',
| |
| anchor = 'doibroken_missing_doi',
| |
| category = 'CS1 errors: DOI',
| |
| hidden = false
| |
| },
| |
| empty_citation = { | | empty_citation = { |
| message = 'Empty citation', | | message = 'Empty citation', |
| anchor = 'empty_citation', | | anchor = 'empty_citation', |
| category = 'Pages with empty citations', | | category = 'صفحههایی با یادکردهای خالی', |
| hidden = false | | hidden = false }, |
| },
| | extra_pages = { |
| etal = { | | message = 'Extra <code style="'..code_style..'">|pages=</code> or <code style="'..code_style..'">|at=</code>', |
| message = 'Explicit use of et al. in: <code class="cs1-code">|$1=</code>', | | anchor = 'extra_pages', |
| anchor = 'explicit_et_al', | | category = 'Pages with citations using conflicting page specifications', |
| category = 'CS1 errors: explicit use of et al.', | | hidden = false }, |
| hidden = false | |
| },
| |
| first_missing_last = { | | first_missing_last = { |
| message = '<code class="cs1-code">|$1=</code> missing <code class="cs1-code">|$2=</code>', -- $1 is first alias, $2 is matching last alias | | message = '<code style="'..code_style..'">|first$2=</code> missing <code style="'..code_style..'">|last$2=</code> in $1', |
| anchor = 'first_missing_last', | | anchor = 'first_missing_last', |
| category = 'CS1 errors: missing name', -- author, contributor, editor, interviewer, translator | | category = 'خطاهای شیوه یادکرد ۱: بدون نویسنده یا ویراستار', |
| hidden = false | | hidden = false }, |
| },
| |
| format_missing_url = { | | format_missing_url = { |
| message = '<code class="cs1-code">|$1=</code> requires <code class="cs1-code">|$2=</code>', | | message = '<code style="'..code_style..'">|$1=</code> requires <code style="'..code_style..'">|$2=</code>', |
| anchor = 'format_missing_url', | | anchor = 'format_missing_url', |
| category = 'Pages using citations with format and no URL', | | category = 'صفحههای دارای ارجاع با ساختار ولی بدون نشانی', |
| hidden = false | | hidden = true }, |
| }, | | implict_etal_editor = { |
| | message = '<code style="'..code_style..'">|displayeditors=</code> suggested', |
| | anchor = 'displayeditors', |
| | category = 'صفحات دارای یادکرد با شیوه قدیمی', |
| | hidden = true }, |
| invalid_param_val = { | | invalid_param_val = { |
| message = 'Invalid <code class="cs1-code">|$1=$2</code>', | | message = 'Invalid <code style="'..code_style..'">|$1=$2</code>', |
| anchor = 'invalid_param_val', | | anchor = 'invalid_param_val', |
| category = 'CS1 errors: invalid parameter value', | | category = 'خطاهای شیوه یادکرد ۱: invalid mode', |
| hidden = false | | hidden = false }, |
| },
| |
| invisible_char = {
| |
| message = '$1 in $2 at position $3',
| |
| anchor = 'invisible_char',
| |
| category = 'CS1 errors: invisible characters',
| |
| hidden = false
| |
| },
| |
| missing_name = { | | missing_name = { |
| message = 'Missing <code class="cs1-code">|$1$2=</code>', -- $1 is modified NameList; $2 is enumerator | | message = 'Missing <code style="'..code_style..'">|last$2=</code> in $1', |
| anchor = 'missing_name', | | anchor = 'missing_name', |
| category = 'CS1 errors: missing name', -- author, contributor, editor, interviewer, translator | | category = 'خطاهای شیوه یادکرد ۱: بدون نویسنده یا ویراستار', |
| hidden = false
| | hidden = false }, |
| },
| |
| missing_periodical = {
| |
| 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
| |
| },
| |
| missing_pipe = {
| |
| message = 'Missing pipe in: <code class="cs1-code">|$1=</code>',
| |
| anchor = 'missing_pipe',
| |
| category = 'CS1 errors: missing pipe',
| |
| hidden = false | |
| },
| |
| param_access_requires_param = {
| |
| message = '<code class="cs1-code">|$1-access=</code> requires <code class="cs1-code">|$1=</code>',
| |
| anchor = 'param_access_requires_param',
| |
| category = 'CS1 errors: param-access',
| |
| hidden = false
| |
| },
| |
| param_has_ext_link = {
| |
| message = 'External link in <code class="cs1-code">$1</code>',
| |
| anchor = 'param_has_ext_link',
| |
| category = 'CS1 errors: external links',
| |
| hidden = false
| |
| },
| |
| parameter_ignored = { | | parameter_ignored = { |
| message = 'Unknown parameter <code class="cs1-code">|$1=</code> ignored', | | message = 'Unknown parameter <code style="'..code_style..'">|$1=</code> ignored', |
| anchor = 'parameter_ignored', | | anchor = 'parameter_ignored', |
| category = 'Pages with citations using unsupported parameters', | | category = 'صفحههای دارای ارجاع با پارامتر پشتیبانینشده', |
| hidden = false | | hidden = false }, |
| },
| |
| parameter_ignored_suggest = { | | parameter_ignored_suggest = { |
| message = 'Unknown parameter <code class="cs1-code">|$1=</code> ignored (<code class="cs1-code">|$2=</code> suggested)', | | message = 'Unknown parameter <code style="'..code_style..'">|$1=</code> ignored (<code style="'..code_style..'">|$2=</code> suggested)', |
| anchor = 'parameter_ignored_suggest', | | anchor = 'parameter_ignored_suggest', |
| category = 'Pages with citations using unsupported parameters', | | category = 'صفحههای دارای ارجاع با پارامتر پشتیبانینشده', |
| hidden = false | | hidden = false }, |
| },
| |
| redundant_parameters = { | | redundant_parameters = { |
| message = 'More than one of $1 specified', | | message = 'More than one of $1 specified', |
| anchor = 'redundant_parameters', | | anchor = 'redundant_parameters', |
| category = 'Pages with citations having redundant parameters', | | category = 'صفحههایی که ارجاعهایشان که متغییرشان تکراری است', |
| hidden = false | | hidden = false }, |
| },
| |
| script_parameter = {
| |
| message = 'Invalid <code class="cs1-code">|$1=</code>: $2',
| |
| anchor = 'script_parameter',
| |
| category = 'CS1 errors: script parameters',
| |
| hidden = false
| |
| },
| |
| text_ignored = { | | text_ignored = { |
| message = 'Text "$1" ignored', | | message = 'Text "$1" ignored', |
| anchor = 'text_ignored', | | anchor = 'text_ignored', |
| category = 'Pages with citations using unnamed parameters', | | category = 'صفحههایی که ارجاعهایشان که متغییرشان بینام است', |
| hidden = false | | hidden = false }, |
| },
| | trans_missing_chapter = { |
| | message = '<code style="'..code_style..'">|trans-chapter=</code> requires <code style="'..code_style..'">|chapter=</code>', |
| | anchor = 'trans_missing_chapter', |
| | category = 'Pages with citations using translated terms without the original', |
| | hidden = false }, |
| trans_missing_title = { | | trans_missing_title = { |
| message = '<code class="cs1-code">|trans-$1=</code> requires <code class="cs1-code">|$1=</code>', | | message = '<code style="'..code_style..'">|trans-title=</code> requires <code style="'..code_style..'">|title=</code>', |
| anchor = 'trans_missing_title', | | anchor = 'trans_missing_title', |
| category = 'CS1 errors: translated title', | | category = 'Pages with citations using translated terms without the original', |
| hidden = false | | hidden = false }, |
| },
| |
| vancouver = {
| |
| message = 'Vancouver style error: $1',
| |
| anchor = 'vancouver',
| |
| category = 'CS1 errors: Vancouver style',
| |
| hidden = false
| |
| },
| |
| wikilink_in_url = { | | wikilink_in_url = { |
| message = 'URL–wikilink conflict', -- uses ndash | | message = 'Wikilink embedded in URL title', |
| anchor = 'wikilink_in_url', | | anchor = 'wikilink_in_url', |
| category = 'CS1 errors: URL–wikilink conflict', -- uses ndash | | category = 'یادکردهای دارای نشانی اینترنتی که پیوند میانویکی دارند', |
| hidden = false | | hidden = false }, |
| },
| | } |
| }
| |
| | |
| | |
| --[[--------------------------< I D _ H A N D L E R S >--------------------------------------------------------
| |
| | |
| The following contains a list of values for various defined identifiers. For each 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
| |
| link: Wikipedia article name
| |
| q: wikidata q number for the identifier
| |
| label: the alternate name to apply to link
| |
| mode: 'manual' when there is a specific function in the code to handle the identifier;
| |
| 'external' for identifiers that link outside of Wikipedia;
| |
| prefix: the first part of a url that will be concatenated with a second part which usually contains the identifier
| |
| encode: true if uri should be percent encoded; otherwise false
| |
| COinS: identifier link or keyword for use in COinS:
| |
| for identifiers registered at info-uri.info use: info:....
| |
| for identifiers that have COinS keywords, use the keyword: rft.isbn, rft.issn, rft.eissn
| |
| for others make a url using the value in prefix, use the keyword: pre (not checked; any text other than 'info' or 'rft' works here)
| |
| set to nil to leave the identifier out of the COinS
| |
| separator: character or text between label and the identifier in the rendered citation
| |
| 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
| |
| to the parameter that should control it (normally 'id-access')
| |
| ]]
| |
|
| |
|
| local id_handlers = {
| | citation_config.id_handlers = { |
| ['ARXIV'] = { | | ['ARXIV'] = { |
| parameters = {'arxiv', 'eprint'}, | | parameters = {'arxiv', 'ARXIV'}, |
| link = 'arXiv', | | link = 'arXiv', |
| q = 'Q118398',
| |
| label = 'arXiv', | | label = 'arXiv', |
| mode = 'manual', | | mode = 'manual', |
| prefix = '//arxiv.org/abs/', -- protocol relative tested 2013-09-04 | | 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
| | }, |
| },
| |
| ['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', | | mode = 'manual', |
| prefix = '//www.amazon.', | | COinS = 'info:asin', |
| 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', 'BIBCODE'}, |
| link = 'Bibcode', | | link = 'Bibcode', |
| q = 'Q25754',
| |
| label = 'Bibcode', | | label = 'Bibcode', |
| mode = 'manual', | | mode = 'external', |
| prefix = 'https://ui.adsabs.harvard.edu/abs/', | | prefix = 'http://adsabs.harvard.edu/abs/', |
| encode = false, | | encode = false, |
| COinS = 'info:bibcode', | | COinS = 'info:bibcode', |
| separator = ':', | | separator = ':', |
| custom_access = 'bibcode-access',
| | }, |
| },
| |
| ['BIORXIV'] = { | |
| parameters = {'biorxiv'},
| |
| link = 'bioRxiv',
| |
| q = 'Q19835482',
| |
| label = 'bioRxiv',
| |
| mode = 'manual',
| |
| prefix = '//doi.org/10.1101/',
| |
| COinS = 'pre', -- use prefix value
| |
| access = 'free', -- free to read
| |
| encode = true,
| |
| separator = ' ',
| |
| },
| |
| ['CITESEERX'] = {
| |
| parameters = {'citeseerx'},
| |
| link = 'CiteSeerX',
| |
| q = 'Q2715061',
| |
| label = 'CiteSeerX',
| |
| mode = 'manual', -- manual for custom validation of the "doi"
| |
| prefix = '//citeseerx.ist.psu.edu/viewdoc/summary?doi=',
| |
| COinS = 'pre', -- use prefix value
| |
| access = 'free', -- free to read
| |
| encode = true,
| |
| separator = ' ',
| |
| },
| |
| ['DOI'] = { | | ['DOI'] = { |
| parameters = { 'doi', 'DOI' }, | | parameters = { 'doi', 'DOI' }, |
| link = 'Digital object identifier', | | link = 'Digital object identifier', |
| q = 'Q25670',
| |
| label = 'doi', | | label = 'doi', |
| mode = 'manual', | | mode = 'manual', |
| prefix = '//doi.org/', | | prefix = '//dx.doi.org/', |
| COinS = 'info:doi', | | COinS = 'info:doi', |
| separator = ':', | | separator = ':', |
| encode = true, | | encode = true, |
| custom_access = 'doi-access',
| | }, |
| },
| |
| ['EISSN'] = { | |
| parameters = {'eissn', 'EISSN'},
| |
| link = 'International_Standard_Serial_Number#Electronic_ISSN',
| |
| q = 'Q46339674',
| |
| label = 'eISSN',
| |
| mode = 'manual',
| |
| prefix = '//www.worldcat.org/issn/',
| |
| COinS = 'rft.eissn',
| |
| encode = false,
| |
| separator = ' ',
| |
| },
| |
| ['HDL'] = {
| |
| parameters = { 'hdl', 'HDL' },
| |
| link = 'Handle System',
| |
| q = 'Q3126718',
| |
| label = 'hdl',
| |
| mode = 'manual',
| |
| prefix = '//hdl.handle.net/',
| |
| COinS = 'info:hdl',
| |
| separator = ':',
| |
| encode = true,
| |
| custom_access = 'hdl-access',
| |
| },
| |
| ['ISBN'] = { | | ['ISBN'] = { |
| parameters = {'isbn', 'ISBN', 'isbn13', 'ISBN13'}, | | parameters = {'isbn', 'ISBN', 'isbn13', 'ISBN13'}, |
| link = 'International Standard Book Number', | | link = 'International Standard Book Number', |
| q = 'Q33057',
| |
| label = 'ISBN', | | label = 'ISBN', |
| mode = 'manual', | | mode = 'manual', |
خط ۱٬۲۱۷: |
خط ۴۸۹: |
| COinS = 'rft.isbn', | | COinS = 'rft.isbn', |
| separator = ' ', | | separator = ' ', |
| },
| | }, |
| ['ISMN'] = { | |
| parameters = {'ismn', 'ISMN'},
| |
| link = 'International Standard Music Number',
| |
| q = 'Q1666938',
| |
| label = 'ISMN',
| |
| mode = 'manual',
| |
| prefix = '', -- not currently used;
| |
| COinS = 'nil', -- nil because we can't use pre or rft or info:
| |
| separator = ' ',
| |
| },
| |
| ['ISSN'] = { | | ['ISSN'] = { |
| parameters = {'issn', 'ISSN'}, | | parameters = {'issn', 'ISSN'}, |
| link = 'International Standard Serial Number', | | link = 'International Standard Serial Number', |
| q = 'Q131276',
| |
| label = 'ISSN', | | label = 'ISSN', |
| mode = 'manual', | | mode = 'manual', |
خط ۱٬۲۳۸: |
خط ۴۹۹: |
| 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 = 'manual', | | mode = 'external', |
| prefix = '//zbmath.org/?format=complete&q=an:', | | prefix = '//zbmath.org/?format=complete&q=an:', |
| COinS = 'pre', -- use prefix value | | COinS = 'rft.jfm', |
| encode = true, | | encode = true, |
| separator = ' ', | | separator = ' ', |
| },
| | }, |
| ['JSTOR'] = { | | ['JSTOR'] = { |
| parameters = {'jstor', 'JSTOR'}, | | parameters = {'jstor', 'JSTOR'}, |
| link = 'JSTOR', | | link = 'JSTOR', |
| q = 'Q1420342',
| |
| label = 'JSTOR', | | label = 'JSTOR', |
| mode = 'external', | | mode = 'external', |
| prefix = '//www.jstor.org/stable/', -- protocol relative tested 2013-09-04 | | prefix = '//www.jstor.org/stable/', -- protocol relative tested 2013-09-04 |
| COinS = 'pre', -- use prefix value | | COinS = 'rft.jstor', |
| | -- encode = true, |
| encode = false, | | encode = false, |
| separator = ' ', | | separator = ' ', |
| custom_access = 'jstor-access',
| | }, |
| },
| |
| ['LCCN'] = { | | ['LCCN'] = { |
| parameters = {'LCCN', 'lccn'}, | | parameters = {'LCCN', 'lccn'}, |
| link = 'Library of Congress Control Number', | | link = 'Library of Congress Control Number', |
| q = 'Q620946',
| |
| label = 'LCCN', | | label = 'LCCN', |
| mode = 'manual', | | mode = 'manual', |
| prefix = '//lccn.loc.gov/', -- protocol relative tested 2015-12-28 | | prefix = 'http://lccn.loc.gov/', |
| COinS = 'info:lccn', -- use prefix value | | COinS = 'rft.lccn', |
| encode = false, | | encode = false, |
| separator = ' ', | | separator = ' ', |
| },
| | }, |
| ['MR'] = { | | ['MR'] = { |
| parameters = {'MR', 'mr'}, | | parameters = {'MR', 'mr'}, |
| link = 'Mathematical Reviews', | | link = 'Mathematical Reviews', |
| q = 'Q211172',
| |
| label = 'MR', | | label = 'MR', |
| mode = 'manual', | | mode = 'external', |
| 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 = 'rft.mr', |
| encode = true, | | encode = true, |
| separator = ' ', | | separator = ' ', |
| },
| | }, |
| ['OCLC'] = { | | ['OCLC'] = { |
| parameters = {'OCLC', 'oclc'}, | | parameters = {'OCLC', 'oclc'}, |
| link = 'OCLC', | | link = 'OCLC', |
| q = 'Q190593',
| |
| label = 'OCLC', | | label = 'OCLC', |
| mode = 'manual', | | mode = 'external', |
| prefix = '//www.worldcat.org/oclc/', | | prefix = '//www.worldcat.org/oclc/', |
| COinS = 'info:oclcnum', | | COinS = 'info:oclcnum', |
| encode = true, | | encode = true, |
| separator = ' ', | | separator = ' ', |
| },
| | }, |
| ['OL'] = { | | ['OL'] = { |
| parameters = { 'ol', 'OL' }, | | parameters = { 'ol', 'OL' }, |
| link = 'Open Library', | | link = 'Open Library', |
| q = 'Q1201876',
| |
| label = 'OL', | | label = 'OL', |
| mode = 'manual', | | mode = 'manual', |
| prefix = '//openlibrary.org/', | | COinS = 'info:olnum', |
| COinS = nil, -- no COinS for this id (needs thinking on implementation because /authors/books/works/OL)
| |
| separator = ' ', | | separator = ' ', |
| encode = true, | | endode = true, |
| custom_access = 'ol-access',
| | }, |
| },
| |
| ['OSTI'] = { | | ['OSTI'] = { |
| parameters = {'OSTI', 'osti'}, | | parameters = {'OSTI', 'osti'}, |
| link = 'Office of Scientific and Technical Information', | | link = 'Office of Scientific and Technical Information', |
| q = 'Q2015776',
| |
| label = 'OSTI', | | label = 'OSTI', |
| mode = 'external', | | mode = 'external', |
| prefix = '//www.osti.gov/biblio/', -- protocol relative tested 2018-09-12 | | prefix = '//www.osti.gov/energycitations/product.biblio.jsp?osti_id=', -- protocol relative tested 2013-09-04 |
| COinS = 'pre', -- use prefix value | | COinS = 'info:osti', |
| encode = true, | | encode = true, |
| separator = ' ', | | separator = ' ', |
| custom_access = 'osti-access',
| | }, |
| },
| |
| ['PMC'] = { | | ['PMC'] = { |
| parameters = {'PMC', 'pmc'}, | | parameters = {'PMC', 'pmc'}, |
| link = 'PubMed Central', | | link = 'PubMed Central', |
| q = 'Q229883',
| |
| label = 'PMC', | | label = 'PMC', |
| mode = 'manual', | | mode = 'manual', -- changed to support unlinking of PMC identifier when article is embargoed |
| 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 = 'info:pmc', |
| encode = true, | | encode = true, |
| separator = ' ', | | separator = ' ', |
| access = 'free', -- free to read
| | }, |
| },
| |
| ['PMID'] = { | | ['PMID'] = { |
| parameters = {'PMID', 'pmid'}, | | parameters = {'PMID', 'pmid'}, |
| link = 'PubMed Identifier', | | link = 'PubMed Identifier', |
| q = '',
| |
| label = 'PMID', | | label = 'PMID', |
| mode = 'manual', | | mode = 'manual', -- changed from external manual to support PMID validation |
| prefix = '//www.ncbi.nlm.nih.gov/pubmed/', | | prefix = '//www.ncbi.nlm.nih.gov/pubmed/', |
| COinS = 'info:pmid', | | COinS = 'info:pmid', |
| encode = false, | | encode = false, |
| separator = ' ', | | separator = ' ', |
| },
| | }, |
| ['RFC'] = { | | ['RFC'] = { |
| parameters = {'RFC', 'rfc'}, | | parameters = {'RFC', 'rfc'}, |
| link = 'Request for Comments', | | link = 'Request for Comments', |
| q = 'Q212971',
| |
| label = 'RFC', | | label = 'RFC', |
| mode = 'external', | | mode = 'external', |
| prefix = '//tools.ietf.org/html/rfc', | | prefix = '//tools.ietf.org/html/rfc', |
| COinS = 'pre', -- use prefix value | | COinS = 'info:rfc', |
| encode = false, | | encode = false, |
| separator = ' ', | | separator = ' ', |
| access = 'free', -- free to read
| | }, |
| },
| |
| ['SSRN'] = { | | ['SSRN'] = { |
| parameters = {'SSRN', 'ssrn'}, | | parameters = {'SSRN', 'ssrn'}, |
| link = 'Social Science Research Network', | | link = 'Social Science Research Network', |
| q = 'Q7550801',
| |
| label = 'SSRN', | | label = 'SSRN', |
| mode = 'manual', | | mode = 'external', |
| prefix = '//ssrn.com/abstract=', -- protocol relative tested 2013-09-04 | | prefix = '//ssrn.com/abstract=', -- protocol relative tested 2013-09-04 |
| COinS = 'pre', -- use prefix value | | COinS = 'info:ssrn', |
| encode = true, | | encode = true, |
| separator = ' ', | | separator = ' ', |
| access = 'free', -- always free to read
| | }, |
| },
| |
| ['USENETID'] = { | | ['USENETID'] = { |
| parameters = {'message-id'}, | | parameters = {'message-id'}, |
| link = 'Usenet', | | link = 'Usenet', |
| q = 'Q193162',
| |
| label = 'Usenet:', | | label = 'Usenet:', |
| mode = 'manual', | | mode = 'manual', |
| prefix = 'news:', | | prefix = 'news:', |
| encode = false, | | encode = false, |
| COinS = 'pre', -- use prefix value | | COinS = 'info:usenet', |
| separator = ' ', | | separator = ' ', |
| },
| | }, |
| ['ZBL'] = { | | ['ZBL'] = { |
| parameters = {'ZBL', 'zbl'}, | | parameters = {'ZBL', 'zbl'}, |
| link = 'Zentralblatt MATH', | | link = 'Zentralblatt MATH', |
| q = 'Q190269',
| |
| label = 'Zbl', | | label = 'Zbl', |
| mode = 'manual', | | mode = 'external', |
| prefix = '//zbmath.org/?format=complete&q=an:', | | prefix = '//zbmath.org/?format=complete&q=an:', |
| COinS = 'pre', -- use prefix value | | COinS = 'info:zbl', |
| encode = true, | | encode = true, |
| separator = ' ', | | separator = ' ', |
| },
| | }, |
| }
| | } |
| | |
| | |
| --[[--------------------------< E X P O R T E D T A B L E S >------------------------------------------------
| |
| ]]
| |
|
| |
|
| return { | | return citation_config; |
| aliases = aliases,
| |
| special_case_translation = special_case_translation,
| |
| defaults = defaults,
| |
| date_names = date_names,
| |
| error_conditions = error_conditions,
| |
| editor_markup_patterns = editor_markup_patterns,
| |
| et_al_patterns = et_al_patterns,
| |
| global_df = global_df,
| |
| id_handlers = id_handlers,
| |
| keywords = keywords,
| |
| stripmarkers=stripmarkers,
| |
| invisible_chars = invisible_chars,
| |
| indic_script = indic_script,
| |
| maint_cats = maint_cats,
| |
| messages = messages,
| |
| presentation = presentation,
| |
| prop_cats = prop_cats,
| |
| punct_skip = punct_skip,
| |
| script_lang_codes = script_lang_codes,
| |
| lang_code_remap = lang_code_remap,
| |
| lang_name_remap = lang_name_remap,
| |
| title_types = title_types,
| |
| uncategorized_namespaces = uncategorized_namespaces,
| |
| uncategorized_subpages = uncategorized_subpages,
| |
| templates_using_volume = templates_using_volume,
| |
| templates_using_issue = templates_using_issue,
| |
| templates_not_using_page = templates_not_using_page,
| |
| }
| |