Open main menu

prefix- +‎ base +‎ -suffix

This template shows the parts (morphemes) that make up a word, for use in etymology sections. Although it is called affix, it can be used for compounds too, like {{compound}}. It uses Module:compound and Module:compound/templates as a back-end.

To create the category pages, such as Category:English words suffixed with -ed, add {{auto cat}} to the page. This automatically supplies the proper parameters to {{suffix cat}}


{{affix|en|complete|-ness}}complete +‎ -ness
{{affix|en|pre-|date}}pre- +‎ date
{{affix|en|acro-|-nym}}acro- +‎ -nym
{{affix|en|pest|-i-|-cide}}pest +‎ -i- +‎ -cide
{{affix|en|volley|ball}}volley +‎ ball


The language code. See Wiktionary:Languages.
The script code. See Wiktionary:Scripts. This is rarely needed as the script can generally be automatically detected.
|2=, |3= etc.
The parts of the words to show. Either:
  1. At least one of the provided parts must begin and/or end with a hyphen (prefix, suffix, interfix);
  2. or there must be two or more parts (it may be a compound, with or without prefixes, suffixes, interfixes).
The part of speech to include in the category names, in plural form. Defaults to words.
The sort key to use when placing the entry in categories. This is rarely needed, as the default generated sort key is usually correct.
Do not add categories to the entry.

The following parameters are available for each matching part in the numbered/positional parameters. The N must be replaced by the corresponding part index. For example, for the second part (positional parameter 3), use 2 for N. Most of these parameters correspond directly to the equivalent parameters in the standard {{l}} (and {{m}}) template.

The alternative display form. Equivalent to the third parameter of {{l}}.
A gloss to show after the part. Equivalent to the fourth parameter of {{l}}. The parameter |glossN= is deprecated for this purpose.
The transliteration, as in {{l}}.
The transcription, in languages where the transliteration and transcription differ markedly, as in {{l}}.
The gender (multiple comma-separated genders may be specified for a given part).
The sense id, as in {{l}}. As distinguished by mere linking templates, the affix template, categorizing terms by affix, also adds the sense id to the category name to distinguish various purposes of the same affix shape, hence the sense id in the dictionary entry for the affix should have a reasonable name in respect to this categorization. Changes the category name from language name terms affixed with affix to language name terms affixed with affix (value of id parameter).
The part of speech label to show after the part, as in {{l}}. If this parameter contains patronym(ic), the entry will be added to a language's patronymic category. If this parameter contains diminutive and the |pos= parameter is defined, the entry will be added to a diminutive part-of-speech category. For instance, the parameter values |pos=noun and |pos2=diminutive suffix will add an entry to the language's diminutive nouns category.
The literal meaning to show after the part, as in {{l}}.
Qualifier text to display after the part, in parens and normally italicized.
The language code to use for this particular part. This overrides the default provided by |1=. When this is provided, the language name is displayed before the part, and a derivational category is also added to the entry. This is used for the occasional term which was directly affixed at the time of borrowing, and for which no native base form existed at the time, such as vexillology.
The script code to use for this particular part. This overrides the default provided by |sc=.


The template will automatically categorize the entry based on the types of affixes it sees.

  • If a part begins with a hyphen, it is a suffix.
  • If a part ends with a hyphen, it's a prefix.
  • If a part has a hyphen at both ends, it's an interfix.

This behavior can be disabled by prefixing an entry with ^. This should be used, for example, for Proto-Indo-European roots, which are conventionally written with a trailing hyphen but aren't prefixes.

What is considered a hyphen depends on the specified language, so it can also support language-specific types of hyphen. In particular, the Hebrew and Arabic scripts have their own hyphen script-specific character (which has the correct right-to-left behavior).

Some languages (e.g. most East Asian languages) don't use hyphens with affixes. For these languages, you should still add a regular hyphen (-) to the affix as appropriate, but the term will be displayed and linked without a hyphen.


  • There is no support for circumfixes.
  • If an entry both begins and ends with a hyphen, it is considered an interfix, not an infix. There is currently no support for infixes as such.

See also

Template Data

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

TemplateData for affix

No description.

Template parameters

This template prefers inline formatting of parameters.

language code1 lang

the 2- or 3-letter language code for the current section

first part2

the first part of the affixed word

second part3

the second part of the affixed word

script codesc

no description

first part of speechpos1

no description

second part of speechpos2

no description

first part alternate textalt1

Text to show instead of the first part for the link to its entry

second part alternate textalt2

Text to show instead of the second part for the link to its entry

first glosst1

brief gloss of the first part

second glosst2

brief gloss of the second part

first part transliterationtr1

Transliteration of the first part (for non-Latin scripts)

second part transliterationtr2

Transliteration of the second part (for non-Latin scripts)