10,322
次編輯
變更
小
导入1个版本
{{Highhigh-userisk|601,000,000+}}{{缺乏中文說明}}
{{module rating|protected}}
This is a meta-module that provides various functions for making [[Wikipedia: 頂註Hatnote|hatnotes]]. It implements the {{tl|hatnote}} template, for use in hatnotes at the top of pages, and the {{tl|format link}} template, which is used to format a wikilink for use in hatnotes. It also contains a number of helper functions for use in other Lua hatnote modules.
== Use from wikitext ==
* <var>options.extraclasses</var> - a string of extra classes to provide
* <var>options.selfref</var> - if this is not nil or false, adds the class "selfref", used to denote self-references to Wikipedia (see [[Template:Selfref]]))
The CSS of the hatnote class is defined in {{tsl|en|[[MediaWiki:Common.css||MediaWiki:Common.css}}]].
; Example 1
</source>
Formats <var>link</var> as a wikilink for display in hatnote templates, with optional display value <var>display</var>. Categories and files are automatically escaped with the [[Help: 冒號技法Colon trick|colon trick]], and links to sections are automatically formatted as ''page § section'', rather than the MediaWiki default of ''page#section''.
;Examples:
: {{code|mHatnote._formatLink('Lion')|lua}} → <nowiki>[[ 狮Lion]]</nowiki> → {{format hatnote link|Lion}}: {{code|mHatnote._formatLink('Lion#Etymology')|lua}} → <nowiki>[[ 狮Lion#Etymology|Lion § Etymology]]</nowiki> → {{format hatnote link|Lion#Etymology}}
: {{code|mHatnote._formatLink('Category:Lions')|lua}} → <nowiki>[[:Category:Lions]]</nowiki> → {{format hatnote link|Category:Lions}}
: {{code|mHatnote._formatLink('Lion#Etymology', 'Etymology of lion')|lua}} → <nowiki>[[ 狮Lion#Etymology|Etymology of lion]]</nowiki> → {{format hatnote link|Lion#Etymology|Etymology of lion}}
=== Format pages ===
</source>
Formats a list of pages using the {{tsl|en||[[#Format link|_formatLink}} ]] function, and returns the result as an array. For example, the code {{code|mHatnote.formatPages('Lion', 'Category:Lions', 'Lion#Etymology')|lua}} would produce an array like {{code|{'[[ 狮Lion]]', '[[:Category:Lions]]', '[[ 狮Lion#Etymology|Lion § Etymology]]'}|lua}}.
=== Format page tables ===
</source>
Takes a list of page/display tables, formats them with the {{tsl|en||[[#Format link|_formatLink}} ]] function, and returns the result as an array. Each item in the list must be a table. The first value in the table is the link, and is required. The second value in the table is the display value, and is optional. For example, the code {{code|mHatnote.formatPages({'Lion', 'the Lion article'}, {'Category:Lions'}, {'Lion#Etymology', 'the etymology of lion'})|lua}} would produce an array like {{code|{'[[ 狮Lion|the Lion article]]', '[[:Category:Lions]]', '[[ 狮Lion#Etymology|the etymology of lion]]'}|lua}}.
=== Find namespace id ===
</source>
Formats the string <var>msg</var> as a red wikitext error message, with optional link to a help page <var>helpLink</var>. Normally this function also adds {{clc|Hatnote templates with errors}}; however, if <var>addTrackingCategory</var> is not false after being passed through [[ 模块Module:Yesno]], then the category is suppressed. This means that the category can be suppressed with <var>addTrackingCategory</var> values including "no", "n", 0, "false", and {{code|false|lua}}.
Examples:
:{{code|mHatnote.makeWikitextError('an error has occurred')|lua}} → <strong class="error">Error: an error has occurred.</strong>
:{{code|mHatnote.makeWikitextError('an error has occurred', 'Template:Example#Errors')|lua}} → <strong class="error">Error: an error has occurred ({{tsl|en|[[Template:Example|#Errors|help}}]]).</strong>
== Examples ==
For examples of how this module is used in other Lua modules, see the following (listed in order of complexity):
* [[ 模块Module:Details]]* [[ 模块Module:Further]]* [[ 模块Module:See also]]* [[ 模块Module:Main]]
<includeonly>{{Sandbox other||
<!-- Categories go here and interwikis go in Wikidata. -->
[[Category: 頂註模塊Hatnote modules| ]][[Category: 添加追踪分类的模块Modules that add a tracking category]]
}}</includeonly>