Template:COinS safe/doc

From Black Cat Studios
< Template:COinS safe
Revision as of 15:59, 19 June 2023 by Blackcat (talk | contribs) (Created page with "{{Documentation subpage}} <!-- Please add categories at the bottom of this page, and interwikis at Wikidata (see Wikipedia:Wikidata) --> == Description == It is to indicate whether it can be safely used in citation templates. By default, it indicates the template is safe for use. When the template is set as "not safe", the page is placed into {{cl|Templates not safe for use in citation templates}}. == Usage == To indicate a template which can be safely used in citatio...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Description

It is to indicate whether it can be safely used in citation templates. By default, it indicates the template is safe for use.

When the template is set as "not safe", the page is placed into Category:Templates not safe for use in citation templates.

Usage

To indicate a template which can be safely used in citation templates: {{COinS safe}}

To indicate a template that should NOT be used in citation templates: {{COinS safe|n}}

To add extra info after the standard message: |addtext=

Examples

Code Result
{{COinS safe}}
{{COinS safe|n}}
{{COinS safe|addtext=Here is the extra info.}}
{{COinS safe|n|addtext=Here is the extra info.}}

Explain COinS issues

Citation templates such as Citation Style 1 and Citation Style 2 generate COinS metadata. If a template is used in a citation template field, then it may inject HTML into the metadata.

Compare the rendered HTML for {{cite book}} with |author= using no template and using {{smallcaps}}.

Markup Renders asScript error: No such module "For loop".

The author metadata is in the


Usage

Wraps a short span of text in <syntaxhighlight> tags (see mw:Extension:SyntaxHighlight). This template should be used for short samples; longer content should use <pre>...</pre> or <syntaxhighlight>...</syntaxhighlight>. See Help:Wiki markup for an explanation of what the various tags do.

If the content includes an equals sign (=), you must specify the parameter explicitly: {{code|1=date=30 Feb 2010}}.

The template uses the <syntaxhighlight> tag with the attribute inline=1. This works like the combination of the <code> and <nowiki> tags, applied to the expanded wikitext. For example, {{code|some '''wiki''' text}} will not render the word "wiki" in bold, and will render the tripled-single-quotes:

Template loop detected: Template:Code

However, {{code|a {{template}} call}} will still invoke the template:

Template loop detected: Template:Code

Use <nowiki>...</nowiki> around the template name to avoid this problem:

Template loop detected: Template:Code

When used inline with regular text, {{code}} generally looks best and is easiest to read when it is explicitly spaced apart from the regular text:

Template loop detected: Template:Code

is well spaced:

foo  Template loop detected: Template:Code  quux.

versus:

Template loop detected: Template:Code

which is going to be visually confusing for many:

foo Template loop detected: Template:Code quux.

because "foo" and "Template loop detected: Template:Code" will seem more closely associated than "Template loop detected: Template:Code" and "Template loop detected: Template:Code"; the width of the space character in a monospaced font is almost always larger than in a proportional font.

Use parameter {{{2}}} (unnamed, as |2=, or more explicitly as |lang=) to specify a language for mw:Extension:SyntaxHighlight. This option defaults to plain-text, i.e. no highlighting. There is no highlighting option for wikitext as a markup language, though Template loop detected: Template:Code and Template loop detected: Template:Code are valid values, as are Template loop detected: Template:Code, Template loop detected: Template:Code, Template loop detected: Template:Code, Template loop detected: Template:Code, Template loop detected: Template:Code and many others. Attempting to use an invalid one causes a list of valid ones to be displayed in place of the template output, when the page is previewed or saved.

This template does not need to be substituted.

Examples

Markup Renders asScript error: No such module "For loop".

Included templates

Embedded templates do not function as expected inside {{code}}; for longer, free-form blocks of code, which can contain templates such as {{var}} and {{samp}}, use <code>...</code> as a wrapper instead of this template.

Templates used inside {{code}} expose the rendered HTML— this can be useful. For example:

Markup Renders asScript error: No such module "For loop".

The above example shows the HTML rendered by the citation template, including the hidden metadata.

TemplateData

This is the TemplateData for this template used by TemplateWizard, VisualEditor and other tools. Click here to see a monthly parameter usage report for this template based on this TemplateData.

TemplateData for COinS safe

Script error: No such module "Format TemplateData".

See also

field. In this case, it is percent-encoded and is rendered as <span class="smallcaps" style="font-variant:small-caps;">Sam Drucker</span>

Reference management software will interpret the entire span as the author name.

See also