Difference between revisions of "Template:Blockquote paragraphs"
(typo) |
(rm. dead code) |
||
Line 1: | Line 1: | ||
Due to the utterly intractable [[MediaWiki]] bug reported at {{bugzilla|6200}}, and still unfixed {{as of|February 2012|lc=y}}, block quoting on Wikipedia, with or without a template, cannot handle freeform linebreaking for paragraphs and poems and the like, unless formatted one very specific (and annoying) way. It's not a problem of blockquote templates, but all uses of {{tag|blockquote|open}}. | Due to the utterly intractable [[MediaWiki]] bug reported at {{bugzilla|6200}}, and still unfixed {{as of|February 2012|lc=y}}, block quoting on Wikipedia, with or without a template, cannot handle freeform linebreaking for paragraphs and poems and the like, unless formatted one very specific (and annoying) way. It's not a problem of blockquote templates, but all uses of {{tag|blockquote|open}}. | ||
− | {{collapse top|title= | + | {{collapse top|left=y|title=The problem in action: test cases that seem like they should work but fail|bg=#EEEEEE|bg2=#ECFCF4}}<div class="collapse-workaround"> |
The intuitive choice: | The intuitive choice: | ||
Revision as of 23:49, 15 February 2012
Due to the utterly intractable MediaWiki bug reported at Template:Bugzilla, and still unfixed Template:As of, block quoting on Wikipedia, with or without a template, cannot handle freeform linebreaking for paragraphs and poems and the like, unless formatted one very specific (and annoying) way. It's not a problem of blockquote templates, but all uses of {{#if:|
|
}}{{#switch:open
|c|close = |s|single |o|open |p|pair = <blockquote{{#if:| {{{params}}}}}
}}{{#switch:open
|c|close = |s|single = /> |o|open = > |p|pair = >...
}}{{#switch:open
|s|single |o|open = |c|close |p|pair = </blockquote>
}}{{#if:|
|
}}.
Template:Collapse topThe intuitive choice:
{{bq|Line 1
Line 2
Line 3
Line 4}}
results in the mangled:
Blank lines seem to work at first:
{{bq|Line 1
Line 2
Line 3
Line 4}}
though with quite tall spacing between the content blocks (lines, in our test cases):
Yet this markup fails with wiki ":" indentation:
Just trying to use {{#if:|
|
}}{{#switch:pair
|c|close = |s|single |o|open |p|pair = <p{{#if:| {{{params}}}}}
}}{{#switch:pair
|c|close = |s|single = /> |o|open = > |p|pair = >...
}}{{#switch:pair
|s|single |o|open = |c|close |p|pair = </p>
}}{{#if:|
|
}} or {{#if:|
|
}}{{#switch:single
|c|close = |s|single |o|open |p|pair = <br{{#if:| {{{params}}}}}
}}{{#switch:single
|c|close = |s|single = /> |o|open = > |p|pair = >...
}}{{#switch:single
|s|single |o|open = |c|close |p|pair = </br>
}}{{#if:|
|
}} markup won't solve all the problems:
{{bq|Line 1<br/>
Line 2<br/>
Line 3<br/>
Line 4}}
results in odd spacing, with the middle blocks too close together:
Meanwhile this version seems ok at first:
{{bq|<p>Line 1</p>
<p>Line 2</p>
<p>Line 3</p>
<p>Line 4</p>}}
but again can't be indented:
Template:As of, the Template:Em solution for the problem is to use Template:Em with {{#if:|
|
}}{{#switch:pair
|c|close = |s|single |o|open |p|pair = <p{{#if:| {{{params}}}}}
}}{{#switch:pair
|c|close = |s|single = /> |o|open = > |p|pair = >...
}}{{#switch:pair
|s|single |o|open = |c|close |p|pair = </p>
}}{{#if:|
|
}} or {{#if:|
|
}}{{#switch:single
|c|close = |s|single |o|open |p|pair = <br{{#if:| {{{params}}}}}
}}{{#switch:single
|c|close = |s|single = /> |o|open = > |p|pair = >...
}}{{#switch:single
|s|single |o|open = |c|close |p|pair = </br>
}}{{#if:|
|
}} elements (or others, like nested blockquotes and lists):
which, while hard to read, especially for long content, results in the expected:
And it Template:Em work with wikimarkup ":" indentation, unlike the failed test cases above:
Happily, there is an HTML-comment workaround for readability that lets you do whatever you want:
{{bq|1=<!--
-->Line 1<br/><!--
-->Line 2<br/><!--
-->Line 3<br/><!--
-->Line 4.}}
or even:
{{bq|1=<!--
-->Line 1<br/><!--
-->Line 2<br/><!--
-->Line 3<br/><!--
-->Line 4.}}
which results in the expected:
They Template:Em indentable:
Editors can experiment in this template's sandbox (create | mirror) and testcases (create) pages. Please add categories to the /doc subpage. Subpages of this template. |