模块:Citation/CS1/Configuration

imported>Liangent2014年9月20日 (六) 13:48的版本

此模块的文档可以在模块:Citation/CS1/Configuration/doc创建

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;";

--[[
List of namespaces that should not be included in citation
error categories.  Same as setting notracking = true by default

Note: Namespace names should use underscores instead of spaces.
]]
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' };

--[[
Translation table

The following contains fixed text that may be output as part of a citation.
This is separated from the main body to aid in future translations of this
module.
]]
citation_config.messages = {
  ['published'] = '$1',
  ['lay summary'] = 'Lay summary',
  ['retrieved'] = '&#91;$1&#93;',
  ['inactive'] = '不活跃',
  ['archived-dead'] = '($1存档于$2)',
  ['archived-not-dead'] = '(原始内容$1于$2)',
  ['archived-missing'] = '(原始内容$1存档于$2)',
  ['archived'] = '存档',
  ['original'] = '原始内容',
  ['editor'] = '编',
  ['editors'] = '编', 
  ['edition'] = '$1', 
  ['episode'] = '集',
  ['season'] = '节', 
  ['series'] = '系列',
  ['cartography'] = 'Cartography by $1',
  ['section'] = 'Section $1',
  ['inset'] = '$1 inset',
  ['written'] = '写于$1',
  ['in'] = '(编)',
  ['et al'] = '等', 
  ['subscription'] = '<span style="font-size:0.95em; font-size:90%; color:#555">(需要订阅(<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>' ..
  	'[[Category:Pages containing links to subscription-only content]]', 
  ['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>' ..
  	'[[Category:Pages with login required references or sources]]',
  ['language'] = '<span style="font-family: sans-serif; cursor: default; color:#555; font-size: 0.8em; bottom: 0.1em; font-weight: bold;" title="连接到$1网页">($1)</span>', 
  ['via'] = " &mdash;通过$1",
  ['event'] = '事件发生在',
  ['minutes'] = '记录于', 
  ['quoted-title'] = '$1',
  ['italic-title'] = "$1",
  ['trans-quoted-title'] = "&#91;$1&#93;",
  ['trans-italic-title'] = "&#91;$1&#93;",
  ['quoted-text'] = '"$1"',

  ['parameter'] = '<code style="'..code_style..'">&#124;$1=</code>',
  ['parameter-separator'] = '、',
  ['parameter-final-separator'] = '和',
  ['parameter-pair-separator'] = '和',

  -- Error output
  -- .error class is specified at https://git.wikimedia.org/blob/mediawiki%2Fcore.git/9553bd02a5595da05c184f7521721fb1b79b3935/skins%2Fcommon%2Fshared.css#L538
  -- .citation-comment class is specified at Help:CS1_errors#Controlling_error_message_display
  ['hidden-error'] = '<span style="display:none;font-size:100%" class="error citation-comment">$1</span>',
  ['visible-error'] = '<span style="font-size:100%" class="error citation-comment">$1</span>',
  
  -- Determines the location of the help page
  ['help page link'] = 'Help:引文格式1错误',
  ['help page label'] = '帮助',
  
  -- Internal errors (should only occur if configuration is bad)
  ['undefined_error'] = '调用了一个未定义的错误条件',
  ['unknown_manual_ID'] = '无法识别的手动ID模式',
  ['unknown_ID_mode'] = '无法识别的ID模式',
  ['unknown_argument_map'] = 'Argument map not defined for this variable',
  ['bare_url_no_origin'] = 'Bare url found but origin indicator is nil or empty',
}

-- Aliases table for commonly passed parameters
citation_config.aliases = {
	['AccessDate'] = {'access-date', 'accessdate'},
	['Agency'] = 'agency',
	['AirDate'] = {'air-date', 'airdate'},
	['ArchiveDate'] = {'archive-date', 'archivedate'},
	['ArchiveURL'] = {'archive-url', 'archiveurl'},
	['ASINTLD'] = {'ASIN-TLD', 'asin-tld'},
	['At'] = 'at',
	['Authors'] = {'authors', 'people', 'host'},
	['AuthorFormat'] = {'author-format', 'authorformat'},
	['AuthorSeparator'] = 'author-separator',
	['AuthorNameSeparator'] = 'author-name-separator',
	['BookTitle'] = {'book-title', 'booktitle'},
	['Callsign'] = {'call-sign', 'callsign'},				-- cite interview
	['Cartography'] = 'cartography',
	['Chapter'] = {'chapter', 'contribution', 'entry', 'article', 'section', 'notestitle'},	-- notestitle is deprecated; remove after 1 October 2014; used by old cite AV media notes
	['ChapterLink'] = {'chapter-link', 'chapterlink'},
	['ChapterURL'] = {'chapter-url', 'chapterurl', 'contribution-url', 'contributionurl', 'section-url', 'sectionurl'},
	['City'] = 'city',										-- cite interview
	['Coauthors'] = {'coauthors', 'coauthor'},				-- coauthor and coauthors are deprecated; remove after 1 October 2014
	['Cointerviewers'] = 'cointerviewers',					-- cointerviewers is deprecated; remove after 1 October 2014; used by cite interview
	['Conference'] = {'conference', 'event'},
	['ConferenceURL'] = {'conference-url', 'conferenceurl', 'event-url', 'eventurl'},
	['Date'] = 'date',
	['Day'] = 'day',
	['DeadURL'] = {'dead-url', 'deadurl'},
	['Degree'] = 'degree',
	['DisplayAuthors'] = {'display-authors', 'displayauthors'},
	['DisplayEditors'] = {'display-editors', 'displayeditors'},
	['Docket'] = 'docket',
	['DoiBroken'] = {'doi-broken', 'doi-broken-date', 'doi-inactive-date', 'DoiBroken', 'doi_brokendate', 'doi_inactivedate'},
	['Edition'] = 'edition',
	['Editors'] = 'editors',
	['EditorFormat'] = {'editor-format', 'editorformat'},
	['EditorSeparator'] = 'editor-separator',
	['EditorNameSeparator'] = 'editor-name-separator',
	['Embargo'] = {'Embargo', 'embargo'},
	['Format'] = 'format',
	['ID'] = {'id', 'ID', 'publisherid'},					-- publisherid is deprecated; remove after 1 October 2014; used by old cite AV media notes and old cite DVD notes
	['IgnoreISBN'] = {'ignore-isbn-error', 'ignoreisbnerror'},
	['Inset'] = 'inset',
	['Interviewer'] = 'interviewer',						-- cite interview
	['Issue'] = {'issue', 'number'},
	['Language'] = {'language', 'in'},
	['LastAuthorAmp'] = {'last-author-amp', 'lastauthoramp'},
	['LayDate'] = {'lay-date', 'laydate'},
	['LaySource'] = {'lay-source', 'laysource'},
	['LayURL'] = {'lay-url', 'lay-summary', 'layurl', 'laysummary'},
	['Minutes'] = 'minutes',
	['Month'] = 'month',
	['NameSeparator'] = 'name-separator',
	['Network'] = 'network',
	['NoPP'] = {'no-pp', 'nopp'},
	['NoTracking'] = {'template-doc-demo', 'template doc demo', 'no-cat', 'nocat', 
		'no-tracking', 'notracking'},
	['OrigYear'] = {'orig-year', 'origyear', 'titleyear'},	-- titleyear is deprecated; remove after 1 October 2014; used in old cite DVD notes
	['Others'] = {'others', 'artist', 'director'},			-- artist and director are deprecated; remove after 1 October 2014; used in old cite AV media notes and old cite DVD notes
	['Page'] = {'p', 'page'},
	['Pages'] = {'pp', 'pages'},
	['Periodical'] = {'journal', 'newspaper', 'magazine', 'work',
		'website',  'periodical', 'encyclopedia', 'encyclopaedia', 'dictionary'},
	['Place'] = {'place', 'location'},
	['PPrefix'] = {'p-prefix', 'PPrefix'},
	['PPPrefix'] = {'pp-prefix', 'PPPrefix'},
	-- LOCAL
	['PSuffix'] = 'PSuffix',
	['PPSuffix'] = 'PPSuffix',
	-- END LOCAL
	['Program'] = 'program',								-- cite interview
	['PostScript'] = 'postscript',
	['PublicationDate'] = {'publicationdate', 'publication-date'},
	['PublicationPlace'] = {'publication-place', 'publicationplace'},
--[[ Hide unfinished cite newsgroup code so that long delayed update can take place
	['PublisherName'] = {'publisher', 'distributor', 'institution', 'newsgroup'},
]]	['PublisherName'] = {'publisher', 'distributor', 'institution'},
	['Quote'] = {'quote', 'quotation'},
	['Ref'] = {'ref', 'Ref'},
	['RegistrationRequired'] = 'registration',
	['Scale'] = 'scale',
	['Section'] = 'section',
	['Season'] = 'season',
	['Separator'] = 'separator',
	['Series'] = {'series', 'version'},
	['SeriesSeparator'] = 'series-separator',
	['SeriesLink'] = {'series-link', 'serieslink'},
	['SeriesNumber'] = {'series-number', 'series-no', 'seriesnumber', 'seriesno'},
	['Station'] = 'station',
	['SubscriptionRequired'] = 'subscription',
	['Time'] = 'time',
	['TimeCaption'] = {'time-caption', 'timecaption'},
	['Title'] = 'title',
	['TitleLink'] = {'title-link', 'episode-link', 'titlelink', 'episodelink', 'albumlink'},	-- albumlink is deprecated; remove after 1 October 2014; used by old cite AV media notes
	['TitleNote'] = 'department',
	['TitleType'] = {'type', 'medium'},
	['TransChapter'] = {'trans-chapter', 'trans_chapter'},
	['Transcript'] = 'transcript',
	['TranscriptURL'] = {'transcript-url', 'transcripturl'},
	['TransTitle'] = {'trans-title', 'trans_title',
	-- LOCAL
	'title_zh',
	-- END LOCAL
	},
	['URL'] = {'url', 'URL'},
	['Via'] = 'via',
	['Volume'] = 'volume',
	['Year'] = 'year',

	['AuthorList-First'] = {"author#-first", "author-first#",
		"first#", "given#"},
	['AuthorList-Last'] = {"author#-last", "author-last#", 
		"last#", "surname#", "Author#", "author#", "authors#", "subject#"},
	['AuthorList-Link'] = {"author#-link", "author-link#", 
		"author#link", "authorlink#", "subject-link#", "subject#link", "subject#-link", "subjectlink#"},
	['AuthorList-Mask'] = {"author#-mask", "author-mask#", 
		"author#mask", "authormask#"},
	
	['EditorList-First'] = {"editor#-first", 
		"editor-first#", "editor#-given", "editor-given#", "EditorGiven#"},
	['EditorList-Last'] = {"editor#-last", "editor-last#",
		"editor#-surname", "editor-surname#", "EditorSurname#", "Editor#", "editor#", "editors#"},
	['EditorList-Link'] = {"editor#-link", "editor-link#", 
		"editor#link", "editorlink#"},
	['EditorList-Mask'] = {"editor#-mask", "editor-mask#", 
		"editor#mask", "editormask#"},
	
}

-- Default parameter values
citation_config.defaults = {
	['DeadURL'] = 'yes',
	['AuthorSeparator'] = ';',
	['EditorSeparator'] = ';',
	['NameSeparator'] = ',',
	['PPrefix'] = "",
	['PPPrefix'] = "",
	-- LOCAL
	['PSuffix'] = "",
	['PPSuffix'] = "",
	-- END LOCAL
}

--[[
Error condition table

The following contains a list of IDs for various error conditions defined in the 
code.  For each ID, we specify a text message to display, an error category to
include, and whether the error message should be wrapped as a hidden comment.

Anchor changes require identical changes to matching anchor in Help:CS1 errors
]]

citation_config.error_conditions = {
    accessdate_missing_url = {
        message = '使用<code>&#124;accessdate=</code>需要含有<code>&#124;url=</code>',
        anchor = 'accessdate_missing_url',
        category = '含有访问日期但无网址的引用的页面',
        hidden = true },
    archive_missing_date = {
        message = '使用<code>&#124;archiveurl=</code>需要含有<code>&#124;archivedate=</code>',
        anchor = 'archive_missing_date',
        category = '含有存档网址错误的引用的页面‎',
        hidden = false },
    archive_missing_url = {
        message = '使用<code>&#124;archiveurl=</code>需要含有<code>&#124;url=</code>',
        anchor = 'archive_missing_url',
        category = '含有存档网址错误的引用的页面‎',
        hidden = false },
    bad_doi = {
        message = '请检查<code>&#124;doi=</code>值',
        anchor = 'bad_doi',
        category = '含有DOI错误的引用的页面',
        hidden = false },
    bad_isbn = {
        message = '请检查<code>&#124;isbn=</code>值',
        anchor = 'bad_isbn',
        category = '含有ISBN错误的引用的页面',
        hidden = false },
    bad_ol = {
        message = '请检查<code>&#124;ol=</code>值',
        anchor = 'bad_ol',
        category = '含有OL错误的引用的页面',
        hidden = false },
    bad_url = {
        message = '请检查<code>&#124;url=</code>格式',
        anchor = 'bad_url',
        category = '含有网址格式错误的引用的页面',
        hidden = false },
    bare_url_missing_title = {
        message = '$1缺少标题',
        anchor = 'bare_url_missing_title',
        category = '含有裸露网址的引用的页面‎',
        hidden = false },
    citation_missing_title = {
        message = '缺少或<code>&#124;title=</code>为空',
        anchor = 'citation_missing_title',
        category = '含有缺少标题的引用的页面‎',
        hidden = false },
    cite_web_url = {
        message = '缺少或<code>&#124;url=</code>为空',
        anchor = 'cite_web_url',
        category = '含有缺少网址的网站引用的页面‎',
        hidden = true },
    empty_citation = {
        message = '空引用‎',
        anchor = 'empty_citation',
        category = '含有空引用的页面‎',
        hidden = false },
    extra_pages = {
        message = '<code>&#124;pages=</code>或<code>&#124;at=</code>多余',
        anchor = 'extra_pages',
        category = '含有页码指定冲突的引用的页面‎',
        hidden = false },
    format_missing_url = {
        message = '使用<code>&#124;format=</code>需要含有<code>&#124;url=</code>',
        anchor = 'format_missing_url',
        category = '含有网络文件格式但无网址的引用的页面‎',
        hidden = true },
    implict_etal_author = {
        message = '建议使用<code>&#124;displayauthors=</code>',
        anchor = 'displayauthors',
        category = '含有旧式缩略标签的引用的页面‎',
        hidden = true },
    implict_etal_editor = {
        message = '建议使用<code>&#124;displayeditors=</code>',
        anchor = 'displayeditors',
        category = '含有旧式缩略标签的引用的页面‎',
        hidden = true },
    parameter_ignored = {
        message = '已忽略未知参数<code>&#124;$1=</code>',
        anchor = 'parameter_ignored',
        category = '含有未知参数的引用的页面',
        hidden = false },
    parameter_ignored_suggest = {
        message = '已忽略未知参数<code>&#124;$1=</code>(建议使用<code>&#124;$2=</code>)',
        anchor = 'parameter_ignored_suggest',
        category = '含有未知参数的引用的页面',
        hidden = false },
    redundant_parameters = {
        message = '$1只需其一',
        anchor = 'redundant_parameters',
        category = '含有冗余参数的引用的页面',
        hidden = false },
    text_ignored = {
        message = '已忽略文本“$1”',
        anchor = 'text_ignored',
        category = '含有未命名参数的引用的页面',
        hidden = false },
    trans_missing_chapter = {
        message = '使用<code>&#124;trans-chapter=</code>需要含有<code>&#124;chapter=</code>',
        anchor = 'trans_missing_chapter',
        category = '含有不带原名的译名的引用的页面',
        hidden = false },
    trans_missing_title = {
        message = '使用<code>&#124;trans-title=</code>需要含有<code>&#124;title=</code>',
        anchor = 'trans_missing_title',
        category = '含有不带原名的译名的引用的页面',
        hidden = false },
    wikilink_in_url = {
        message = '在网址标题中嵌入维基内链',
        anchor = 'wikilink_in_url',
        category = '含有将维基内链嵌入网址标题的引用的页面',
        hidden = false },
}

citation_config.id_handlers = {
    ['ASIN'] = {
        parameters = { 'asin', 'ASIN' },       
        link = '亚马逊标准识别码',
        label = 'ASIN',
        mode = 'manual',
        COinS = 'info:asin',
        separator = '&nbsp;',
        encode = false;
    },
    ['DOI'] = {
        parameters = { 'doi', 'DOI' },
        link = '數位物件識別號',
        label = 'doi',
        mode = 'manual',
        prefix = 'http://dx.doi.org/',
        COinS = 'info:doi',
        separator = ':',
        encode = true,
    },
    ['OL'] = {
        parameters = { 'ol', 'OL' },
        link = '开放图书馆',
        label = 'OL',
        mode = 'manual',
        COinS = 'info:olnum',
        separator = '&nbsp;',
        endode = true,
    },
    ['ARXIV'] = {
        parameters = {'arxiv', 'ARXIV'}, 
        link = 'arXiv',
        label = 'arXiv',
        mode = 'external',
        prefix = 'http://arxiv.org/abs/',
        encode = false,
        COinS = 'info:arxiv',
        separator = ':',
    },
    ['BIBCODE'] = {
        parameters = {'bibcode', 'BIBCODE'}, 
        link = 'Bibcode',
        label = 'Bibcode',
        mode = 'external',
        prefix = 'http://adsabs.harvard.edu/abs/',
        encode = false,
        COinS = 'info:bibcode',
        separator = ':',
    },
    ['ISBN'] = {
        parameters = {'isbn', 'ISBN', 'isbn13', 'ISBN13'}, 
        link = '国际标准书号',
        label = 'ISBN',
        mode = 'manual',
        prefix = 'Special:BookSources/',
        COinS = 'rft.isbn',
        separator = '&nbsp;',
    },
    ['ISSN'] = {
        parameters = {'issn', 'ISSN'}, 
        link = '国际标准连续出版物号',
        label = 'ISSN',
        mode = 'external',
        prefix = '//www.worldcat.org/issn/',
        COinS = 'rft.issn',
        encode = false,
        separator = '&nbsp;',
    },
    ['JFM'] = {
        parameters = {'jfm', 'JFM'}, 
        link = 'Jahrbuch über die Fortschritte der Mathematik',
        label = 'JFM',
        mode = 'external',
        prefix = 'http://www.zentralblatt-math.org/zmath/en/search/?format=complete&q=an:',
        COinS = 'rft.jfm',
        encode = true,
        separator = '&nbsp;',
    },
    ['JSTOR'] = {
        parameters = {'jstor', 'JSTOR'}, 
        link = 'JSTOR',
        label = 'JSTOR',
        mode = 'external',
        prefix = 'http://www.jstor.org/stable/',
        COinS = 'rft.jstor',
        encode = true,
        separator = '&nbsp;',
    },
    ['LCCN'] = {
        parameters = {'LCCN', 'lccn'}, 
        link = '美国国会图书馆控制码',
        label = 'LCCN',
        mode = 'external',
        prefix = 'http://lccn.loc.gov/',
        COinS = 'rft.lccn',
        encode = false,
        separator = '&nbsp;',
    },
    ['MR'] = {
        parameters = {'MR', 'mr'}, 
        link = '數學評論',
        label = 'MR',
        mode = 'external',
        prefix = 'http://www.ams.org/mathscinet-getitem?mr=',
        COinS = 'rft.mr',
        encode = true,
        separator = '&nbsp;',
    },
    ['OCLC'] = {
        parameters = {'OCLC', 'oclc'}, 
        link = 'OCLC',
        label = 'OCLC',
        mode = 'external',
        prefix = '//www.worldcat.org/oclc/',
        COinS = 'info:oclcnum',
        encode = true,
        separator = '&nbsp;',
    },
    ['OSTI'] = {
        parameters = {'OSTI', 'osti'}, 
        link = '科学和技术信息办公室',
        label = 'OSTI',
        mode = 'external',
        prefix = 'http://www.osti.gov/energycitations/product.biblio.jsp?osti_id=',
        COinS = 'info:osti',
        encode = true,
        separator = '&nbsp;',
    },
    ['PMC'] = {
        parameters = {'PMC', 'pmc'}, 
        link = '公共医学中心',
        label = 'PMC',
        mode = 'external',
        prefix = '//www.ncbi.nlm.nih.gov/pmc/articles/PMC',
        suffix = " ",
        COinS = 'info:pmc',
        encode = true,
        separator = '&nbsp;',
    },
    ['PMID'] = {
        parameters = {'PMID', 'pmid'}, 
        link = '公共医学识别码',
        label = 'PMID',
        mode = 'external',
        prefix = '//www.ncbi.nlm.nih.gov/pubmed/',
        COinS = 'info:pmid',
        encode = false,
        separator = '&nbsp;',
    },
    ['RFC'] = {
        parameters = {'RFC', 'rfc'}, 
        link = '徵求修正意見書',
        label = 'RFC',
        mode = 'external',
        prefix = '//tools.ietf.org/html/rfc',
        COinS = 'info:rfc',
        encode = false,
        separator = '&nbsp;',
    },
    ['SSRN'] = {
        parameters = {'SSRN', 'ssrn'}, 
        link = '社会科学研究网络',
        label = 'SSRN',
        mode = 'external',
        prefix = 'http://ssrn.com/abstract=',
        COinS = 'info:ssrn',
        encode = true,
        separator = '&nbsp;',
    },
    ['ZBL'] = {
        parameters = {'ZBL', 'zbl'}, 
        link = 'Zentralblatt MATH',
        label = 'Zbl',
        mode = 'external',
        prefix = 'http://www.zentralblatt-math.org/zmath/en/search/?format=complete&q=an:',
        COinS = 'info:zbl',
        encode = true,
        separator = '&nbsp;',
    },
-- LOCAL
    ['CSBN'] = {
        parameters = {'unified', 'csbn', 'CSBN'}, 
        link = '统一书号',
        label = 'CSBN',
        mode = 'external',
        prefix = 'http://book.douban.com/subject_search?search_text=SH',
        COinS = 'rft.csbn',
        encode = true,
        separator = '&nbsp;',
    },
-- END LOCAL
}

--iso639-1 language codes and names.
citation_config.iso639_1 = {
}
return citation_config;