Difference between revisions of "Template:Blockquote/doc"

From Warbird Philosophy
Jump to navigation Jump to search
(No difference)

Revision as of 22:13, 5 March 2022

Lua error in package.lua at line 80: module 'strict' not found.

Lua error in package.lua at line 80: module 'strict' not found.

Lua error in package.lua at line 80: module 'strict' not found.


The Manual of Style guidelines for block quotations recommend formatting block quotations using the {{Blockquote}} template or the HTML <blockquote> element, for which that template provides a wrapper.

  • Quotes work best when used with short sentences, and at the start or end of a section, as a hint of or to help emphasize the section's content.
  • For typical quotes, especially those longer than the rest of the paragraph in which they are quoted, {{Cquote}} (for use outside of article space only) provides a borderless quote with decorative quotation marks, and {{Quote frame}} provides a bordered quote. Both span the page width.
  • For very short quotes, {{Rquote}} (with decorative quotation marks, for use outside of article space only) or {{Quote box}} (framed) can be used to set the quote off to either the right or left as in a magazine sidebar. This can be effective on essay pages and WikiProject homepages.

Usage

{{Blockquote}} adds a block quotation to an article page.

This is easier to type and is more wiki-like than the equivalent HTML <syntaxhighlight lang="html" class="" id="" style="" inline="1">

...

</syntaxhighlight> tags, and has additional pre-formatted attribution parameters for author and source (though these are not usually used in articles; see Lua error in package.lua at line 80: module 'strict' not found., below).

Note: Block quotes do not normally contain quotation marks (see MOS:BLOCKQUOTE).

Lua error in package.lua at line 80: module 'strict' not found.

Examples

Basic use:

Markup Renders as
{{Blockquote
|text=Quoted material.
}}

Quoted material.

With attribution displayed:

Markup Renders as
{{Blockquote
|text=Quoted material.
|author=First M. Last
}}

Quoted material.

— First M. Last

With more attribution:

Markup Renders as
{{Blockquote
|text=Quoted material.
|author=First M. Last
|title="Article Title"
|source=''Book Title'' (date)
}}

Quoted material.

— First M. Last, "Article Title", Book Title (date)

Examples with "multiline":

Especially useful for translated quotes; see notes about this parameter.

  • with "multiline" checkY
