Модуль:Citation/CS1/Configuration

Матеріал з Вікіцитат

Документацію для цього модуля можна створити у Модуль:Citation/CS1/Configuration/документація

citation_config = {};

--[[
Список просторів назв, що не повинні включатися у категоріях сторінок з
помилками посилань на джерела. Те саме, що встановлення notracking = true
за замовчуванням.

Примітка: Назви просторів імен повинні бути з символами підкреслення замість
пробілів.
]]
citation_config.uncategorized_namespaces = { 'Користувач', 'Обговорення_користувача', 'Обговорення_Вікіпедії' };

--[[
Таблиця перекладів

Далі йдуть фіксовані тексти, що використовуються як частини посилання на
джерело. Вони відділені від головного модуля, щоб спростити переклад.
]]
citation_config.messages = {
  ['published'] = 'опубліковано $1',
  ['lay summary'] = 'Загальний огляд',
  ['retrieved'] = 'Процитовано $1',
  ['inactive'] = 'неактивний',
  ['archived-dead'] = 'Архів $1 за $2',
  ['archived-not-dead'] = '$1 оригіналу за $2',
  ['archived-missing'] = 'Архів оригіналу$1 за $2',
  ['archived'] = 'Архів',
  ['original'] = 'оригіналу',
  ['editor'] = 'ред.',
  ['editors'] = 'ред.', 
  ['edition'] = '(вид. $1)', 
  ['episode'] = 'епізод',
  ['season'] = 'сезон', 
  ['series'] = 'серія',
  ['written'] = 'Написано у $1',
  ['in'] = 'У',
  ['et al'] = 'та ін.', 
  ['subscription'] = '<span style="font-size:0.95em; font-size:90%; color:#555">(потрібна підписка)</span>', 
  ['language'] = '($1)', 
  ['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>&#124;$1=</code>',
  ['parameter-separator'] = ', ',
  ['parameter-final-separator'] = ' та ',
  ['parameter-pair-separator'] = ' та ',
  
  -- Вивід помилок
  ['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>',
  
  -- Визначає місцезнаходження сторінки довідки
  ['help page link'] = 'Довідка:Помилки посилань на джерела',
  ['help page label'] = 'довідка',
  
  -- Внутрішні помилки (можуть статися лише у випадку поганої конфігурації)
  ['undefined_error'] = 'Виклик з невизначеною умовою помилки',
  ['unknown_manual_ID'] = 'Нерозпізнаний ручний режим ID',
  ['unknown_ID_mode'] = 'Нерозпізнаний режим ID',
  ['unknown_argument_map'] = 'Словник аргументів не визначений для цієї змінної',
  ['bare_url_no_origin'] = 'Bare url found but origin indicator is nil or empty',
}

-- Таблиця словника аргументів
citation_config.aliases = {
    ['AccessDate'] = {'accessdate', 'дата-доступу', 'access-date'},
    ['Agency'] = {'agency', 'агенство'},
    ['AirDate'] = 'airdate',
    ['ArchiveDate'] = {'archive-date', 'archivedate', 'дата-архіву'},
    ['ArchiveURL'] = {'archive-url', 'archiveurl', 'url-архіву'},
    ['ASINTLD'] = {'ASIN-TLD', 'asin-tld'},
    ['At'] = {'at', 'частина-джерела', 'у'},
    ['Authors'] = {'authors', 'автори'},
    ['AuthorFormat'] = {"author-format", "authorformat" },
    ['AuthorSeparator'] = {'author-separator', 'роздільник-авторів'},
    ['AuthorNameSeparator'] = {'author-name-separator', 'роздільник-імен-авторів'},
    ['BookTitle'] = {'booktitle', 'назва-книги'},
    ['Chapter'] = {'chapter', 'contribution', 'entry', 'article', 'розділ' },
    ['ChapterLink'] = {'chapterlink', 'розділ-посилання'},
    ['ChapterURL'] = {'chapter-url', 'chapterurl', 'contribution-url', 'contributionurl', 'url-розділу' },
    ['Coauthors'] = {'coauthors', 'coauthor', 'vauthors', 'співавтори', 'співавтор' },
    ['Conference'] = {'conference', 'конференція'},
    ['ConferenceURL'] = {'conference-url', 'conferenceurl', 'конференція-url'},
    ['Date'] = {'date', 'дата'},
    ['Day'] = {'day', 'день'},
    ['DeadURL'] = {'deadurl', 'dead-url', 'мертвий-url', 'deadlink'},
    ['DisplayAuthors'] = {"display-authors", "displayauthors", "показувати-авторів"},
    ['DisplayEditors'] = {"display-editors", "displayeditors", "показувати-редакторів"},
    ['DoiBroken'] = {'doi_inactivedate', 'doi_brokendate', 'DoiBroken'},
    ['Edition'] = {'edition', 'видання'},
    ['Editors'] = {'editors', 'редактори'},
    ['EditorFormat'] = {"editor-format", "editorformat" },
    ['EditorSeparator'] = 'editor-separator',
    ['EditorNameSeparator'] = 'editor-name-separator',
    ['Embargo'] = {'Embargo', 'embargo'},
    ['Format'] = {'format', 'формат'},
    ['ID'] = {'id', 'ID', 'docket'},
    ['IgnoreISBN'] = {'ignore-isbn-error', 'ignoreisbnerror'},
    ['Issue'] = {'issue', 'number', 'випуск', 'номер'},
    ['Language'] = {'language', 'lang', 'in', 'мова', 'мовою'},
    ['LastAuthorAmp'] = 'lastauthoramp',
    ['LayDate'] = 'laydate',
    ['LaySource'] = 'laysource',
    ['LayURL'] = {'layurl', 'laysummary'},
    ['Minutes'] = 'minutes',
    ['Month'] = {'month', 'місяць'},
    ['NameSeparator'] = 'name-separator',
    ['Network'] = 'network',
    ['NoPP'] = 'nopp',
    ['NoTracking'] = {"template doc demo", 'nocat', 
        'notracking', "no-tracking"},
    ['OrigYear'] = {'origyear', 'рік-оригіналу'},
    ['Others'] = {'others', 'інші'},
    ['Page'] = {'p', 'page', 'сторінка', 'ст'},
    ['Pages'] = {'pp', 'pages', 'сторінки'},
    ['Periodical'] = {'journal', 'newspaper', 'magazine', 'work',
        'website',  'periodical', 'encyclopedia', 'encyclopaedia', 'dictionary',
        'журнал', 'газета', 'праця', 'веб-сайт',  'періодика', 'енциклопедія', 'словник'},
    ['Place'] = {'place', 'location', 'місце', 'розміщення', 'знаходження'},
    ['PPrefix'] = 'PPrefix',
    ['PPPrefix'] = 'PPPrefix',
    ['PostScript'] = {'postscript', 'завершення'},
    ['PublicationDate'] = {'publicationdate', 'publication-date', 'дата-публікації' },
    ['PublicationPlace'] = {'publication-place', 'publicationplace', 'місце-публікації' },
    ['PublisherName'] = {'publisher', 'видавець', 'видавництво'},
    ['Quote'] = {'quote', 'quotation', 'цитата', 'цитування'},
    ['Ref'] = {'ref', 'Ref', 'анкер', 'якірець'},
    ['Season'] = 'season',
    ['Separator'] = {'separator', 'роздільник'},
    ['Series'] = {'series', 'version', 'серія', 'версія'},
    ['SeriesSeparator'] = {'series-separator', 'роздільник-серії'},
    ['SeriesLink'] = 'serieslink',
    ['SeriesNumber'] = {'seriesnumber', 'seriesno'},
    ['Station'] = 'station',
    ['SubscriptionRequired'] = 'subscription',
    ['Time'] = 'time',
    ['TimeCaption'] = 'timecaption',
    ['Title'] = {'title', 'назва', 'заголовок'},
    ['TitleLink'] = {'titlelink', 'episodelink' },
    ['TitleNote'] = {'department', 'відділ' },
    ['TitleType'] = {'type', 'тип'},
    ['TransChapter'] = {'trans-chapter', 'trans_chapter', 'переклад-розділу' },
    ['Transcript'] = 'transcript',
    ['TranscriptURL'] = {'transcript-url', 'transcripturl'},
    ['TransTitle'] = {'trans-title', 'trans_title', 'переклад-назви' },
    ['URL'] = {'url', 'URL'},
    ['UrlStatus'] = {'url-status'},	
    ['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#", 
        "автор#-прізвище", "автор-прізвище#", 
        "прізвище#", "автор#", "автори#"},
    ['AuthorList-Link'] = {"author#-link", "author-link#", 
        "author#link", "authorlink#", "автор#-посилання",
        "автор-посилання#", "автор#посилання"},
    ['AuthorList-Mask'] = {"author#-mask", "author-mask#", 
        "author#mask", "authormask#", "автор#-маска", "автор-маска#", 
        "автор#маска"},
    
    ['EditorList-First'] = {"editor#-first", 
        "editor-first#", "EditorGiven#",
        "редактор#-ім'я", "редактор-ім'я#"},
    ['EditorList-Last'] = {"editor#-last", "editor-last#",
        "EditorSurname#", "Editor#", "editor#", "editors#",
        "редактор#-прізвище", "редактор-прізвище#", "редактор#", "редактори#"},
    ['EditorList-Link'] = {"editor#-link", "editor-link#", 
        "editor#link", "editorlink#", "редактор#-посилання", "редактор-посилання#", 
        "редактор#посилання"},
    ['EditorList-Mask'] = {"editor#-mask", "editor-mask#", 
        "editor#mask", "editormask#", "редактор#-маска", "редактор-маска#", 
        "редактор#маска"},
    
}


-- Значення параметрів за замовчуванням
citation_config.defaults = {
    ['DeadURL'] = 'yes',
    ['PostScript'] = '.',
    ['Separator'] = '.',
    ['AuthorSeparator'] = ';',
    ['EditorSeparator'] = ';',
    ['NameSeparator'] = ',',
    ['PPrefix'] = "с.&nbsp;",
    ['PPPrefix'] = "с.&nbsp;",    
}

--[[
Таблиця умов помилок

Далі йде список ідентифікаторів для різних умов помилок, визначених у коді.
Для кожного ідентифікаторі визначено текст повідомлення для відображення,
категорія сторінок з помилками, до якої включати, а також чи потрібно
повідомлення про помилку відображати як прихований коментар.

У разі будь-яких змін до якірців потрібно робити ідентичні зміни до відповідних
якірців на сторінці Довідка:Помилки посилань на джерела
]]

citation_config.error_conditions = {
    accessdate_missing_url = {
        message = '<code>&#124;accessdate=</code> вимагає <code>&#124;url=</code>',
        anchor = 'accessdate_missing_url',
        category = 'Сторінки з посиланнями на джерела з accessdate і без URL',
        hidden = true },
    archive_missing_date = {
        message = '<code>&#124;archiveurl=</code> вимагає <code>&#124;archivedate=</code>',
        anchor = 'archive_missing_date',
        category = 'Сторінки з помилками посилань на джерела з archiveurl‎',
        hidden = false },
    archive_missing_url = {
        message = '<code>&#124;archiveurl=</code> вимагає <code>&#124;url=</code>',
        anchor = 'archive_missing_url',
        category = 'Сторінки з помилками посилань на джерела з archiveurl‎',
        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 = 'Сторінки з помилками URL',
        hidden = false },
    bare_url_missing_title = {
        message = 'Пропущений або порожній <code>&#124;title=</code>',
        anchor = 'bare_url_missing_title',
        category = 'Сторінки з URL без назв‎',
        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 = 'Сторінки з посиланнями на web-джерела без URL‎',
        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 = 'Сторінки з посиланнями на джерела з format і без URL‎',
        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 = 'Назва URL містить вбудоване вікіпосилання',
        anchor = 'wikilink_in_url',
        category = 'Сторінки з посиланнями на джерела, що мають вікіпосилання у назвах URL',
        hidden = false },
}

citation_config.id_handlers = {
    ['ASIN'] = {
        parameters = { 'asin', 'ASIN' },       
        link = 'Amazon Standard Identification Number',
        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 = 'Open Library',
        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 = 'https://ui.adsabs.harvard.edu/abs/',
        encode = false,
        COinS = 'info:bibcode',
        separator = ':',
    },
    ['ISBN'] = {
        parameters = {'isbn', 'ISBN', 'isbn13', 'ISBN13'}, 
        link = 'ISBN',
        label = 'ISBN',
        mode = 'manual',
        prefix = 'Special:BookSources/',
        COinS = 'rft.isbn',
        separator = '&nbsp;',
    },
    ['ISSN'] = {
        parameters = {'issn', 'ISSN'}, 
        link = 'ISSN',
        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 = 'Library of Congress Control Number',
        label = 'LCCN',
        mode = 'external',
        prefix = 'http://lccn.loc.gov/',
        COinS = 'rft.lccn',
        encode = false,
        separator = '&nbsp;',
    },
    ['MR'] = {
        parameters = {'MR', 'mr'}, 
        link = 'Mathematical Reviews',
        label = 'MR',
        mode = 'external',
        prefix = 'http://www.ams.org/mathscinet-getitem?mr=',
        COinS = 'rft.mr',
        encode = true,
        separator = '&nbsp;',
    },
    ['OCLC'] = {
        parameters = {'OCLC', 'oclc'}, 
        link = 'Online Computer Library Center',
        label = 'OCLC',
        mode = 'external',
        prefix = '//www.worldcat.org/oclc/',
        COinS = 'info:oclcnum',
        encode = true,
        separator = '&nbsp;',
    },
    ['OSTI'] = {
        parameters = {'OSTI', 'osti'}, 
        link = 'Office of Scientific and Technical Information',
        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 = 'PubMed Central',
        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 = 'PMID',
        label = 'PMID',
        mode = 'external',
        prefix = '//www.ncbi.nlm.nih.gov/pubmed/',
        COinS = 'info:pmid',
        encode = false,
        separator = '&nbsp;',
    },
    ['RFC'] = {
        parameters = {'RFC', 'rfc'}, 
        link = 'Request for Comments',
        label = 'RFC',
        mode = 'external',
        prefix = '//tools.ietf.org/html/rfc',
        COinS = 'info:rfc',
        encode = false,
        separator = '&nbsp;',
    },
    ['SSRN'] = {
        parameters = {'SSRN', 'ssrn'}, 
        link = 'Social Science Research Network',
        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;',
    }
}

return citation_config;