Модуль:Hatnote/doc
Это страница документации Модуль:Hatnote.
Этот модуль оценён как готовый к использованию. Предполагается, что все баги устранены и он готов для широкого использования. Его можно указывать на справочных страницах и рекомендовать к использованию новым участникам. Для его изменения и тестирования, пожалуйста, используйте песочницу. |
Модуль предназначен для реализации hatnote-шаблонов (например, {{основная статья}}, {{см. также}}). Также он содержит несколько функций для работы со ссылками и отслеживания ошибок. См. тесты на странице Шаблон:Основная статья/тесты.
Основные функции
[править]Основные функции содержатся в таблице
Кол программы | Комментарии к нему |
---|---|
текст = p | текст = |
, все функции можно вызывать как из других модулей, так и через Шаблон:Mwmw. При вызове из модуля функции принимают первым параметром таблицу с аргументами. Все описанные ниже параметры являются аргументами этой таблицы. Некоторые параметры принимают булевоподобные значения: их перечисление можно найти здесь.
format_link
[править]Реализация шаблона {{ссылка на раздел}}.
remove_precision
[править]Реализация шаблона {{без уточнения}}.
is_disambig
[править]Функция, определяющая, является ли первый параметр страницей разрешения неоднозначности. Список шаблонов неоднозначностей берется со страницы MediaWiki:Disambiguationspage.
list
[править]Формирует список из вики-ссылок.
Параметры:
- нумерованные параметры — ссылки на страницы.
|l1=
,|l2=
и т. д. — текст ссылок.|list_sep=
или|разделитель списка=
: разделитель списка, по умолчанию — Шаблон:No wikify.|natural_join=
: при неложном значении вместо последнего разделителя выводится союз «и».|links_ns=
или|ПИ ссылок=
: ко всем ссылкам добавляется префикс указанного пространства имен.|bold_links=
или|ссылки болдом=
: при непустом и неложном значении каждая ссылка выделяется полужирным.
Возвращает таблицу, для неё предусмотрен метод
Кол программы | Комментарии к нему |
---|---|
текст = tostring() | текст = |
и конкатенация. Именованные параметры этой таблицы — булевы переменные, истинные при обнаружении проблем. Отслеживаемые проблемы:
Кол программы | Комментарии к нему |
---|---|
текст = red_link | текст = |
— ссылка на несуществующую статью.
Кол программы | Комментарии к нему |
---|---|
текст = bad_format | текст = |
— параметр содержит разделитель {{!}}
вместо параметра |lx=
или лишние квадратные скобки.
Кол программы | Комментарии к нему |
---|---|
текст = formatted | текст = |
— параметр содержит <span (в таком случае он не парсится, а выдаётся в готовом виде). Нужно для поддержки шаблонов {{не переведено}} в качестве параметров.
hatnote
[править]
Формирует код Шаблон:Tag.
Параметры:
- первый параметр — текст заметки.
|extraclasses=
: дополнительные классы заметки.
|hide_disambig=
: при непустом и неложном значении к тексту добавляется класс
Кол программы
Комментарии к нему
текст = dabhide
текст =
, скрывающий подсветку для пользователей гаджета подсветки неоднозначностей.
main
[править]
Генерирует текст-заметку. Позволяет ссылаться на неограниченное число страниц.
Синтаксис:
- вызов из вики-текста:
{{#invoke:Hatnote|main|префикс= префиксШаблон:Optp}}
- вызов из другого модуля:
-- подключение модуля
local hatnote = require('Модуль:Hatnote').main
-- пример использования без изменения категорий по умолчанию
local res1 = hatnote{
'Какая-то статья',
l1 = 'Какой-нибудь текст ссылки',
prefix = 'Основная статья:',
prefix_plural = 'Основные статьи:',
dot = true,
nocat = args.nocat -- следует всегда передавать nocat, если он предусмотрен
}
-- и с изменением
local res2 = hatnote({
'Еще какая-то статья',
prefix = 'См. также:',
list_sep = '; ',
natural_join = false,
nocat = args.nocat
}, {
red_link = 'Викиучебник:Статьи с шаблоном «См. также» с красными ссылками'
})
Параметры:
|prefix=
или |префикс=
: обязательный параметр, текст перед списком ссылок.
|prefix_plural=
или |префикс мн. ч.=
: если ссылок несколько, для префикса вместо предыдущего параметра будет использован этот.
|sep=
или |разделитель=
: разделитель между префиксом и списком ссылок.
|dot=
или |точка=
: при непустом и неложном значении выводится точка в конце.
|nocat=
: при непустом и неложном значении отключается категоризация.
|preview_error=
: при непустом и неложном значении ошибка выводится только во время предпросмотра.
Функция также принимает все параметры функций
Кол программы
Комментарии к нему
текст = list
текст =
и
Кол программы
Комментарии к нему
текст = hatnote
текст =
и передает их без изменения в эти функции.
Вторым параметром (при вызове через другой модуль) функция принимает таблицу с переназначенными категориями. Идентификаторы отслеживающих категорий:
Кол программы
Комментарии к нему
текст = no_prefix
текст =
: Викиучебник:Страницы с модулем Hatnote без ссылок
Кол программы
Комментарии к нему
текст = no_links
текст =
: Викиучебник:Страницы с модулем Hatnote без указания префикса
Кол программы
Комментарии к нему
текст = red_link
текст =
: Викиучебник:Страницы с модулем Hatnote с красной ссылкой
Кол программы
Комментарии к нему
текст = bad_format
текст =
: Викиучебник:Страницы с модулем Hatnote с некорректно заполненными параметрами
Кол программы
Комментарии к нему
текст = formatted
текст =
: Викиучебник:Страницы с модулем Hatnote с готовым форматированиеми
Служебные функции
[править]
Находятся в таблице
Кол программы
Комментарии к нему
текст = tr
текст =
, предназначены для отслеживания проблем и вывода сообщений об ошибках. Все функции можно вызывать только из других модулей.
make_categories
[править]
tr.make_categories(tracking_categories)
Создает объект, представляющий собой таблицу с категориями и функцией для их добавления. Первым параметром передается ассоциированный массив с идентификаторами отслеживающих категорий.
add
[править]
categories:add(type, nocat)
Добавляет в таблицу категории. Первый параметр — идентификатор, второй — отключение категоризации.
error
[править]
tr.error(msg, categories, preview_only)
Выводит сообщение об ошибке. Если ошибка генерируется шаблоном, то отображается название этого шаблона; если прямым вызовом через Шаблон:Mwmw, то название вызываемого модуля.
Параметры:
Кол программы
Комментарии к нему
текст = msg
текст =
: текст сообщения.
Кол программы
Комментарии к нему
текст = categories
текст =
: либо объект, либо строка с категориями.
Кол программы
Комментарии к нему
текст = preview_only
текст =
: при непустом и неложном значении ошибка выводится только во время предпросмотра.