Template:Link/documentation

From The Languages of David J. Peterson
Revision as of 01:25, 9 September 2023 by Juelos (talk | contribs)
Jump to navigation Jump to search
Documentation for Template:Link. [edit]
This page contains usage information, categories, interwiki links and other content describing the template.

This template generates a link to an entry in a given language. It links to a specific language-section on the target page, and applies language-specific formatting. It can also show a number of annotations after the linked term.

There are several linking templates:

  • {{link}} (shortcut {{l}}). Use this template outside running text, in sections that list entries, such as “Synonyms”, “Related terms”, and “Descendants”.
  • {{mention}} (shortcut {{m}}). Use this template when a particular term is mentioned (as in the use–mention distinction) within running English text, like in definitions or in ===Etymology=== and ====Usage notes==== sections.
  • {{l-self}}. Use this template in inflection tables and other templates that list multiple terms. It works the same as {{link}}, but when it links to the same page it is placed on, the link turns bold rather than becoming a link. This mimics the MediaWiki software's behaviour when linking to the same page, but has the full language support of {{link}}.
  • {{m-self}}. Use this template in templates that mention multiple terms in running text. It displays like {{mention}}, but works the same as {{l-self}} when linked to the current page.
  • {{ll}}. This template creates a link, but does not add any additional formatting or annotations. There is at the moment no consensus on whether it should be used in entries or not.

All of these templates create a link to a language's section of an entry, or to a language-specific sense id created by the template {{senseid}} if the |id= parameter is used.

If the second parameter of {{l}}, {{m}}, {{l-self}}, or {{m-self}} contains a wikilink ([[entryname|text]] or [[entryname]]), then this link will be transformed into a link to the language's section of the entry. For instance, the [[word]] will be transformed into the [[word#English|word]] and these [[word|words]] will be transformed into these [[word#English|words]], if the language code supplied to the template is en.

The annotations – transliteration, translation, literal translation, and part of speech – are displayed by {{l}}, {{m}}, {{l-self}}, or {{m-self}} in parentheses after the link. {{ll}} does not support any of these annotations.

See also Project:Style guide#Styling_templates for a list of all the various styling templates with examples.

This template uses Module:links as a back-end, so it supports all the features of that module. Please see its documentation for more details.

Parameters

The template takes one required positional parameter and several optional parameters. Note that either the second or third positional parameter should be given, although technically neither is required.

|1=
The language code (see Project:Languages) for the language that the term is in. All Wiktionary language codes are supported, including those for constructed and reconstructed languages.
|2=
(optional) The page name to be linked to. The template will automatically remove diacritics and punctuation from the page title, according to the entry_name setting in Module:languages, but will keep them in the displayed text. To link to a reconstructed term, such as Proto-Germanic Lua error in Module:Languages/errorGetBy at line 14: The language or etymology language code "gem-pro" in the first parameter is not valid (see Wiktionary:List of languages).., add * in front of this parameter.
Unsupported titles (see Special:PrefixIndex/Unsupported titles) can be linked to, by adding the displayed title, without the Unsupported titles/ prefix: for instance, {{m|mul|:}}: links to Unsupported titles/Colon. This feature is made possible by the list found at Module:links/data. To add new unsupported titles, follow the directions in the module.
|3=
(optional) Alternate text to display as the link title, if different from the page name. Please do not use this only for adding diacritics or punctuation to the word, as the template can automatically remove these. See above.
|t= or |4=
(optional) A gloss or short translation of the word. The parameter |gloss= is deprecated for this purpose.
|sc=
(optional) The script code (see Project:Scripts) for the script that the term is written in. When no code is given, the template will try to detect the script based on the characters in the term and the scripts in the language's data table (see Module:scripts § findBestScript). In most cases, it will succeed. If it fails, the code None will be used.
|tr=
(optional) Transliteration for non-Latin-script words. When no transliteration is given, the template will try to add a default transliteration when possible. For certain languages, automated transliteration will override the value of this parameter. Use tr=- if you don't want a transliteration to be automatically generated (you shouldn't really ever do this in an entry).
|ts=
(optional) Transcription for non-Latin-script words whose transliteration is markedly different from the actual pronunciation. Should not be used for IPA pronunciations.
|pos=
(optional) A part of speech indication for the term.
|g=, |g2=, |g3= and so on
(optional) Gender and number; see Module:gender and number for details.
|lit=
(optional) A literal translation for the term.
|id=
(optional) A sense id for the term, which links to anchors on the page set by the {{senseid}} template.
|accel=
(optional) Provides acceleration tags to be used by the Project:ACCEL gadget, to automatically generate an entry when the link is clicked. For information about acceleration tags, see Project:ACCEL#Acceleration tags. You should only provide this parameter when using the linking template as part of a headword-line or inflection-table template. Don't use it directly in entries. If the acceleration tag contains a vertical bar |, substitute it with an underscore _ or use {{!}}.

Examples

Simple usage:

