imported>Oetterer |
|||
Zeile 12: | Zeile 12: | ||
Load the module: | Load the module: | ||
− | < | + | <syntaxhighlight lang="lua"> |
local mMain = require('Module:Main') | local mMain = require('Module:Main') | ||
− | </ | + | </syntaxhighlight> |
You can then use the _main function like this: | You can then use the _main function like this: | ||
− | < | + | <syntaxhighlight lang="lua"> |
mMain._main(options, ...) | mMain._main(options, ...) | ||
− | </ | + | </syntaxhighlight> |
The parameters following <var>options</var> are a list of link/display tables, used to generate the links. The first value in each table is the link, and is required. The second value in each table is the display value, and is optional. Category or file links are automatically escaped using the [[Help:Colon trick|colon trick]]. If a link includes a section name, and no display value is set, links are automatically formatted as ''page § section'', rather than the MediaWiki default of ''page#section''. | The parameters following <var>options</var> are a list of link/display tables, used to generate the links. The first value in each table is the link, and is required. The second value in each table is the display value, and is optional. Category or file links are automatically escaped using the [[Help:Colon trick|colon trick]]. If a link includes a section name, and no display value is set, links are automatically formatted as ''page § section'', rather than the MediaWiki default of ''page#section''. | ||
Zeile 27: | Zeile 27: | ||
; Example 1 | ; Example 1 | ||
− | < | + | <syntaxhighlight lang="lua"> |
mMain._main(nil, {'A'}) | mMain._main(nil, {'A'}) | ||
− | </ | + | </syntaxhighlight> |
Produces: | Produces: | ||
:<code><nowiki><div class="hatnote relarticle mainarticle">Main article: [[A]]</div></nowiki></code> | :<code><nowiki><div class="hatnote relarticle mainarticle">Main article: [[A]]</div></nowiki></code> | ||
Zeile 36: | Zeile 36: | ||
; Example 2 | ; Example 2 | ||
− | < | + | <syntaxhighlight lang="lua"> |
mMain._main(nil, {'Wikipedia:Categorization'}, {'Help:Category'}, {'Category:Wikipedia categories'}) | mMain._main(nil, {'Wikipedia:Categorization'}, {'Help:Category'}, {'Category:Wikipedia categories'}) | ||
− | </ | + | </syntaxhighlight> |
Produces: | Produces: | ||
:<code><nowiki><div class="hatnote relarticle mainarticle">Main pages: [[Wikipedia:Categorization]], [[Help:Category]] and [[:Category:Wikipedia categories]]</div></nowiki></code> | :<code><nowiki><div class="hatnote relarticle mainarticle">Main pages: [[Wikipedia:Categorization]], [[Help:Category]] and [[:Category:Wikipedia categories]]</div></nowiki></code> | ||
Zeile 45: | Zeile 45: | ||
; Example 3 | ; Example 3 | ||
− | < | + | <syntaxhighlight lang="lua"> |
mMain._main(nil, {'A', 'the letter "A"'}, {'B', 'the letter "B"'}, {'C', 'the letter "C"'}) | mMain._main(nil, {'A', 'the letter "A"'}, {'B', 'the letter "B"'}, {'C', 'the letter "C"'}) | ||
− | </ | + | </syntaxhighlight> |
Produces: | Produces: | ||
:<code><nowiki><div class="hatnote relarticle mainarticle">Main articles: [[A|the letter "A"]], [[B|the letter "B"]] and [[C|the letter "C"]]</div></nowiki></code> | :<code><nowiki><div class="hatnote relarticle mainarticle">Main articles: [[A|the letter "A"]], [[B|the letter "B"]] and [[C|the letter "C"]]</div></nowiki></code> | ||
Zeile 54: | Zeile 54: | ||
; Example 4 | ; Example 4 | ||
− | < | + | <syntaxhighlight lang="lua"> |
mMain._main({selfref = true}, {'Wikipedia:Verifiability#Burden'}) | mMain._main({selfref = true}, {'Wikipedia:Verifiability#Burden'}) | ||
− | </ | + | </syntaxhighlight> |
Produces: | Produces: | ||
:<code><nowiki><div class="hatnote relarticle mainarticle selfref">Main article: [[Wikipedia:Verifiability#Burden|Wikipedia:Verifiability § Burden]]</div></nowiki></code> | :<code><nowiki><div class="hatnote relarticle mainarticle selfref">Main article: [[Wikipedia:Verifiability#Burden|Wikipedia:Verifiability § Burden]]</div></nowiki></code> | ||
Zeile 63: | Zeile 63: | ||
; Example 5 (if used in the category namespace) | ; Example 5 (if used in the category namespace) | ||
− | < | + | <syntaxhighlight lang="lua"> |
mMain._main(nil, {'A'}) | mMain._main(nil, {'A'}) | ||
− | </ | + | </syntaxhighlight> |
Produces: | Produces: | ||
:<code><nowiki><div class="hatnote relarticle mainarticle">The main article for this [[Wikipedia:Categorization|category]] is [[A]]</div></nowiki></code> | :<code><nowiki><div class="hatnote relarticle mainarticle">The main article for this [[Wikipedia:Categorization|category]] is [[A]]</div></nowiki></code> | ||
Zeile 78: | Zeile 78: | ||
<!-- Categories go here and interwikis go in Wikidata. --> | <!-- Categories go here and interwikis go in Wikidata. --> | ||
− | }}</includeonly> | + | }}</includeonly><!-- null edit comment; remove --> |
Aktuelle Version vom 5. Oktober 2022, 15:05 Uhr
This is a documentation subpage for Modul:Main. It contains usage information, categories and other content that is not part of the original modul page. |
This module is rated as ready for general use. It has reached a mature form and is thought to be bug-free and ready for use wherever appropriate. It is ready to mention on help pages and other Wikipedia resources as an option for new users to learn. To reduce server load and bad output, it should be improved by sandbox testing rather than repeated trial-and-error editing. |
This module produces a link to a main article or articles. It implements the {{main}} template. Normally, it produces a link like "Main article: A". If used in the category namespace, it produces a link like "The main article for this category is A". It is possible to specify multiple articles, and in this case plural wording is used automatically. If the first link is not an article, the module uses the wording "Main page" instead of "Main article".
Usage from wikitext[Quelltext bearbeiten]
This module cannot be used directly from #invoke. Instead, it can only be used through the {{main}} template. Please see the template page for documentation.
Usage from other Lua modules[Quelltext bearbeiten]
Load the module:
local mMain = require('Module:Main')
You can then use the _main function like this:
mMain._main(options, ...)
The parameters following options are a list of link/display tables, used to generate the links. The first value in each table is the link, and is required. The second value in each table is the display value, and is optional. Category or file links are automatically escaped using the colon trick. If a link includes a section name, and no display value is set, links are automatically formatted as page § section, rather than the MediaWiki default of page#section.
The options table can be used to configure the function's output. At current, the only option available is "selfref", which is used when the output is a self-reference to Wikipedia. to set this option, use lua
. (See the {{selfref}} template for more details on self-references.)
- Example 1
mMain._main(nil, {'A'})
Produces:
<div class="hatnote relarticle mainarticle">Main article: [[A]]</div>
Displays as:
- Example 2
mMain._main(nil, {'Wikipedia:Categorization'}, {'Help:Category'}, {'Category:Wikipedia categories'})
Produces:
<div class="hatnote relarticle mainarticle">Main pages: [[Wikipedia:Categorization]], [[Help:Category]] and [[:Category:Wikipedia categories]]</div>
Displays as:
- Example 3
mMain._main(nil, {'A', 'the letter "A"'}, {'B', 'the letter "B"'}, {'C', 'the letter "C"'})
Produces:
<div class="hatnote relarticle mainarticle">Main articles: [[A|the letter "A"]], [[B|the letter "B"]] and [[C|the letter "C"]]</div>
Displays as:
- Example 4
mMain._main({selfref = true}, {'Wikipedia:Verifiability#Burden'})
Produces:
<div class="hatnote relarticle mainarticle selfref">Main article: [[Wikipedia:Verifiability#Burden|Wikipedia:Verifiability § Burden]]</div>
Displays as:
- Example 5 (if used in the category namespace)
mMain._main(nil, {'A'})
Produces:
<div class="hatnote relarticle mainarticle">The main article for this [[Wikipedia:Categorization|category]] is [[A]]</div>
Displays as:
Technical details[Quelltext bearbeiten]
This module uses Module:Hatnote to format the hatnote text, Module:TableTools to process the list of links, and Module:Arguments to fetch the arguments from wikitext.