13,398
edits
(Update) Tag: Reverted |
Tags: Undo Reverted |
||
Line 1: | Line 1: | ||
--[[--------------------------< S U P P O R T E D P A R A M E T E R S >-------------------------------------- | --[[--------------------------< S U P P O R T E D P A R A M E T E R S >-------------------------------------- | ||
Line 4: | Line 5: | ||
true - these parameters are valid and supported parameters | true - these parameters are valid and supported parameters | ||
false - these parameters are deprecated but still supported | false - these parameters are deprecated but still supported | ||
nil - these parameters are no longer supported. remove entirely | nil - these parameters are no longer supported. remove entirely | ||
]] | ]] | ||
local | local basic_arguments = { | ||
['accessdate'] = true, | ['accessdate'] = true, | ||
['access-date'] = true, | ['access-date'] = true, | ||
Line 20: | Line 20: | ||
['article'] = true, | ['article'] = true, | ||
['article-format'] = true, | ['article-format'] = true, | ||
['article-url'] = true, | ['article-url'] = true, | ||
['article-url-access'] = true, | ['article-url-access'] = true, | ||
Line 40: | Line 39: | ||
['bibcode-access'] = true, | ['bibcode-access'] = true, | ||
['biorxiv'] = true, -- cite biorxiv; here because allowed in cite ... as identifier | ['biorxiv'] = true, -- cite biorxiv; here because allowed in cite ... as identifier | ||
['booktitle'] = true, | |||
['book-title'] = true, | |||
['cartography'] = true, | |||
['chapter'] = true, | ['chapter'] = true, | ||
['chapter-format'] = true, | ['chapter-format'] = true, | ||
['chapterurl'] = true, | |||
['chapter-url'] = true, | ['chapter-url'] = true, | ||
['chapter-url-access'] = true, | ['chapter-url-access'] = true, | ||
['citeseerx'] = true, -- cite citeseerx; here because allowed in cite ... as identifier | ['citeseerx'] = true, -- cite citeseerx; here because allowed in cite ... as identifier | ||
['collaboration'] = true, | ['collaboration'] = true, | ||
['conference'] = true, | |||
['conference-format'] = true, | |||
['conferenceurl'] = false, | |||
['conference-url'] = true, | |||
['contribution'] = true, | ['contribution'] = true, | ||
['contribution-format'] = true, | ['contribution-format'] = true, | ||
['contributionurl'] = false, | |||
['contribution-url'] = true, | ['contribution-url'] = true, | ||
['contribution-url-access'] = true, | ['contribution-url-access'] = true, | ||
Line 58: | Line 66: | ||
['contributor-mask'] = true, | ['contributor-mask'] = true, | ||
['date'] = true, | ['date'] = true, | ||
['degree'] = true, | |||
['department'] = true, | ['department'] = true, | ||
['df'] = true, | ['df'] = true, | ||
Line 67: | Line 76: | ||
['display-subjects'] = true, | ['display-subjects'] = true, | ||
['display-translators'] = true, | ['display-translators'] = true, | ||
['docket'] = true, | |||
['doi'] = true, | ['doi'] = true, | ||
['DOI'] = true, | ['DOI'] = true, | ||
Line 88: | Line 98: | ||
['entry-url-access'] = true, | ['entry-url-access'] = true, | ||
['eprint'] = true, -- cite arxiv; here because allowed in cite ... as identifier | ['eprint'] = true, -- cite arxiv; here because allowed in cite ... as identifier | ||
['event'] = true, -- synonym of conference in /Config, but used in Cite speech? | |||
['first'] = true, | ['first'] = true, | ||
['format'] = true, | ['format'] = true, | ||
Line 94: | Line 105: | ||
['HDL'] = true, | ['HDL'] = true, | ||
['hdl-access'] = true, | ['hdl-access'] = true, | ||
['host'] = true, | ['host'] = true, | ||
['id'] = true, | ['id'] = true, | ||
['ID'] = true, | ['ID'] = true, | ||
['institution'] = true, | ['institution'] = true, | ||
['interviewer'] = true, | ['interviewer'] = true, | ||
['interviewer-first'] = true, | ['interviewer-first'] = true, | ||
Line 107: | Line 118: | ||
['isbn'] = true, | ['isbn'] = true, | ||
['ISBN'] = true, | ['ISBN'] = true, | ||
['isbn13'] = true, | |||
['ISBN13'] = true, | |||
['ismn'] = true, | ['ismn'] = true, | ||
['ISMN'] = true, | ['ISMN'] = true, | ||
Line 121: | Line 134: | ||
['language'] = true, | ['language'] = true, | ||
['last'] = true, | ['last'] = true, | ||
['laydate'] = false, | |||
['lay-date'] = true, | |||
['laysource'] = false, | |||
['lay-source'] = true, | |||
['lay-format'] = true, | |||
['layurl'] = false, | |||
['lay-url'] = true, | |||
['lccn'] = true, | ['lccn'] = true, | ||
['LCCN'] = true, | ['LCCN'] = true, | ||
Line 126: | Line 146: | ||
['magazine'] = true, | ['magazine'] = true, | ||
['medium'] = true, | ['medium'] = true, | ||
['minutes'] = true, | |||
['minutes'] = true, | |||
['mode'] = true, | ['mode'] = true, | ||
['mr'] = true, | ['mr'] = true, | ||
['MR'] = true, | ['MR'] = true, | ||
['name-list-format'] = true, | |||
['name-list-style'] = true, | ['name-list-style'] = true, | ||
['newspaper'] = true, | ['newspaper'] = true, | ||
['nopp'] = true, | |||
['no-pp'] = true, | ['no-pp'] = true, | ||
['no-tracking'] = true, | ['no-tracking'] = true, | ||
Line 161: | Line 182: | ||
['postscript'] = true, | ['postscript'] = true, | ||
['pp'] = true, | ['pp'] = true, | ||
['publicationdate'] = true, | |||
['publication-date'] = true, | ['publication-date'] = true, | ||
['publicationplace'] = true, | |||
['publication-place'] = true, | ['publication-place'] = true, | ||
['publisher'] = true, | ['publisher'] = true, | ||
Line 187: | Line 210: | ||
['script-website'] = true, | ['script-website'] = true, | ||
['script-work'] = true, | ['script-work'] = true, | ||
['season'] = true, | |||
['section'] = true, | ['section'] = true, | ||
['section-format'] = true, | ['section-format'] = true, | ||
['sectionurl'] = false, | |||
['section-url'] = true, | ['section-url'] = true, | ||
['section-url-access'] = true, | ['section-url-access'] = true, | ||
['series'] = true, | ['series'] = true, | ||
['ssrn'] = true, -- cite ssrn; these | ['serieslink'] = true, | ||
['series-link'] = true, | |||
['seriesno'] = false, | |||
['series-no'] = true, | |||
['series-number'] = true, | |||
['ssrn'] = true, -- cite ssrn; these two here because allowed in cite ... as identifier | |||
['SSRN'] = true, | ['SSRN'] = true, | ||
['subject'] = true, | ['subject'] = true, | ||
['subject-link'] = true, | ['subject-link'] = true, | ||
['subject-mask'] = true, | ['subject-mask'] = true, | ||
['surname'] = true, | ['surname'] = true, | ||
['s2cid'] = true, | ['s2cid'] = true, | ||
Line 207: | Line 232: | ||
['s2cid-access'] = true, | ['s2cid-access'] = true, | ||
['template-doc-demo'] = true, | ['template-doc-demo'] = true, | ||
['time'] = true, | ['time'] = true, | ||
['time-caption'] = true, | ['timecaption'] = false, | ||
['time-caption'] = true, | |||
['title'] = true, | ['title'] = true, | ||
['titlelink'] = false, | |||
['title-link'] = true, | ['title-link'] = true, | ||
['translator'] = true, | ['translator'] = true, | ||
['translator-first'] = true, | ['translator-first'] = true, | ||
Line 247: | Line 273: | ||
['zbl'] = true, | ['zbl'] = true, | ||
['ZBL'] = true, | ['ZBL'] = true, | ||
} | |||
local | local numbered_arguments = { | ||
['author#'] = true, | ['author#'] = true, | ||
['author-first#'] = true, | ['author-first#'] = true, | ||
Line 309: | Line 335: | ||
['last#'] = true, | ['last#'] = true, | ||
['subject#'] = true, | ['subject#'] = true, | ||
['subject-link#'] = true, | ['subject-link#'] = true, | ||
['subject#-link'] = true, | ['subject#-link'] = true, | ||
['subject-mask#'] = true, | ['subject-mask#'] = true, | ||
['subject#-mask'] = true, | ['subject#-mask'] = true, | ||
['surname#'] = true, | ['surname#'] = true, | ||
['translator#'] = true, | ['translator#'] = true, | ||
Line 335: | Line 353: | ||
['translator-mask#'] = true, | ['translator-mask#'] = true, | ||
['translator#-mask'] = true, | ['translator#-mask'] = true, | ||
} | |||
--[[--------------------------< P R E P R I N T S U P P O R T E D P A R A M E T E R S >-------------------- | --[[--------------------------< P R E P R I N T S U P P O R T E D P A R A M E T E R S >-------------------- | ||
Cite arXiv, cite biorxiv, cite citeseerx | Cite arXiv, cite biorxiv, cite citeseerx, and cite ssrn are preprint templates that use the limited set of parameters | ||
set of parameters defined in the limited_basic_arguments and limited_numbered_arguments tables. Those lists are | defined in the limited_basic_arguments and limited_numbered_arguments tables. Those lists are supplemented with a | ||
supplemented with a template-specific list of parameters that are required by the particular template and may be | template-specific list of parameters that are required by the particular template and may be exclusive to one of the | ||
exclusive to one of the preprint templates. Some of these parameters may also be available to the general cs1|2 | preprint templates. Some of these parameters may also be available to the general cs1|2 templates. | ||
templates. | |||
Same conventions for true/false | Same conventions for true/false/nil as above. | ||
]] | ]] | ||
local | local preprint_arguments = { | ||
arxiv = { | arxiv = { | ||
['arxiv'] = true, -- cite arxiv and arxiv identifiers | ['arxiv'] = true, -- cite arxiv and arxiv identifiers | ||
Line 361: | Line 378: | ||
citeseerx = { | citeseerx = { | ||
['citeseerx'] = true, | ['citeseerx'] = true, | ||
}, | }, | ||
ssrn = { | ssrn = { | ||
['ssrn'] = true, | ['ssrn'] = true, | ||
['SSRN'] = true, | ['SSRN'] = true, | ||
}, | }, | ||
} | } | ||
Line 375: | Line 388: | ||
--[[--------------------------< L I M I T E D S U P P O R T E D P A R A M E T E R S >---------------------- | --[[--------------------------< L I M I T E D S U P P O R T E D P A R A M E T E R S >---------------------- | ||
cite arxiv, cite biorxiv, cite citeseerx | This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the | ||
parameters provided in a cite arxiv, cite biorxiv, or cite citeseerx templates. These parameters are common to | |||
all three templates | |||
Same conventions for true/false/nil as above. | |||
Same conventions for true/false | |||
]] | ]] | ||
local | local limited_basic_arguments = { | ||
['at'] = true, | ['at'] = true, | ||
['author'] = true, | ['author'] = true, | ||
Line 405: | Line 416: | ||
['last'] = true, | ['last'] = true, | ||
['mode'] = true, | ['mode'] = true, | ||
['name-list-format'] = true, | |||
['name-list-style'] = true, | ['name-list-style'] = true, | ||
['no-tracking'] = true, | ['no-tracking'] = true, | ||
Line 419: | Line 431: | ||
['title'] = true, | ['title'] = true, | ||
['trans-title'] = true, | ['trans-title'] = true, | ||
['url'] = true, | |||
['URL'] = true, | |||
['vauthors'] = true, | ['vauthors'] = true, | ||
['year'] = true, | ['year'] = true, | ||
} | |||
local | local limited_numbered_arguments = { | ||
['author#'] = true, | ['author#'] = true, | ||
['author-first#'] = true, | ['author-first#'] = true, | ||
Line 451: | Line 465: | ||
table are the template's CitationClass parameter value | table are the template's CitationClass parameter value | ||
Same conventions for true/false | Same conventions for true/false/nil as above. | ||
]] | ]] | ||
local | local unique_arguments = { | ||
['audio-visual'] = { | ['audio-visual'] = { | ||
['transcript'] = true, | ['transcript'] = true, | ||
['transcript-format'] = true, | ['transcript-format'] = true, | ||
['transcripturl'] = true, | |||
['transcript-url'] = true, | ['transcript-url'] = true, | ||
}, | }, | ||
episode = { | episode = { | ||
Line 472: | Line 480: | ||
['air-date'] = true, | ['air-date'] = true, | ||
['credits'] = true, | ['credits'] = true, | ||
['episodelink'] = true, -- alias of |title-link= | |||
['episode-link'] = true, -- alias of |title-link= | ['episode-link'] = true, -- alias of |title-link= | ||
['network'] = true, | ['network'] = true, | ||
['station'] = true, | ['station'] = true, | ||
['transcript'] = true, | ['transcript'] = true, | ||
['transcript-format'] = true, | ['transcript-format'] = true, | ||
['transcripturl'] = true, | |||
['transcript-url'] = true, | ['transcript-url'] = true, | ||
}, | }, | ||
mailinglist = { | mailinglist = { | ||
['mailinglist'] = true, | |||
['mailing-list'] = true, | ['mailing-list'] = true, | ||
}, | }, | ||
map = { | map = { | ||
['inset'] = true, | ['inset'] = true, | ||
['map'] = true, | ['map'] = true, | ||
['map-format'] = true, | ['map-format'] = true, | ||
['mapurl'] = true, | |||
['map-url'] = true, | ['map-url'] = true, | ||
['map-url-access'] = true, | ['map-url-access'] = true, | ||
Line 502: | Line 509: | ||
['message-id'] = true, | ['message-id'] = true, | ||
['newsgroup'] = true, | ['newsgroup'] = true, | ||
}, | }, | ||
serial = { | serial = { | ||
Line 511: | Line 515: | ||
['credits'] = true, | ['credits'] = true, | ||
['episode'] = true, -- cite serial only TODO: make available to cite episode? | ['episode'] = true, -- cite serial only TODO: make available to cite episode? | ||
[' | ['episodelink'] = true, -- aliases of |title-link= | ||
['episode-link'] = true, | |||
['network'] = true, | ['network'] = true, | ||
['station'] = true, | ['station'] = true, | ||
}, | }, | ||
} | } | ||
Line 626: | Line 530: | ||
local function template_list_get (t) | local function template_list_get (t) | ||
local | local out = {}; -- a table for output | ||
for k, _ in pairs (t) do -- spin through the table and collect the keys | for k, _ in pairs (t) do -- spin through the table and collect the keys | ||
table.insert ( | table.insert (out, k) -- add each key to the output table | ||
end | end | ||
return | return out; -- and done | ||
end | end | ||
Line 638: | Line 542: | ||
return { | return { | ||
basic_arguments = basic_arguments, | |||
numbered_arguments = numbered_arguments, | |||
limited_basic_arguments = limited_basic_arguments, | |||
limited_numbered_arguments = limited_numbered_arguments, | |||
preprint_arguments = preprint_arguments, | |||
preprint_template_list = template_list_get (preprint_arguments), -- make a template list from preprint_arguments{} table | |||
unique_arguments = unique_arguments, | |||
unique_param_template_list = template_list_get (unique_arguments), -- make a template list from unique_arguments{} table | |||
}; | }; |
edits