{{l|cs|háček}}
<span class="Latn" lang="cs">[[háček#Czech|háček]]</span>
háček

Showing alternative text:

{{l|en|go|went}}
<span class="Latn" lang="en">[[go#English|went]]</span>
went

With wikilinks in input:

{{l|en|[[God]] be [[with]] [[you]]}}
<span class="Latn" lang="en">[[God#English|God]] be [[with#English|with]] [[you#English|you]]</span>
God be with you

Removal of diacritics:

{{l|la|exemplī grātiā}}
<span class="Latn" lang="la">[[exempli gratia#Latin|exemplī grātiā]]</span>
exemplī grātiā

Reconstructed words:

{{l|ine-pro|*bʰréh₂tēr}}
<span class="Latinx" lang="ine-pro">[[Reconstruction:Proto-Indo-European/bʰréh₂tēr|*bʰréh₂tēr]]</span>
*bʰréh₂tēr

Translation:

{{l|la|similis|t=like}} or {{l|la|similis||like}}
<span class="Latn" lang="la">[[similis#Latin|similis]]</span> <span class="mention-gloss-paren annotation-paren">(</span><span class="mention-gloss-double-quote"></span><span class="mention-gloss">like</span><span class="mention-gloss-double-quote"></span><span class="mention-gloss-paren annotation-paren">)</span>
similis (like)

Miscellaneous / with many options:

{{l|ru|ру́сский||Russian|g=m}}
<span class="Cyrl" lang="ru">[[русский#Russian|ру́сский]]</span>&nbsp;<span class="gender"><abbr title="masculine gender">m</abbr></span> <span class="mention-gloss-paren">(</span><span lang="" class="tr">rússkij</span>, <span class="mention-gloss-double-quote"></span><span class="mention-gloss">Russian</span><span class="mention-gloss-double-quote"></span><span class="mention-gloss-paren">)</span>
ру́сский m (rússkij, Russian)

Wikicode

{{l}}, {{m}}, {{l-self}}, or {{m-self}} all add HTML tags in addition to creating a link. {{l|en|word}} outputs the wikicode <span class="Latn" lang="en">[[word#English|word]]</span>, and {{m|en|word}} outputs <i class="Latn mention" lang="en">[[word#English|word]]</i>. {{l-self}} and {{m-self}} do the same, except they don't create a link if the page being linked to is the same as the current page. This HTML is applied by Module:script utilities; for more, see Module:script utilities/documentation#tag text.

Customization

The preliminary default for Latin-script (i.e. Roman script, not just Latin-language) terms and phrases is italics. Readers can easily toggle the output from italics to bold by selecting “Show other Latin (Roman) script mentions in bold” from Project:PREFS. Alternatively, or for more advanced customization, readers can add styles to their style sheets as described in Project:CUSTOM:

  • For plain format (e.g.: From mot + ...):
    .mention-Latn { font-style: normal }
  • For bold format (e.g.: From mot + ...):
    .mention-Latn { font-weight: bold; font-style: normal }
  • For italicized format (e.g.: From mot + ...):
    .mention-Latn { font-style: italic }

Further, the default style of the subsequent English translation glosses is in double quotes (pending a vote to approve this template). Readers can easily change the output to single quotes by selecting “Show English glosses for mentioned terms in single quotes” from Project:PREFS.

See also

  • {{ja-l}} – a similar template specialized for Japanese
  • {{ko-l}} – a similar template specialized for Korean
  • {{vi-l}} – a similar template specialized for Vietnamese
  • {{mention-gloss}} – to create quotation marks (for glosses or translations) that are formatted with the same HTML code as used by {{link}} or {{mention}}

Language-specific subtemplates

There are high performance versions of this template for several languages. All of them take two parameters: the word and the alternate text. Some may support transliteration also, but they should not support any other parameters for speed reasons. Using any of these subtemplates is sometimes necessary for pages that have many links, since they are faster. For normal use, there is no need for this, and the regular {{l}} should be used instead.


TemplateData

This is the TemplateData documentation for this template used by VisualEditor and other tools.

TemplateData for Link

This template generates a link to an entry in a given language. It links to a specific language-section on the target page, and applies language-specific formatting. It can also show a number of annotations after the linked term.

Template parameters[Edit template data]

This template prefers inline formatting of parameters.

ParameterDescriptionTypeStatus
language code1

The language code (see Wiktionary:Languages) for the language that the term is in. All languages are supported, including constructed and reconstructed ones.

Example
en
Stringrequired
entry to link2

The page name to be linked to

Example
house
Page namesuggested
displayed text3

Alternate text to display as the link title, if different from the page name

Stringsuggested
gloss4 t gloss

A gloss or short translation of the term

Stringsuggested
literal translationlit

A literal translation of the term

Stringoptional
sense IDid

A sense ID for the term, which links to anchors on the page set by the {{senseid}} template.

Example
Q20502
Stringoptional
script codesc

(optional) The script code (see [[Project:Scripts]]) for the script that the term is written in. The template can usually figure this out itself, so this is rarely needed. When no code is given, the template will try to detect the script based on the characters of the word, and if it fails to detect the script, the code <code>None</code> will be used.

Example
Latn
Stringoptional
part of speechpos

A part of speech indication for the term

Example
noun
Stringsuggested
transliterationtr

Transliteration for non-Latin-script words. When no transliteration is given, the template will try to add a default transliteration when possible. For certain languages, automated transliteration will override the value of this parameter. Use <code>tr=-</code> if you don't want a transliteration to be automatically generated (you shouldn't really ever do this in an entry).

Stringsuggested
gender and numberg

Gender and number; see [[Module:gender and number]] for details.

Stringoptional