Module:Random/Documentation
Ce module contient plusieurs fonctions qui utilisent des nombres aléatoires. Il permet de générer des nombres aléatoires, de sélectionner aléatoirement un élément dans une liste, ou de chager alétoirement l'ordre d'une liste.
Les listes réordonnées peuvent être rendues de façon linéaire, ou sous différentes formes de listes triées ou non. Les fonctions disponibles sont détaillées ci-dessous.
Number
[modifier le code]The number
function outputs a random number.
{{#invoke:random|number|m|n|same=yes}}
The arguments m
and n
may be omitted, but if specified must be convertible to integers.
- With no arguments, returns a real number in the range .
- With one argument, returns an integer in the range .
m
must be positive. - With two arguments, returns an integer in the range .
m
andn
can be either positive or negative. Ifm
is greater thann
, returns an integer in the range instead. - If the
|same=
parameter is set to "yes", "y", "true", or "1", the same random number is returned for each module call on a given page.
Examples (refresh)
{{#invoke:random|number}}
→ 0.78528834915966{{#invoke:random|number|100}}
→ 7{{#invoke:random|number|-100|-50}}
→ -97{{#invoke:random|number|100|same=yes}}
→ 7{{#invoke:random|number|100|same=yes}}
→ 7
The documentation for this function is partly taken from the Scribunto Lua reference manual, which is in turn based on the Lua 5.1 Reference Manual, available under the MIT License.
Date
[modifier le code]The date
function outputs a random date.
{{#invoke:random|date|timestamp1|timestamp2|format=date format|same=yes}}
- If no timestamp arguments are specified, the module outputs a random date in the current year.
- If
timestamp1
andtimestamp2
are specified, the module outputs a random date between the two timestamps.timestamp1
must be earlier thantimestamp2
. - If only
timestamp1
is specified, the module outputs a random date between the Unix epoch (1 Jan 1970) and the timestamp.timestamp1
must not be earlier than 1 Jan 1970. - Formatting can be specified with the
|format=
parameter. The default formatting is "hh:mm, DD Month YYYY (UTC)" (the same as the default Wikipedia timestamp). - The timestamps and the
|format=
parameter accept values compatible with the #time parser function. Please see the #time documentation for the full range of possible input values and formatting options. - If the
|same=
parameter is set to "yes", "y", "true", or "1", the same date is returned for each module call on a given page.
Examples (refresh)
{{#invoke:random|date}}
→ 13:13, 23 janvier 2024 (UTC){{#invoke:random|date|format=F j}}
→ janvier 23{{#invoke:random|date|1 Jan 1980|31 Dec 1999}}
→ 00:54, 26 mars 1981 (UTC){{#invoke:random|date|1st January 1500|1st January 3000|format=g:i a, l d M Y}}
→ 6:10 pm, mercredi 03 juin 1592{{#invoke:random|date|1970/06/01}}
→ 07:17, 10 janvier 1970 (UTC){{#invoke:random|date|same=yes}}
→ 13:13, 23 janvier 2024 (UTC){{#invoke:random|date|same=yes}}
→ 13:13, 23 janvier 2024 (UTC)
Item
[modifier le code]The item
function outputs a random item from a list.
{{#invoke:random|item|list item 1|list item 2|list item 3|...|same=yes|link=no}}
- If the
|link=
parameter is set to "yes", "y", "true", or "1", the items is transformed into internal link by adding double brackets. - If the
|same=
parameter is set to "yes", "y", "true", or "1", the same item is returned for each module call on a given page.
Example (refresh)
{{#invoke:random|item|egg|beans|sausage|bacon|spam}}
→ bacon{{#invoke:random|item|egg|beans|sausage|bacon|spam|link=yes}}
→ bacon
List
[modifier le code]The list
function outputs a list in a random order.
{{#invoke:random|list|list item 1|list item 2|list item 3|...|sep=separator|limit=number of items to display|link=no|same=yes}}
Named parameters
|sep=
or|separator=
- an optional separator for the list items. Some values are special; see the table below.|limit=
- the maximum number of list items to display. The lowest possible is 0 and the highest possible is the length of the list.|link=
- if this is set to "yes", "y", "true", or "1", the items are transformed into internal links by adding double brackets.|same=
- if this is set to "yes", "y", "true", or "1", the list order is the same for each module call on a given page.
Code | Output |
---|---|
dot |
· |
pipe
|
| |
comma |
, |
tpt-languages |
⧼tpt-languages-separator⧽ |
space |
a space |
any other value | other values are used without modification |
You cannot input spaces directly to the |sep=
parameter due to limitations in MediaWiki's template syntax. However, it is possible to work around this by using HTML entities. You can use  
to represent a normal space, and
to represent a non-breaking space.
Examples (refresh)
{{#invoke:random|list|egg|beans|sausage|bacon|spam}}
→ beansspamsausageeggbacon{{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=dot}}
→ beans · spam · sausage · egg · bacon{{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=space}}
→ beans spam sausage egg bacon{{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=; }}
→ beans; spam; sausage; egg; bacon{{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=foo}}
→ beansfoospamfoosausagefooeggfoobacon{{#invoke:random|list|egg|beans|sausage|bacon|spam|limit=3}}
→ beansspamsausage{{#invoke:random|list|egg|beans|sausage|bacon|spam|link=yes}}
→ beansspamsausageeggbacon
Text list
[modifier le code]The text_list
function outputs a list in a random order, text-style. In other words, it is like the list
function, but with a different separator before the last item.
{{#invoke:random|text_list|list item 1|list item 2|list item 3|...|sep=separator|conj=conjunction|limit=number of items to display|link=no|same=yes}}
The separator can be specified with either the |sep=
or |separator=
parameters; its default value is ", ". The conjunction can be specified with either the |conj=
or |conjunction=
parameters; its default value is " and ". The separator and the conjunction can be specified with the same values as the separator in the list function.
The maximum number of list items to display can be set with the |limit=
parameter. The lowest possible is 0 and the highest possible is the length of the list.
If the |same=
parameter is set to "yes", "y", "true", or "1", the list order is the same for each module call on a given page.
Examples (refresh)
{{#invoke:random|text_list|egg|beans|sausage|bacon|spam}}
→ beans, spam, sausage, egg et bacon{{#invoke:random|text_list|egg|beans|sausage|bacon|spam|sep=; }}
→ beans; spam; sausage; egg et bacon{{#invoke:random|text_list|egg|beans|sausage|bacon|spam|sep=; |conj= or }}
→ beans; spam; sausage; egg or bacon{{#invoke:random|text_list|egg|beans|sausage|bacon|spam|limit=3}}
→ beans, spam et sausage{{#invoke:random|text_list|egg|beans|sausage|bacon|spam|link=yes}}
→ beans, spam, sausage, egg et bacon
HTML lists
[modifier le code]If you wish to output an HTML list in a random order, you can choose between five different functions: bulleted_list
, unbulleted_list
, horizontal_list
, ordered_list
, and horizontal_ordered_list
. These functions all use Module:List.
Function name | Produces | Example code | Example output (refresh) |
---|---|---|---|
bulleted_list
|
Bulleted lists | {{#invoke:random|bulleted_list|egg|sausage|spam}}
|
|
unbulleted_list
|
Unbulleted lists | {{#invoke:random|unbulleted_list|egg|sausage|spam}}
|
|
horizontal_list
|
Horizontal bulleted lists | {{#invoke:random|horizontal_list|egg|sausage|spam}}
|
|
ordered_list
|
Ordered lists (numbered lists and alphabetical lists) | {{#invoke:random|ordered_list|egg|sausage|spam}}
|
|
horizontal_ordered_list
|
Horizontal ordered lists | {{#invoke:random|horizontal_ordered_list|egg|sausage|spam}}
|
|
- Basic usage
{{#invoke:random|function|list item 1|list item 2|list item 3|...|limit=number of items to display|same=yes}}
- All parameters
The maximum number of list items to display can be set with the |limit=
parameter. The lowest possible is 0 and the highest possible is the length of the list.
If the |same=
parameter is set to "yes", "y", "true", or "1", the list order is the same for each module call on a given page.
Please see Module:List for a full explanation of the other parameters.