Markup Renders as
{{blockquote|text=
{{lang|fr|Ceci n'est pas une pipe.}}
This is Not a Pipe.
|multiline=yes
|author=[[René Magritte]]
|title=[[The Treachery of Images]]
}}

Ceci n'est pas une pipe.

This is Not a Pipe.

  • for comparison without "multiline" ☒N
Markup Renders as
{{blockquote|text=
{{lang|fr|Ceci n'est pas une pipe.}}
This is Not a Pipe.
|author=[[René Magritte]]
|title=[[The Treachery of Images]]
}}

Ceci n'est pas une pipe. This is Not a Pipe.

An ample example:

Markup
<syntaxhighlight lang="moin"><blockquote class="templatequote " >Cry "Havoc" and let slip the dogs of war.<div class="templatequotecite">— <cite>Mark Antony, in [[William Shakespeare]], ''[[Julius Caesar (play)|Julius Caesar]]'', act III, scene I</cite></div></blockquote></syntaxhighlight>
Renders as

Cry "Havoc" and let slip the dogs of war.

— Mark Antony, in William Shakespeare, Julius Caesar, act III, scene I

Parameters

Parameter list

{{Blockquote
| text      =
| author    =
| title     =
| source    =
| character =
| multiline =
| class     =
| style     =
}}

See also section #TemplateData.

Quoted text

|text= a.k.a. |1=—The material being quoted, without quotation marks around it. It is always safest to name this parameter (rather than use an unnamed positional parameter), because, otherwise, any inclusion of a non-escaped "=" character (e.g., in a URL in a source citation) will break the template.

Displayed attribution

These parameters are for displaying attribution information below the quote; this should not be confused with citing a source (see Lua error in package.lua at line 80: module 'strict' not found., below). These parameters are entirely optional, and are usually used with famous quotations, not routine block quotations, which are usually sourced at the end of the introductory line immediately before the quotation, with a normal <syntaxhighlight lang="html" inline>[1]</syntaxhighlight> tag.

|author= a.k.a. |2= – optional author/speaker attribution information that will appear below the quotation, and preceded with an attribution dash.

|title= a.k.a. |3= – optional title of the work the quote appears in, to display below the quotation. This parameter immediately follows the output of |author= (and an auto-generated comma), if one is provided. It does not auto-italicize. Major works (books, plays, albums, feature films, etc.) should be italicized; minor works (articles, chapters, poems, songs, TV episodes, etc.) go in quotation marks (see MOS:TITLES). Additional citation information can be provided in a fourth parameter, |source=, below, which will appear after the title.

|source= a.k.a. |4= – optionally used for additional source information to display, after |title=, like so: <syntaxhighlight lang="moin" class="" id="" style="" inline="1">|title="The Aerodynamics of Shaved Weasels" |source=Perspectives on Mammal Barbering, 2016</syntaxhighlight>; a comma will be auto-generated between the two parameters. If |source= is used without |title=, it simply acts as |title=. (This parameter was added primarily to ease conversion from misuse of the pull quote template {{Quote frame}} for block quotation, but it may aid in cleaner meta-data implementation later.)

|character= a.k.a. |char= – to attribute fictional speech to a fictional character, with other citation information. Can also be used to attribute real speech to a specific speaker among many, e.g. in a roundtable/panel transcript, a band interview, etc. This parameter outputs "[Character's name], in" after the attribution dash and before the output of the parameters above, thus one or more of those parameters must also be supplied. If you need to cite a fictional speaker in an article about a single work of fiction, where repeating the author and title information would be redundant, you can just use the |author= parameter instead of |character=.

Technically, all citation information can be given in a single parameter, as in: <syntaxhighlight lang="moin" class="" id="" style="" inline="1">|source=Anonymous interview subject, in Jane G. Arthur, "The Aerodynamics of Shaved Weasels", Perspectives on Mammal Barbering (2016), Bram Xander Yojimbo (ed.)</syntaxhighlight> But this is a bit messy, and will impede later efforts to generate metadata from quotation attribution the way we are already doing with source citations. This is much more usable: <syntaxhighlight lang="moin"> |character=Anonymous interview subject |author=Jane G. Arthur |title="The Aerodynamics of Shaved Weasels" |source=Perspectives on Mammal Barbering (2016), Bram Xander Yojimbo (ed.) </syntaxhighlight> Later development can assign a CSS class and so forth to these separate parameters, upon which scripts would be able to operate (e.g. to look up things in WikiQuote).

Rarely used technical parameters

  • |multiline= – keep forced linebreaks in output.
    Notes:
    • Will only be applied if at least one of these other parameters or its aliases is not empty (including implicit, unnamed parameters):
      |author=, |title=, |source=, or |character=.
    • The value does not matter, as long it is not empty. Using a so called speaking parameter (such as true or yes) is highly recommended. Avoid values that can surprise users (e.g. false or no).
  • |style= – allows specifying additional CSS styles (not classes) to apply to the <syntaxhighlight lang="html" class="" id="" style="" inline="1">

    ...

    </syntaxhighlight> element. (See #Nested quotations, below, for the most common use case.)
  • |class= – allows specifying additional HTML classes to apply to the same element.

Reference citations

A reference citation can be placed before the quote, after the quote, or in the |source= parameter:


Please do not place the citation in a |author= or |source= parameter by itself, as it will produce a nonsensical attribution line that looks like:

     — [1]

Please also do not put it just outside the {{blockquote}} template, as this will cause a:

     [1]

on a line by itself.

Limitations

If you do not provide text, the template generates a parser error message, which will appear in red text in the rendered page.

If any parameter's actual value contains an equals sign (=), you must use a named parameter (e.g. |text="E=MC2" is a formula everyone knows but few understand, not a blank-name positional parameter. The text before the equals sign gets misinterpreted as a named parameter otherwise. Be wary of URLs, which frequently contain this character. Named parameters are always safer, in this and other templates.

If any parameter's actual value contains characters used for wiki markup syntax (such as pipe, brackets, single quotation marks, etc.), you may need to escape it. See {{!}} and friends.

Next to right-floated boxes

As of September 2015, the text of a block quotation may rarely overflow (in Firefox or other Gecko browsers) a right-floated item (e.g. a {{Listen}} box, when that item is below another right-floated item of a fixed size that is narrower. In Safari and other Webkit browsers (and even more rarely in Chrome/Chromium) the same condition can cause the block quotation to be pushed downward. Both of these problems can be fixed by either:

  1. removing the sizing on the upper item and letting it use its default size (e.g. removing ###x###px sizing or |upright= from a right-floated image above a wider right-floated object that is being overflowed by quotation text; or
  2. using |style=<syntaxhighlight lang="css" class="" id="" style="" inline="1">overflow:inherit;</syntaxhighlight> in the quotation template.

There may be other solutions, and future browser upgrades may eliminate the issue. It arises at all because of the <syntaxhighlight lang="css" inline>blockquote {overflow: hidden;}</syntaxhighlight> CSS declaration in Mediawiki:Common.css, which itself works around other, more common display problems. A solution that fixes all of the issues is unknown at this time.

Vanishing quotes

In rare layout cases, e.g. when quotes are sandwiched between userboxes, a quotation may appear blanked out, in some browsers. The workaround for this problem is to add |style=<syntaxhighlight lang="css" class="" id="" style="" inline="1">overflow:inherit;</syntaxhighlight> to such an instance of the template.

Line breaks

This template sets a text style which might ignore one blank line, and so the template must be ended with a break (newline) or the next blank line might be ignored. Otherwise, beware inline, as:
     text here {{blockquote|this is quoted}} More text here
spans a blank line, unless a {{blockquote|...}} is ended with a line break, then the next blank line might be ignored and two paragraphs joined.


(This section is transcluded from Template:Blockquote paragraphs)

The <syntaxhighlight lang="html" class="" id="" style="" inline="1">

</syntaxhighlight> element and any templates that use it do not honor newlines:

Markup Renders as
<blockquote>
Line 1
Line 2
Line 3
Line 4
</blockquote>

An easy solution is to use the {{poem quote}} template instead of <blockquote>...</blockquote>. This is effectively the same as using the <poem> tag inside <syntaxhighlight lang="html" class="" id="" style="" inline="1">

</syntaxhighlight>, which converts line breaks to <syntaxhighlight lang="html" class="" id="" style="" inline="1">
</syntaxhighlight> tags:

Markup Renders as
<blockquote><poem>
Line 1
Line 2
Line 3
Line 4
</poem></blockquote>

To markup actual paragraphs within block quotations, entire blank lines can be used between them, which will convert to <syntaxhighlight lang="html" class="" id="" style="" inline="1">

...

</syntaxhighlight> tags:

Markup Renders as
<blockquote>
Paragraph 1

Paragraph 2

Paragraph 3
</blockquote>

Note that it may be necessary to put a line break in the wikitext before <blockquote> and after </blockquote> in order for the paragraphs to render with the intended separation. (This also makes the wikitext easier to read.)

This paragraph style also works with {{blockquote}}, which is a replacement for <blockquote> that also has parameters to make formatting of the attribution more convenient and consistent.

Blockquote and templates that call it, and are indented with colon (:), bulleted with asterisk (*), or numbered with number (#), will generate errors and incorrectly display anything after a newline character.

Markup Renders as
:<blockquote>Paragraph 1
Paragraph 2</blockquote>
Markup Renders as
*<blockquote>Paragraph 1
Paragraph 2</blockquote>
Markup Renders as
#<blockquote>Paragraph 1
Paragraph 2</blockquote>

Nested quotations

The <syntaxhighlight lang="html" class="" id="" style="" inline="1">

...

</syntaxhighlight> element has styles that change the font size: on desktop, text is smaller; on mobile, it is larger. This change is relative to the enclosing context, meaning that if you quote from a source that itself uses a block quotation, you'll find that the inner quotation is either really tiny and hard to read, or really large and barely fits on the screen. To fix this issue, add the parameter |style=<syntaxhighlight lang="css" class="" id="" style="" inline="1">font-size:inherit;</syntaxhighlight> on any inner {{blockquote}} templates.

Technical issues with block templates

If the block-formatted content begins with a list (or any other wikimarkup that is dependent upon a specific markup character being at the beginning of a line) then due to a bug in MediaWiki, a <nowiki /> and a new line must exist before the list (or whatever) starts. Compare:

  code result
FAIL
 {{ Blockquote|1=
 *Firstly, ...
 *Secondly, ...
 *Thirdly, ...
 }}

*Firstly, ...

  • Secondly, ...
  • Thirdly, ...
Works as intended

{{ Blockquote|1=<nowiki />
*Firstly, ... *Secondly, ... *Thirdly, ... }}

  • Firstly, ...
  • Secondly, ...
  • Thirdly, ...

To embed a table in block markup like this, the block template's content parameter must be named or numbered and include the self-closing noinclude – as in |1=<nowiki /> – then every | character in the table markup must be escaped with {{!}}. An alternative is to use explicit HTML <syntaxhighlight lang="html" class="" id="" style="" inline="1">

</syntaxhighlight>, <syntaxhighlight lang="html" class="" id="" style="" inline="1"></syntaxhighlight>, <syntaxhighlight lang="html" class="" id="" style="" inline="1">
</syntaxhighlight>, and <syntaxhighlight lang="html" class="" id="" style="" inline="1"></syntaxhighlight> markup.

Errors

Pages where this template is not used correctly populate Category:Pages incorrectly using the quote template. The category tracks tranclusions of Template:Quote that have no text given for quotation or use an equals sign in the argument of an unnamed parameter. It also tracks usage of |class=, |id=, |diff=, |4=, or |5=.

Tracking category

Articles that use unsupported parameters are placed in Category:Pages using Blockquote template with unknown parameters (0).

TemplateData

This is the TemplateData for this template used by TemplateWizard, VisualEditor and other tools. See a monthly parameter usage report for Template:Blockquote in articles based on its TemplateData.

TemplateData for Blockquote

Adds a block quotation.

Template parameters

ParameterDescriptionTypeStatus
texttext 1 quote

The text to quote

Example
Cry "Havoc" and let slip the dogs of war.
Contentrequired
authorauthor 2 cite sign

The writer of the source

Example
William Shakespeare
Contentsuggested
titletitle 3

The work being quoted from

Example
Julius Caesar
Contentsuggested
sourcesource 4

A source for the quote

Example
act III, scene I
Contentsuggested
charactercharacter 5

The speaker within the work who is being quoted

Example
Mark Antony
Contentoptional
multilinemultiline

Keeps forced linebreaks in output

Example
true
Stringoptional
stylestyle

Additional CSS styles (not classes) to apply

Example
font-size:inherit;
Stringoptional
classclass

Additional HTML classes to apply

Example
pullquote
Stringoptional

See also

  1. ...
  2. ...
  3. ...
  4. ...
  5. ...
  6. ...
  7. ...