Module:Annotated link/doc
![]() | This is a documentation subpage for Module:Annotated link. It may contain usage information, categories and other content that is not part of the original module page. |
![]() | This module depends on the following other modules: |
Usage
{{#invoke:AnnotatedLink|main |name= |display= |quote= |abbr= |abbr_title= |aka= |wedge= |dash= |desc_first_letter_case= |link_lang= |link_lang_italic= |link_lang_nocat= |link_lang_size= |link_lang_cat= |link_lang_rtl= |aka_lang= |aka_lang_italic= |aka_lang_nocat= |aka_lang_size= |aka_lang_cat= |aka_lang_rtl= |wedge_lang= |wedge_lang_italic= |wedge_lang_nocat= |wedge_lang_size= |wedge_lang_cat= |wedge_lang_rtl= |only= |prefer= |fallback= |desc_lang_italic= |desc_lang_nocat= |desc_lang_size= |desc_lang_cat= |desc_lang_rtl= |desc_lang_no= }}
name
By providing only the required page name (including namespace), the module will use Module:GetShortDescription to look for an explicit {{short description}}
in that page, but if not found, will try to fetch the wikidata description. This is equivalent to stating |prefer=explicit
; see #prefer (below). If a description is found, it will be appended to a link created for the named page in the style expected for the likes of MOS:SEEALSO. If no description is found, the link will be created but no extra information will be appended – unless the extensive following parameters are employed.
Any foreign language text supplied to this module or retrieved by Module:GetShortDescription may be appropriately formatted, in accordance with MOS:OTHERLANG, via the parameters for Module:Lang; see #Foreign language text (below).
As this module is responsible for the use of all features of Module:GetShortDescription; all the parameters for that module are available through this module; see #Module:GetShortDescription parameters (below).
- Markup:
{{#invoke:AnnotatedLink|main |name=The Partisan }}
- Result: Script error: No such module "AnnotatedLink".
This and the following example song titles should be double quoted per MOS:POPMUSIC; that will be handled by #quote (below), and you will see the parameters in use where appropriate from here on.
display
Providing a value for |display=
will format the piped link with a display string:
- Markup:
{{#invoke:AnnotatedLink|main |name=Jump (Every Little Thing song) |display=Jump |quote=yes }}
- Result: Script error: No such module "AnnotatedLink".
quote
Stating |quote=yes
will double quote the link:
- Markup:
{{#invoke:AnnotatedLink|main |name=The Partisan |quote=yes }}
- Result: Script error: No such module "AnnotatedLink".
- Markup:
{{#invoke:AnnotatedLink|main |name=Jump (Every Little Thing song) |display=Jump |quote=yes }}
- Result: Script error: No such module "AnnotatedLink".
abbr
Providing a value for |abbr=
will append the link with the provided parenthesized abbreviation with <abbr>...</abbr>
semantic markup:
- Markup:
{{#invoke:AnnotatedLink|main |name=Confédération Mondiale des Activités Subaquatiques |display=World Underwater Federation |abbr=CMAS }}
- Result: Script error: No such module "AnnotatedLink".
An optional |abbr_title=
may be provided:
- Markup:
{{#invoke:AnnotatedLink|main |name=Confédération Mondiale des Activités Subaquatiques |display=World Underwater Federation |abbr=CMAS |abbr_title=Confédération Mondiale des Activités Subaquatiques }}
- Result: Script error: No such module "AnnotatedLink".
aka
Providing a value for |aka=
will append the link (and |abbr=
if provided) with a useful alternative name:
- Markup:
{{#invoke:AnnotatedLink|main |name=The Partisan |quote=yes |aka=La Complainte du partisan }}
- Result: Script error: No such module "AnnotatedLink".
- Markup:
{{#invoke:AnnotatedLink|main |name=Confédération Mondiale des Activités Subaquatiques |display=World Underwater Federation |abbr=CMAS |aka=Confédération Mondiale des Activités Subaquatiques }}
- Result: Script error: No such module "AnnotatedLink".
These and some following examples contain foreign language text that, per MOS:OTHERLANG, should be appropriately displayed and declared via HTML markup as being of that language; this will be handled by various parameters; see #Foreign language text (below) for full details, and you will see the parameters in use where appropriate from here on.
wedge
Providing a value for |wedge=
will append the link (and |abbr=
and |aka=
in that order if either or both is provided) with any extra details felt suitable:
- Markup:
{{#invoke:AnnotatedLink|main |name=The Partisan |quote=yes |wedge=from the album ''[[Songs from a Room]]'' |aka=La Complainte du partisan |aka_lang=fr }}
- Result: Script error: No such module "AnnotatedLink".
dash
For list consistency, per MOS:LISTFORMAT; by providing a value for |dash=
; the dash between the short description and the preceding text may be exchanged for a suitable alternative:
- Markup:
{{#invoke:AnnotatedLink|main |name=The Partisan |dash=, }}
- Result: Script error: No such module "AnnotatedLink".
desc_first_letter_case
Since Module:GetShortDescription could return a description from wikidata, which are formatted with a lowercase first letter, whereas short descriptions on en Wikipedia are formatted with an uppercase first letter, and simply to give control over that display to the editor; this module will automatically transform the first character of wikidata descriptions to uppercase. If desired; stating either |desc_first_letter_case=upper
or |desc_first_letter_case=lower
will set the first character accordingly:
Explicitly requesting the wikidata description for an entity (to be explained in #Module:GetShortDescription parameters (below)) would append an inappropriately formatted description, but this is fixed:
- Markup:
{{#invoke:AnnotatedLink|main |name=The Partisan |quote=yes |only=wikidata }}
- Result: Script error: No such module "AnnotatedLink".
If appropriate; stating |desc_first_letter_case=lower
the module overrides that default:
- Markup:
{{#invoke:AnnotatedLink|main |name=The Partisan |quote=yes |only=wikidata |desc_first_letter_case=lower }}
- Result: Script error: No such module "AnnotatedLink".
Module:GetShortDescription parameters
The value provided with |name=
is passed through this module to Module:GetShortDescription where it is also required; the expectations of this module are described in #name (above). Module:GetShortDescription uses the
value to find a {{short description}}
in the named page, or various alternatives depending on parameter values.
only
Providing a value for |only=
will limit the search to being only for the stated description. If no description is found, the result will be an empty string, unless a fallback is provided; see #fallback (below).
- Stating
|only=explicit
will limit the search to only short descriptions set by use of{{short description}}
on the searched page. - Stating
|only=wikidata
will limit the search to only wikidata descriptions.
prefer
Providing a value for |prefer=
will initiate the search for the stated description, but try for the alternative if none is found. If no description is found, the result will be an empty string, unless a fallback is provided; see #fallback (below).
- State
|prefer=explicit
to use the explicit short description if available, or try for the wikidata description if not. - State
|prefer=wikidata
to use the wikidata description if available, or try for an explicit short description if not.
fallback
If a |fallback=
value is provided, and no description is found by the expressed route, the appended description will be the stated fallback value.
Foreign language text
Module:GetShortDescription may return a foreign language wikidata description; editor discretion determines if that should be displayed. If it is displayed; it will be in accordance with MOS:OTHERLANG, by Module:Lang (the module powering {{lang}}
). The appropriate language code will be set automatically, but all other parameters of {{lang}}
are available to affect the formatting of the returned description:
Use |lang_italic=
, |lang_nocat=
, |lang_size=
, |lang_cat=
and |lang_rtl=
; see lang's documentation for details.
If the editor determines that {{lang}}
formatting is not appropriate; it may be disabled with |lang_no=yes
. The following {{lang}}
formatting parameters are optional, so there is no off-switch required.
link_lang
If the link text is of a foreign language (again; editor discretion); control the formatting with: |link_lang=<language code>
, |link_lang_italic=
, |link_lang_nocat=
, |link_lang_size=
, |link_lang_cat=
and |link_lang_rtl=
aka_lang
If the |aka=
text is of a foreign language (again; editor discretion); control the formatting with: |aka_lang=<language code>
, |aka_lang_italic=
, |aka_lang_nocat=
, |aka_lang_size=
, |aka_lang_cat=
, |aka_lang_rtl=
wedge_lang
If the |wedge=
text is of a foreign language (again; editor discretion); control the formatting with: |wedge_lang=<language code>
, |wedge_lang_italic=
, |wedge_lang_nocat=
, |wedge_lang_size=
, |wedge_lang_cat=
, |wedge_lang_rtl=